Timeline


and

04/21/09:

22:42 Changeset [42744] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Build fix

22:36 Changeset [42743] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Improve String.replace performance slightly

Reviewed by Maciej Stachowiak

Apply our vm reentry caching logic to String.replace with global
regexes.

22:22 Changeset [42742] by mitz@apple.com
  • 2 edits in trunk/LayoutTests
  • updated another result with action element information
  • fast/encoding/mailto-always-utf-8-expected.txt:
22:05 Changeset [42741] by mitz@apple.com
  • 5 edits
    2 adds in trunk

WebKit/mac:

Reviewed by Jon Honeycutt.

  • Mac part of fixing for <rdar://problem/6755137> Action dictionary for policy decision is missing keys when full-page zoom is used
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::actionDictionary): Use absoluteLocation() instead of pageX() and pageY(), which are adjusted for zoom.

WebKit/win:

Reviewed by Jon Honeycutt.

  • Windows part of fixing <rdar://problem/6755137> Action dictionary for policy decision is missing keys when full-page zoom is used
  • WebActionPropertyBag.cpp: (WebActionPropertyBag::Read): Use absoluteLocation() instead of clientX() and clientY(), which are adjusted for zoom.

LayoutTests:

  • test for <rdar://problem/6755137> Action dictionary for policy decision is missing keys when full-page zoom is used
  • fast/loader/policy-delegate-action-hit-test-zoomed-expected.txt: Added.
  • fast/loader/policy-delegate-action-hit-test-zoomed.html: Added.
22:04 Changeset [42740] by mitz@apple.com
  • 8 edits in trunk

WebKit/win:

Reviewed by Jon Honeycutt.

  • implement DOMNode::nodeName()
  • DOMCoreClasses.cpp: (DOMNode::nodeName):

WebKitTools:

Reviewed by Jon Honeycutt.

  • dump the node in the element dictionary in the action information passed to the policy delegate
  • DumpRenderTree/mac/PolicyDelegate.mm: (-[PolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
  • DumpRenderTree/win/PolicyDelegate.cpp: (dumpPath): (PolicyDelegate::decidePolicyForNavigationAction):

LayoutTests:

Reviewed by Jon Honeycutt.

  • updated result that shows the node in the element dictionary in the action information passed to the policy delegate
  • http/tests/security/feed-urls-from-remote-expected.txt:
21:20 Changeset [42739] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

2009-04-21 John Abd-El-Malek <jam@google.com>

Reviewed by Dimitri Glazkov.

Add a method to purge the Chromium plugin list cache.
https://bugs.webkit.org/show_bug.cgi?id=25318

  • plugins/chromium/PluginDataChromium.cpp: (WebCore::resetChromiumPluginCache):
21:03 Changeset [42738] by mrowe@apple.com
  • 12 edits
    4 adds in trunk

Fix <https://bugs.webkit.org/show_bug.cgi?id=25164> / <rdar://problem/6786319>.

Reviewed by Darin Adler.

We need to ensure that XMLTokenizer sets the current DocLoader before calling in to
any libxml2 methods that may trigger a load. The presence of a DocLoader indicates
that the load was originated by WebCore's use of libxml2 and that we should enforce
the same-origin policy on it. XMLTokenizer::initializeParserContext,
XMLTokenizer::doWrite and XMLTokenizer::doEnd were three methods that were not setting
the current DocLoader when they should have.

The XMLTokenizerScope class is introduced to simplify the pattern of saving, setting and
restoring the current DocLoader and libxml2 error handlers. The DocLoader and error handlers
are saved and set when the scope is allocated, and restored to their previous values when
the scope is exited.

Test: http/tests/security/xss-DENIED-xml-external-entity.xhtml

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/XMLTokenizer.cpp:
  • dom/XMLTokenizer.h:
  • dom/XMLTokenizerLibxml2.cpp:

(WebCore::matchFunc):
(WebCore::shouldAllowExternalLoad):
(WebCore::openFunc):
(WebCore::XMLTokenizer::doWrite):
(WebCore::XMLTokenizer::initializeParserContext):
(WebCore::XMLTokenizer::doEnd):
(WebCore::xmlDocPtrForString):

  • dom/XMLTokenizerScope.cpp:

(WebCore::XMLTokenizerScope::XMLTokenizerScope):
(WebCore::XMLTokenizerScope::~XMLTokenizerScope):

  • dom/XMLTokenizerScope.h:
  • xml/XSLStyleSheet.cpp:

(WebCore::XSLStyleSheet::parseString):

  • xml/XSLTProcessor.cpp:
20:42 Changeset [42737] by weinig@apple.com
  • 6 edits in trunk

WebCore:

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

Reviewed by Dan Bernstein.

Fix for <rdar://problem/5874009>
Add port 3659 (apple-sasl / PasswordServer) to the list of blocked ports.

  • platform/network/ResourceHandle.cpp: (WebCore::portAllowed):

LayoutTests:

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

Reviewed by Dan Bernstein.

Update test and results for <rdar://problem/5874009>
Add port 3659 (apple-sasl / PasswordServer) to the list of blocked ports.

  • platform/mac-tiger/security/block-test-expected.txt:
  • platform/mac/security/block-test-expected.txt:
  • security/block-test.html:
19:18 Changeset [42736] by justin.garcia@apple.com
  • 3 edits in trunk/LayoutTests

Corrected a mistake in my last ChangeLog entry and updated some expected results.

18:53 Changeset [42735] by justin.garcia@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2009-04-21 Justin Garcia <justin.garcia@apple.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=25320
Crash when changing block styles in a root that contains no visible content (but contains nodes with renderers)

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): If the enclosing block is the root editable element and it contains no visible content, create a new block but don't try and move content into it, since there's nothing for moveParagraphs to move.

LayoutTests:

2009-04-21 Justin Garcia <justin.garcia@apple.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=25320
Crash when changing block styles in a root that contains no visible content (but contains nodes with renderers)

  • editing/execCommand/25320-expected.txt: Added.
  • editing/execCommand/25320.html: Added.
  • platform/mac/fast/forms/caret-rtl-expected.checksum: Replaced.
  • platform/mac/fast/forms/caret-rtl-expected.txt: Replaced.
17:18 Changeset [42734] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by Cameron Zwarich and Oliver Hunt.


Re-Fixed <rdar://problem/6406045> REGRESSION: Stack overflow on PowerPC on
fast/workers/use-machine-stack.html (22531)


SunSpider reports no change.


Use a larger recursion limit on the main thread (because we can, and
there's some evidence that it may improve compatibility), and a smaller
recursion limit on secondary threads (because they tend to have smaller
stacks).

  • interpreter/Interpreter.cpp: (JSC::Interpreter::execute): (JSC::Interpreter::prepareForRepeatCall):
  • interpreter/Interpreter.h: (JSC::): Ditto. I wrote the recursion test slightly funny, so that the common case remains a simple compare to constant.
  • runtime/ArrayPrototype.cpp: (JSC::arrayProtoFuncToString): (JSC::arrayProtoFuncToLocaleString): (JSC::arrayProtoFuncJoin): Conservatively, set the array recursion limits to the lower, secondary thread limit. We can do something fancier if compatibility moves us, but this seems sufficient for now.
17:11 Changeset [42733] by sfalken@apple.com
  • 2 edits in trunk/WebKit/win

2009-04-21 Steve Falkenburg <sfalken@apple.com>

Minor clean-ups to WebKitCreateInstance change.


Reviewed by Jon Honeycutt.

  • WebKitCOMAPI.cpp: (classFactory): (WebKitCreateInstance):
16:30 Changeset [42732] by darin@apple.com
  • 15 edits
    7 copies in trunk

WebCore:

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

Reviewed by Dan Bernstein.

Bug 25162: REGRESSION (r41176-r41242): Drag-selection above/below the line does not select to beginning/end
https://bugs.webkit.org/show_bug.cgi?id=25162
rdar://problem/6764354

  • page/Settings.cpp: (WebCore::Settings::Settings): Initialize editing behavior to Mac-style for PLATFORM(MAC). Later we may want to change this default to encompass other versions running on Mac.
  • page/Settings.h: Added EditingBehavior, setEditingBehavior, editingBehavior, and m_editingBehavior. Also moved m_maximumDecodedImageSize out of the middle of all the bit fields.
  • platform/graphics/IntPoint.h: Added a constructor to turn an IntSize into an IntPoint. I'm not sure the distinction here is serving us well at the moment. When converting from global to local coordinates you want to do IntPoint - IntPoint and have the result be another IntPoint, not an IntSize. And so on.
  • rendering/RenderBlock.cpp: (WebCore::positionForPointRespectingEditingBoundaries): Changed to use pointers more and separate coordinates less. (WebCore::RenderBlock::positionForPointWithInlineChildren): Turned into a member function. Added separate cases to support the Mac and Windows behavior. (WebCore::RenderBlock::positionForPoint): Updated for the change above. Also moved the computation of pointInContents closer to the place it's used.
  • rendering/RenderBlock.h: Updated for the new private member function.

LayoutTests:

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

Reviewed by Dan Bernstein.

Bug 25162: REGRESSION (r41176-r41242): Drag-selection above/below the line does not select to beginning/end
https://bugs.webkit.org/show_bug.cgi?id=25162
rdar://problem/6764354

  • editing/selection/resources/click-in-margins-inside-editable-div.js: Updated to expect different results on the Mac.
  • editing/selection/resources/click-in-padding-with-multiple-line-boxes.js: Ditto.
  • fast/css-generated-content/positioned-background-hit-test-crash.html: Clear the selection at the end of the test so the result won't include a caret.
  • platform/mac/editing/selection/click-in-margins-inside-editable-div-expected.txt:
  • platform/mac/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt: Copied from LayoutTests/editing/selection. Then changed to expect the different Mac results.
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.checksum:
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.png:
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.txt: Changed to expect the different Mac results.
  • platform/mac/fast/css-generated-content/positioned-background-hit-test-crash-expected.txt: Changed to expect no caret.
  • platform/win/editing/selection/click-in-margins-inside-editable-div-expected.txt:
  • platform/win/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt: Copied from editing/selection.
  • platform/win/editing/selection/select-from-textfield-outwards-expected.checksum:
  • platform/win/editing/selection/select-from-textfield-outwards-expected.png:
  • platform/win/editing/selection/select-from-textfield-outwards-expected.txt: Copied from platform/mac/editing/selection.
14:58 Changeset [42731] by aroben@apple.com
  • 2 edits in trunk/WebKit

Update StringsNotToBeLocalized.txt for recent changes

Rubber-stamped by John Sullivan.

  • StringsNotToBeLocalized.txt:
14:35 Changeset [42730] by andersca@apple.com
  • 6 edits in trunk/WebKit/mac

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

Reviewed by Darin Adler and Kevin Decker.

WebKit side of <rdar://problem/6781642>.


When we call resize with an actual changed size, block until the plug-in host is done.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::resize):
  • Plugins/Hosted/WebHostedNetscapePluginView.h:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView updateAndSetWindow]):
  • Plugins/Hosted/WebKitPluginHost.defs:
14:10 Changeset [42729] by aroben@apple.com
  • 3 edits in trunk/WebKitTools

Windows build fix after r42726

  • DumpRenderTree/win/DumpRenderTree.cpp: Touched to force a rebuild.
  • DumpRenderTree/win/DumpRenderTree.vcproj: Delete any pre-r42726 manifest files during the pre-build event.
13:52 Changeset [42728] by timothy@apple.com
  • 2 edits in trunk/WebKit

Another attempt to fix the Windows and QT builds.

13:48 Changeset [42727] by timothy@apple.com
  • 2 edits in trunk/WebKit

Attempt to fix the Windows and QT builds.

13:42 Changeset [42726] by sfalken@apple.com
  • 10 edits
    2 adds in trunk

WebKit/win:

2009-04-21 Steve Falkenburg <sfalken@apple.com>

Add registry-free CoCreateInstance API for WebKit clients: WebKitCreateInstance.

Manifest-based registry-free COM continues to work for clients that have embedded
manifests with isolated COM information.


Reviewed by Adam Roben.

  • WebKit.vcproj/WebKit.def: Added WebKitCreateInstance.
  • WebKit.vcproj/WebKit.vcproj: Link against rpcrt4.dll for UUID hashing.
  • WebKit.vcproj/WebKit_debug.def: Added WebKitCreateInstance.
  • WebKitCOMAPI.cpp: Added. (CLSIDHash::hash): (CLSIDHash::equal): (CLSIDHashTraits::constructDeletedValue): (CLSIDHashTraits::isDeletedValue): (classFactory): (WebKitCreateInstance): New API.
  • WebKitCOMAPI.h: Added.

WebKitTools:

2009-04-21 Steve Falkenburg <sfalken@apple.com>

Use new WebKitCreateInstance API instead of CoCreateInstance
or COMPtr's createInstance to instantiate WebKit COM objects.

Reviewed by Adam Roben.

  • DumpRenderTree/win/DumpRenderTree.cpp: (initialize): (runTest): (createWebViewAndOffscreenWindow): (main):
  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/win/GCControllerWin.cpp: (GCController::collect): (GCController::collectOnAlternateThread): (GCController::getJSObjectCount):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::keepWebHistory): (LayoutTestController::webHistoryItemCount): (LayoutTestController::setIconDatabaseEnabled):
  • DumpRenderTree/win/WorkQueueItemWin.cpp: (LoadItem::invoke):
13:21 Changeset [42725] by timothy@apple.com
  • 24 edits in trunk

Change pending unload and beforeunload counts to store the listeners in a single data structure that can be quickly iterated for dispatch.

WebCore:

2009-04-17 Timothy Hatcher <timothy@apple.com>

Change pending unload and beforeunload counts to store the listeners
in a single data structure that can be quickly iterated for dispatch.

<rdar://problem/6383352&6383379&6383940>

Reviewed by Darin Adler.

  • WebCore.base.exp: Change what symbols are exported.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): Remove count updating code and move an if inside a block already checking m_frame->document().
  • page/Chrome.cpp: Remove disableSuddenTermination/enableSuddenTermination.
  • page/Chrome.h: Ditto.
  • page/ChromeClient.h: Ditto.
  • page/DOMWindow.cpp: (WebCore::pendingUnloadEventListenerMap): Create a static map. (WebCore::pendingBeforeUnloadEventListenerMap): Ditto. (WebCore::addPendingEventListener): Add the event listener to the map. (WebCore::removePendingEventListener): Remove the event listener from the map. (WebCore::removePendingEventListeners): Remove all listeners for the window. (WebCore::dispatchWindowEventToListeners): Dispatch the event to the given listeners. (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents): Send the beforeunload event. (WebCore::DOMWindow::pendingUnloadEventListeners): Return a count of pending listeners. (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): Send the unload event. (WebCore::DOMWindow::~DOMWindow): Remove the window from both event listener maps. (WebCore::DOMWindow::addEventListener): Call addPendingEventListener when needed. (WebCore::DOMWindow::removeEventListener): Call removePendingEventListener when needed. (WebCore::DOMWindow::removeAllEventListeners): Call removePendingEventListeners. (WebCore::DOMWindow::removeInlineEventListenerForType): Call removePendingEventListener when needed.
  • page/DOMWindow.h: (WebCore::DOMWindow::frame): Changed to be const.
  • page/EventHandler.cpp: (WebCore::EventHandler::EventHandler): Remove count tracking code.
  • page/EventHandler.h: Ditto.
  • page/Page.cpp: (WebCore::Page::Page): Ditto.
  • page/Page.h: Ditto.

WebKit/mac:

2009-04-17 Timothy Hatcher <timothy@apple.com>

Change how sudden termination works with WebView teardown.

<rdar://problem/6383352&6383379&6383940>

Reviewed by Darin Adler.

  • WebCoreSupport/WebChromeClient.h: Remove disableSuddenTermination/enableSuddenTermination.
  • WebCoreSupport/WebChromeClient.mm: Ditto.
  • WebView/WebFrame.mm: (-[WebFrame _pendingFrameUnloadEventCount]): Ask the DOMWindow.
  • WebView/WebView.mm: (+[WebView canCloseAllWebViews]): Call DOMWindow::dispatchAllPendingBeforeUnloadEvents. (+[WebView closeAllWebViews]): Call DOMWindow::dispatchAllPendingUnloadEvents and call close on all the WebViews. (-[WebView _closeWithFastTeardown]): Remove code for unload event dispatch. (-[WebView _close]): Correct a comment. (+[WebView _applicationWillTerminate]): Call closeAllWebViews.
  • WebView/WebViewPrivate.h: Add canCloseAllWebViews and closeAllWebViews.
12:58 Changeset [42724] by ggaren@apple.com
  • 4 edits in trunk

JavaScriptCore:

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

Rubber-stamped by Adam Roben.


Disabled one more Mozilla JS test because it fails intermittently on Windows.
(See https://bugs.webkit.org/show_bug.cgi?id=25160.)

  • tests/mozilla/expected.html:

WebKitTools:

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

Rubber-stamped by Adam Roben.


Disabled one more Mozilla JS test because it fails intermittently on Windows.
(See https://bugs.webkit.org/show_bug.cgi?id=25160.)

  • Scripts/run-javascriptcore-tests:
12:38 Changeset [42723] by darin@apple.com
  • 14 edits
    1 move in trunk/LayoutTests

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

Reviewed by Adele Peterson.

Fix some tests that are depending on Mac vs. Windows selection quirks accidentally.
Added failing tests to the skipped list for SnowLeopard.

  • editing/resources/select-all-iframe-src.html: Moved.
  • editing/selection/resources/select-all-iframe-src.html: Moved from editing/resources/select-all-iframe-src.html, since this is used by a test in the selection directory. Changed mouse coordinates to be farther to the right so we don't depend on the rule for what's selected when you click below text on the last line.
  • editing/selection/select-all-iframe.html: Updated for new location of file above.
  • fast/events/standalone-image-drag-to-editable.html: Changed mouse coordinates to be farther to the right so we don't depend on the rule for what's selected when you click below text on the last line.
  • platform/mac-snowleopard/Skipped: Added some tests to the Skipped list.
  • svg/custom/pointer-events-path.svg: Clear the selection at the end of the test so it's not in the test results. Also removed unneeded use of the layout test controller.
  • platform/mac/editing/selection/select-all-iframe-expected.checksum: Generated new results.
  • platform/mac/editing/selection/select-all-iframe-expected.png: Ditto.
  • platform/mac/editing/selection/select-all-iframe-expected.txt: Ditto.
  • platform/mac/fast/events/standalone-image-drag-to-editable-expected.checksum: Ditto.
  • platform/mac/fast/events/standalone-image-drag-to-editable-expected.png: Ditto.
  • platform/mac/fast/events/standalone-image-drag-to-editable-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-path-expected.checksum: Ditto.
  • platform/mac/svg/custom/pointer-events-path-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-path-expected.txt: Ditto.
12:20 Changeset [42722] by justin.garcia@apple.com
  • 8 edits
    4 adds in trunk

WebCore:

2009-04-21 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19644
Text copied with Select All pastes with a indent but shouldn't
<rdar://problem/6102483>
Pasting the content of an HTML message in Mail causes addition nested <div> elements to be added


To improve selectall/copy/paste fidelity of certain pages, we began wrapping copied content with
a div that held properties and attributes from the fully selected body. To fix the above issues,
only do this if if the body has certain properties or attributes. We'll begin adding to this list as
necessary. For now it's just background colors and images. Tested copy/paste of nytimes, wired,
arstechnica, and several others.


Massive nesting can still happen, it will just be much less common.

  • editing/markup.cpp: (WebCore::createMarkup):

LayoutTests:

2009-04-21 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19644
Text copied with Select All pastes with a indent but shouldn't
<rdar://problem/6102483>
Pasting the content of an HTML message in Mail causes addition nested <div> elements to be added

  • editing/pasteboard/19644-1-expected.txt: Added.
  • editing/pasteboard/19644-1.html: Added.
  • editing/pasteboard/19644-2-expected.txt: Added.
  • editing/pasteboard/19644-2.html: Added.
  • platform/mac/editing/inserting/insert-3907422-fix-expected.txt:
  • platform/mac/editing/pasteboard/paste-text-015-expected.checksum:
  • platform/mac/editing/pasteboard/paste-text-015-expected.png:
  • platform/mac/editing/pasteboard/paste-text-015-expected.txt:
  • platform/mac/editing/style/font-family-with-space-expected.txt:
11:34 Changeset [42721] by pkasting@chromium.org
  • 9 edits in trunk/WebCore

2009-04-16 Peter Kasting <pkasting@google.com>

Reviewed by David Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=25250
Allow platforms to snap the scroll thumb back to the drag origin
during a drag. Implement functions for Safari/Win and Chromium/Win
to do this snapping at distances approximating the native ones.

  • platform/Scrollbar.cpp: (WebCore::Scrollbar::Scrollbar): (WebCore::Scrollbar::setValue): (WebCore::Scrollbar::scroll): (WebCore::Scrollbar::moveThumb): (WebCore::Scrollbar::setCurrentPos): (WebCore::Scrollbar::mouseMoved): (WebCore::Scrollbar::mouseDown):
  • platform/Scrollbar.h:
  • platform/ScrollbarTheme.h: (WebCore::ScrollbarTheme::shouldSnapBackToDragOrigin):
  • platform/chromium/ScrollbarThemeChromium.h:
  • platform/chromium/ScrollbarThemeChromiumLinux.cpp: (WebCore::ScrollbarThemeChromium::shouldSnapBackToDragOrigin):
  • platform/chromium/ScrollbarThemeChromiumWin.cpp: (WebCore::ScrollbarThemeChromium::shouldSnapBackToDragOrigin):
  • platform/win/ScrollbarThemeWin.cpp: (WebCore::ScrollbarThemeWin::shouldCenterOnThumb): (WebCore::ScrollbarThemeWin::shouldSnapBackToDragOrigin):
  • platform/win/ScrollbarThemeWin.h:
11:15 Changeset [42720] by aroben@apple.com
  • 2 edits in trunk/WebCore

Windows build fix

  • bindings/js/JSLazyEventListener.cpp: (WebCore::eventParameterName): Remove unreachable code when SVG is enabled.
11:09 Changeset [42719] by aroben@apple.com
  • 3 edits in trunk/WebKitTools

Fix running run-safari and run-webkit-tests from the paths recommended on webkit.org

Reviewed by Steve Falkenburg and Sam Weinig.

  • Scripts/run-webkit-nightly.cmd: Moved quotes from variable definitions to variable uses. Otherwise cmd.exe can get confused about the quoting.
  • Scripts/run-webkit-tests: Changed to use an absolute path to execAppWithEnv so that run-webkit-tests will work when run from outside the source tree.
11:09 Changeset [42718] by aroben@apple.com
  • 8 edits in trunk

Rename JavaScriptCore_debug.dll to JavaScriptCore.dll in the Debug configuration

JavaScriptCore:

Rename JavaScriptCore_debug.dll to JavaScriptCore.dll in the Debug
configuration

This matches the naming scheme for WebKit.dll, and will be necessary
once Safari links against JavaScriptCore.dll. This change also causes
run-safari not to fail (because the launcher printed by FindSafari was
always looking for JavaScriptCore.dll, never
JavaScriptCore_debug.dll).

Part of Bug 25305: can't run safari or drt on windows
<https://bugs.webkit.org/show_bug.cgi?id=25305>

Reviewed by Steve Falkenburg and Sam Weinig.

WebKit/win:

Rename JavaScriptCore_debug.dll to JavaScriptCore.dll in the Debug
configuration

This matches the naming scheme for WebKit.dll, and will be necessary
once Safari links against JavaScriptCore.dll. This change also causes
run-safari not to fail (because the launcher printed by FindSafari was
always looking for JavaScriptCore.dll, never
JavaScriptCore_debug.dll).

Part of Bug 25305: can't run safari or drt on windows
<https://bugs.webkit.org/show_bug.cgi?id=25305>

Reviewed by Steve Falkenburg and Sam Weinig.

  • WebKit.vcproj/WebKit.vcproj: Use $(WebKitDLLConfigSuffix) for naming JavaScriptCore.{dll,lib}.

WebKitTools:

Rename JavaScriptCore_debug.dll to JavaScriptCore.dll in the Debug
configuration

This matches the naming scheme for WebKit.dll, and will be necessary
once Safari links against JavaScriptCore.dll. This change also causes
run-safari not to fail (because the launcher printed by FindSafari was
always looking for JavaScriptCore.dll, never
JavaScriptCore_debug.dll).

Part of Bug 25305: can't run safari or drt on windows
<https://bugs.webkit.org/show_bug.cgi?id=25305>

Reviewed by Steve Falkenburg and Sam Weinig.

  • DumpRenderTree/win/DumpRenderTree.vcproj: Use $(WebKitDLLConfigSuffix) for naming JavaScriptCore.{dll,lib}.
11:08 Changeset [42717] by aroben@apple.com
  • 2 edits in trunk/JavaScriptCore

Fix JavaScriptCore build on VC++ Express

Reviewed by Steve Falkenburg and Sam Weinig.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Link explicitly against gdi32.lib and oleaut32.lib.
11:04 BuildingOnWindows edited by aroben@apple.com
Removed now-obsolete comments about copying DLLs in order to run the … (diff)
10:26 Changeset [42716] by eric@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

2009-04-21 Dave Moore <davemoore@google.com> and Eric Seidel <eric@webkit.org>

Reviewed by Darin Adler.

Add test for (as of yet not implemented) HTML5 named option access.
https://bugs.webkit.org/show_bug.cgi?id=25191

I believe this will require separate implementations
for V8 and JSC the way our current bindings are designed.

  • fast/dom/HTMLSelectElement/named-options-expected.txt: Added.
  • fast/dom/HTMLSelectElement/named-options.html: Added.
  • fast/dom/HTMLSelectElement/resources/TEMPLATE.html: Copied from LayoutTests/fast/dom/CSSStyleDeclaration/resources/TEMPLATE.html.
  • fast/dom/HTMLSelectElement/resources/named-options.js: Added.
10:20 Changeset [42715] by kevino@webkit.org
  • 2 edits in trunk/WebCore

!ENABLE(SVG) build fix.

10:00 Changeset [42714] by dglazkov@chromium.org
  • 5 edits in trunk/WebCore

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

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25309
Better use AtomicStrings when calling from the V8
bindings into WebCore code.

  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • bindings/v8/custom/V8HTMLCollectionCustom.cpp:
  • bindings/v8/custom/V8HTMLFormElementCustom.cpp:
  • bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
09:19 Changeset [42713] by cfleizach@apple.com
  • 3 edits
    2 adds in trunk

Bug 25304: AX: Safari not identifying a secure text field
https://bugs.webkit.org/show_bug.cgi?id=25304

09:10 Changeset [42712] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • fix the Tiger build
  • page/mac/EventHandlerMac.mm: (method_setImplementation):
08:48 Changeset [42711] by cwzwarich@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

2009-04-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin Adler.

Add a test for bug 3235: CSS2: Table cell coalescing in CSS broken
<https://bugs.webkit.org/show_bug.cgi?id=3235>
<rdar://3299883/>

This was fixed long ago, but we should add a test to prevent a regression.

  • fast/table/cell-coalescing.html: Added.
  • platform/mac/fast/table/cell-coalescing-expected.txt: Added.
08:15 Changeset [42710] by ariya@webkit.org
  • 7 edits in trunk/WebKit/qt

2009-04-21 Antonio Gomes <antonio.gomes@openbossa.org>

Reviewed by Ariya Hidayat.

QWebElementSelection renamed to QWebElementCollection.

  • Api/qwebelement.cpp: (QWebElement::findAll): (QWebElementCollectionPrivate::QWebElementCollectionPrivate): (QWebElementCollectionPrivate::create): (QWebElementCollection::QWebElementCollection): (QWebElementCollection::operator=): (QWebElementCollection::~QWebElementCollection): (QWebElementCollection::operator+): (QWebElementCollection::append): (QWebElementCollection::count): (QWebElementCollection::at): (QWebElementCollection::toList):
  • Api/qwebelement.h:
  • Api/qwebframe.cpp: (QWebFrame::findAllElements):
  • Api/qwebframe.h:
  • QtLauncher/main.cpp: (MainWindow::selectElements):
  • tests/qwebelement/tst_qwebelement.cpp: (tst_QWebElement::simpleCollection): (tst_QWebElement::iteration): (tst_QWebElement::emptyCollection): (tst_QWebElement::appendCollection): (tst_QWebElement::nullSelect):
06:46 QtWebKitTodo edited by hausmann@webkit.org
(diff)
06:18 Changeset [42709] by ariya@webkit.org
  • 3 edits in trunk/WebCore

2009-04-21 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Sam Weinig.

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

Fix the build with disabled DOM storage or disabled database support.

  • bindings/js/ScriptObjectQuarantine.cpp:
  • bindings/js/ScriptObjectQuarantine.h:
03:03 QtWebKitTodo edited by kenneth.christiansen@gmail.com
(diff)
02:27 Changeset [42708] by zecke@webkit.org
  • 2 edits in trunk/WebCore

Compile fix after r42633. const on a static method does not work

01:33 QtWebKitTodo edited by kenneth.christiansen@gmail.com
(diff)
00:52 Changeset [42707] by mitz@apple.com
  • 5 edits in trunk

Reviewed by Darin Adler and John Sullivan.

  • fix <rdar://problem/5914146> Crash at -[NSScrollView scrollWheel:]

-[NSScrollView scrollWheel:] runs a nested event-tracking run loop
in a mode that allows WebCore timers to fire and NSURLConnection
callbacks to be dispatched, which can release the NSScrollView and
cause it to be deallocated (one example is a DOM timer callback that
removes a subframe from the document). This leads to a crash in
-scrollView:.

The fix is to replace the implementation of -[NSScrollView scrollWheel:]
with one that optionally retains the receiver for the duration of the
call.

  • page/mac/EventHandlerMac.mm: (WebCore::nsScrollViewScrollWheelShouldRetainSelf): Added. (WebCore::setNSScrollViewScrollWheelShouldRetainSelf): Added. Replaces the implementation of -[NSScrollView scrollWheel:] with the self-retaining one, and sets a static boolean that tells it whether to retain the receiver around the call to the original implementation. (WebCore::selfRetainingNSScrollViewScrollWheel): Added. If setNSScrollViewScrollWheelShouldRetainSelf(true) was called and this function is executing on the main thread, it retains the NSScrollView, invokes the original -[NSScrollView scrollWheel:], then releases the view. Otherwise it just calls through to the original implementation. (WebCore::EventHandler::passWheelEventToWidget): Added calls to setNSScrollViewScrollWheelShouldRetainSelf() around the call to -scrollWheel:.
00:48 Changeset [42706] by sfalken@apple.com
  • 2 edits in trunk/WebKitTools

Update FindSafari for JavaScriptCore DLL changes.
Also removed code previously needed to support running nightlies against Safari 3 on Windows.


Reviewed by Mark Rowe.

  • FindSafari/FindSafari.cpp: (getStringValue): (getInstalledWebKitDirectory): (_tmain):
00:23 Changeset [42705] by ggaren@apple.com
  • 9 edits
    3 copies
    1 add in trunk

JavaScriptCore:

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

Reviewed by Mark Rowe.


Tiger crash fix: Put VM tags in their own header file, and fixed up the
#ifdefs so they're not used on Tiger.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • interpreter/RegisterFile.h: (JSC::RegisterFile::RegisterFile):
  • jit/ExecutableAllocatorFixedVMPool.cpp: (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemAlloc):
  • runtime/Collector.cpp: (JSC::allocateBlock):
  • wtf/VMTags.h: Added.

JavaScriptGlue:

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

Reviewed by Mark Rowe.

Tiger crash fix: Put VM tags in their own header file, and fixed up the
#ifdefs so they're not used on Tiger.

  • ForwardingHeaders/wtf/VMTags.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/HashTraits.h.

WebCore:

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

Reviewed by Mark Rowe.

Tiger crash fix: Put VM tags in their own header file, and fixed up the
#ifdefs so they're not used on Tiger.

  • ForwardingHeaders/wtf/VMTags.h: Copied from WebCore/ForwardingHeaders/wtf/HashTraits.h.

WebKit/mac:

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

Reviewed by Mark Rowe.

Tiger crash fix: Put VM tags in their own header file, and fixed up the
#ifdefs so they're not used on Tiger.

  • ForwardingHeaders/wtf/VMTags.h: Copied from ForwardingHeaders/wtf/HashTraits.h.
00:02 Changeset [42704] by xan@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Gustavo Noronha.

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

Based on a patch by Alp Toker.

Implement AtkComponent interface.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp: (core):
00:01 Changeset [42703] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

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

Reviewed by Gustavo Noronha.

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

Implement window<->screen coordinate transformation functions.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::widgetScreenPosition): (WebKit::ChromeClient::windowToScreen): (WebKit::ChromeClient::screenToWindow):
00:01 Changeset [42702] by xan@webkit.org
  • 2 edits in trunk/WebCore

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

Reviewed by Gustavo Noronha.

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

Only implement AtkAction interface if we actually have an action.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp:

04/20/09:

23:41 Changeset [42701] by sfalken@apple.com
  • 1 edit in trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj

Windows build fix

23:34 Changeset [42700] by ap@webkit.org
  • 13 edits
    3 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25290
REGRESSION(r41732): Crash when constructing XMLHttpRequest in a detached document

Test: fast/dom/xmlhttprequest-constructor-in-detached-document.html

  • bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor):
  • bindings/js/JSAudioConstructor.h:
  • bindings/js/JSDOMGlobalObject.h: (WebCore::getDOMConstructor):
  • bindings/js/JSImageConstructor.cpp: (WebCore::JSImageConstructor::JSImageConstructor):
  • bindings/js/JSImageConstructor.h:
  • bindings/js/JSMessageChannelConstructor.cpp: (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
  • bindings/js/JSMessageChannelConstructor.h:
  • bindings/js/JSOptionConstructor.cpp: (WebCore::JSOptionConstructor::JSOptionConstructor):
  • bindings/js/JSOptionConstructor.h:
  • bindings/js/JSXMLHttpRequestConstructor.cpp: (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
  • bindings/js/JSXMLHttpRequestConstructor.h: Avoid accessing JSDOMGlobalObject via ScriptExecutionContext, since it may not work during frame teardown.
22:58 Changeset [42699] by ggaren@apple.com
  • 32 edits in trunk/WebCore

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

Rubber stamped by Darin Adler and Sam Weinig.

Renamed "*InlineEventListener*" => "*AttributeEventListener*", and
"isInline" => "isAttribute".

  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::createJSAttributeEventListener):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::~JSEventListener): (WebCore::JSEventListener::handleEvent): (WebCore::JSEventListener::virtualisAttribute):
  • bindings/js/JSEventListener.h: (WebCore::JSEventListener::create): (WebCore::JSEventListener::isAttribute):
  • bindings/js/JSLazyEventListener.cpp: (WebCore::createAttributeEventListener):
  • bindings/js/JSLazyEventListener.h:
  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/Element.cpp: (WebCore::Element::setWindowAttributeEventListener):
  • dom/Element.h:
  • dom/EventListener.h: (WebCore::EventListener::isAttribute): (WebCore::EventListener::virtualisAttribute):
  • dom/Node.cpp: (WebCore::Node::clearAttributeEventListener): (WebCore::Node::setAttributeEventListener): (WebCore::Node::getAttributeEventListener): (WebCore::Node::onabort): (WebCore::Node::setOnabort): (WebCore::Node::onblur): (WebCore::Node::setOnblur): (WebCore::Node::onchange): (WebCore::Node::setOnchange): (WebCore::Node::onclick): (WebCore::Node::setOnclick): (WebCore::Node::oncontextmenu): (WebCore::Node::setOncontextmenu): (WebCore::Node::ondblclick): (WebCore::Node::setOndblclick): (WebCore::Node::onerror): (WebCore::Node::setOnerror): (WebCore::Node::onfocus): (WebCore::Node::setOnfocus): (WebCore::Node::oninput): (WebCore::Node::setOninput): (WebCore::Node::onkeydown): (WebCore::Node::setOnkeydown): (WebCore::Node::onkeypress): (WebCore::Node::setOnkeypress): (WebCore::Node::onkeyup): (WebCore::Node::setOnkeyup): (WebCore::Node::onload): (WebCore::Node::setOnload): (WebCore::Node::onmousedown): (WebCore::Node::setOnmousedown): (WebCore::Node::onmousemove): (WebCore::Node::setOnmousemove): (WebCore::Node::onmouseout): (WebCore::Node::setOnmouseout): (WebCore::Node::onmouseover): (WebCore::Node::setOnmouseover): (WebCore::Node::onmouseup): (WebCore::Node::setOnmouseup): (WebCore::Node::onmousewheel): (WebCore::Node::setOnmousewheel): (WebCore::Node::onbeforecut): (WebCore::Node::setOnbeforecut): (WebCore::Node::oncut): (WebCore::Node::setOncut): (WebCore::Node::onbeforecopy): (WebCore::Node::setOnbeforecopy): (WebCore::Node::oncopy): (WebCore::Node::setOncopy): (WebCore::Node::onbeforepaste): (WebCore::Node::setOnbeforepaste): (WebCore::Node::onpaste): (WebCore::Node::setOnpaste): (WebCore::Node::ondragenter): (WebCore::Node::setOndragenter): (WebCore::Node::ondragover): (WebCore::Node::setOndragover): (WebCore::Node::ondragleave): (WebCore::Node::setOndragleave): (WebCore::Node::ondrop): (WebCore::Node::setOndrop): (WebCore::Node::ondragstart): (WebCore::Node::setOndragstart): (WebCore::Node::ondrag): (WebCore::Node::setOndrag): (WebCore::Node::ondragend): (WebCore::Node::setOndragend): (WebCore::Node::onreset): (WebCore::Node::setOnreset): (WebCore::Node::onresize): (WebCore::Node::setOnresize): (WebCore::Node::onscroll): (WebCore::Node::setOnscroll): (WebCore::Node::onsearch): (WebCore::Node::setOnsearch): (WebCore::Node::onselect): (WebCore::Node::setOnselect): (WebCore::Node::onselectstart): (WebCore::Node::setOnselectstart): (WebCore::Node::onsubmit): (WebCore::Node::setOnsubmit): (WebCore::Node::onunload): (WebCore::Node::setOnunload):
  • dom/Node.h:
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment):
  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::parseMappedAttribute):
  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::parseMappedAttribute):
  • html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::parseMappedAttribute):
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseMappedAttribute):
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::parseMappedAttribute):
  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::parseMappedAttribute):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute):
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::parseMappedAttribute):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::parseMappedAttribute):
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute):
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::parseMappedAttribute):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::mouseButtonListener):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::setAttributeEventListener): (WebCore::DOMWindow::clearAttributeEventListener): (WebCore::DOMWindow::getAttributeEventListener): (WebCore::DOMWindow::onabort): (WebCore::DOMWindow::setOnabort): (WebCore::DOMWindow::onblur): (WebCore::DOMWindow::setOnblur): (WebCore::DOMWindow::onchange): (WebCore::DOMWindow::setOnchange): (WebCore::DOMWindow::onclick): (WebCore::DOMWindow::setOnclick): (WebCore::DOMWindow::ondblclick): (WebCore::DOMWindow::setOndblclick): (WebCore::DOMWindow::onerror): (WebCore::DOMWindow::setOnerror): (WebCore::DOMWindow::onfocus): (WebCore::DOMWindow::setOnfocus): (WebCore::DOMWindow::onkeydown): (WebCore::DOMWindow::setOnkeydown): (WebCore::DOMWindow::onkeypress): (WebCore::DOMWindow::setOnkeypress): (WebCore::DOMWindow::onkeyup): (WebCore::DOMWindow::setOnkeyup): (WebCore::DOMWindow::onload): (WebCore::DOMWindow::setOnload): (WebCore::DOMWindow::onmousedown): (WebCore::DOMWindow::setOnmousedown): (WebCore::DOMWindow::onmousemove): (WebCore::DOMWindow::setOnmousemove): (WebCore::DOMWindow::onmouseout): (WebCore::DOMWindow::setOnmouseout): (WebCore::DOMWindow::onmouseover): (WebCore::DOMWindow::setOnmouseover): (WebCore::DOMWindow::onmouseup): (WebCore::DOMWindow::setOnmouseup): (WebCore::DOMWindow::onmousewheel): (WebCore::DOMWindow::setOnmousewheel): (WebCore::DOMWindow::onreset): (WebCore::DOMWindow::setOnreset): (WebCore::DOMWindow::onresize): (WebCore::DOMWindow::setOnresize): (WebCore::DOMWindow::onscroll): (WebCore::DOMWindow::setOnscroll): (WebCore::DOMWindow::onsearch): (WebCore::DOMWindow::setOnsearch): (WebCore::DOMWindow::onselect): (WebCore::DOMWindow::setOnselect): (WebCore::DOMWindow::onsubmit): (WebCore::DOMWindow::setOnsubmit): (WebCore::DOMWindow::onunload): (WebCore::DOMWindow::setOnunload): (WebCore::DOMWindow::onbeforeunload): (WebCore::DOMWindow::setOnbeforeunload): (WebCore::DOMWindow::onwebkitanimationstart): (WebCore::DOMWindow::setOnwebkitanimationstart): (WebCore::DOMWindow::onwebkitanimationiteration): (WebCore::DOMWindow::setOnwebkitanimationiteration): (WebCore::DOMWindow::onwebkitanimationend): (WebCore::DOMWindow::setOnwebkitanimationend): (WebCore::DOMWindow::onwebkittransitionend): (WebCore::DOMWindow::setOnwebkittransitionend):
  • page/DOMWindow.h:
  • svg/SVGElement.cpp: (WebCore::SVGElement::parseMappedAttribute):
  • svg/SVGElementInstance.cpp: (WebCore::SVGElementInstance::onabort): (WebCore::SVGElementInstance::setOnabort): (WebCore::SVGElementInstance::onblur): (WebCore::SVGElementInstance::setOnblur): (WebCore::SVGElementInstance::onchange): (WebCore::SVGElementInstance::setOnchange): (WebCore::SVGElementInstance::onclick): (WebCore::SVGElementInstance::setOnclick): (WebCore::SVGElementInstance::oncontextmenu): (WebCore::SVGElementInstance::setOncontextmenu): (WebCore::SVGElementInstance::ondblclick): (WebCore::SVGElementInstance::setOndblclick): (WebCore::SVGElementInstance::onerror): (WebCore::SVGElementInstance::setOnerror): (WebCore::SVGElementInstance::onfocus): (WebCore::SVGElementInstance::setOnfocus): (WebCore::SVGElementInstance::oninput): (WebCore::SVGElementInstance::setOninput): (WebCore::SVGElementInstance::onkeydown): (WebCore::SVGElementInstance::setOnkeydown): (WebCore::SVGElementInstance::onkeypress): (WebCore::SVGElementInstance::setOnkeypress): (WebCore::SVGElementInstance::onkeyup): (WebCore::SVGElementInstance::setOnkeyup): (WebCore::SVGElementInstance::onload): (WebCore::SVGElementInstance::setOnload): (WebCore::SVGElementInstance::onmousedown): (WebCore::SVGElementInstance::setOnmousedown): (WebCore::SVGElementInstance::onmousemove): (WebCore::SVGElementInstance::setOnmousemove): (WebCore::SVGElementInstance::onmouseout): (WebCore::SVGElementInstance::setOnmouseout): (WebCore::SVGElementInstance::onmouseover): (WebCore::SVGElementInstance::setOnmouseover): (WebCore::SVGElementInstance::onmouseup): (WebCore::SVGElementInstance::setOnmouseup): (WebCore::SVGElementInstance::onmousewheel): (WebCore::SVGElementInstance::setOnmousewheel): (WebCore::SVGElementInstance::onbeforecut): (WebCore::SVGElementInstance::setOnbeforecut): (WebCore::SVGElementInstance::oncut): (WebCore::SVGElementInstance::setOncut): (WebCore::SVGElementInstance::onbeforecopy): (WebCore::SVGElementInstance::setOnbeforecopy): (WebCore::SVGElementInstance::oncopy): (WebCore::SVGElementInstance::setOncopy): (WebCore::SVGElementInstance::onbeforepaste): (WebCore::SVGElementInstance::setOnbeforepaste): (WebCore::SVGElementInstance::onpaste): (WebCore::SVGElementInstance::setOnpaste): (WebCore::SVGElementInstance::ondragenter): (WebCore::SVGElementInstance::setOndragenter): (WebCore::SVGElementInstance::ondragover): (WebCore::SVGElementInstance::setOndragover): (WebCore::SVGElementInstance::ondragleave): (WebCore::SVGElementInstance::setOndragleave): (WebCore::SVGElementInstance::ondrop): (WebCore::SVGElementInstance::setOndrop): (WebCore::SVGElementInstance::ondragstart): (WebCore::SVGElementInstance::setOndragstart): (WebCore::SVGElementInstance::ondrag): (WebCore::SVGElementInstance::setOndrag): (WebCore::SVGElementInstance::ondragend): (WebCore::SVGElementInstance::setOndragend): (WebCore::SVGElementInstance::onreset): (WebCore::SVGElementInstance::setOnreset): (WebCore::SVGElementInstance::onresize): (WebCore::SVGElementInstance::setOnresize): (WebCore::SVGElementInstance::onscroll): (WebCore::SVGElementInstance::setOnscroll): (WebCore::SVGElementInstance::onsearch): (WebCore::SVGElementInstance::setOnsearch): (WebCore::SVGElementInstance::onselect): (WebCore::SVGElementInstance::setOnselect): (WebCore::SVGElementInstance::onselectstart): (WebCore::SVGElementInstance::setOnselectstart): (WebCore::SVGElementInstance::onsubmit): (WebCore::SVGElementInstance::setOnsubmit): (WebCore::SVGElementInstance::onunload): (WebCore::SVGElementInstance::setOnunload):
  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::parseMappedAttribute):
22:17 Changeset [42698] by ggaren@apple.com
  • 549 edits
    8 deletes in trunk

WebCore:

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

Approved by Mark Rowe, Cameron Zwarich, Oliver Hunt, and Ojan Vafai.


Used svn merge to roll out revisions 42678, 42690, 42694, 42697 because
they broke the Tiger and Windows buildbots.

  • css/html4.css:
  • css/themeWin.css:
  • platform/graphics/SimpleFontData.cpp:
  • platform/graphics/SimpleFontData.h:
  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
  • platform/graphics/chromium/SimpleFontDataLinux.cpp:
  • platform/graphics/gtk/SimpleFontDataGtk.cpp:
  • platform/graphics/gtk/SimpleFontDataPango.cpp:
  • platform/graphics/mac/SimpleFontDataMac.mm:
  • platform/graphics/qt/SimpleFontDataQt.cpp:
  • platform/graphics/win/SimpleFontDataCGWin.cpp:
  • platform/graphics/win/SimpleFontDataCairoWin.cpp:
  • platform/graphics/win/SimpleFontDataWin.cpp:
  • platform/graphics/wx/SimpleFontDataWx.cpp:
  • rendering/RenderTextControl.cpp:
  • rendering/RenderTextControlMultiLine.cpp:
  • rendering/RenderTextControlSingleLine.cpp:

LayoutTests:

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

Approved by Mark Rowe, Cameron Zwarich, Oliver Hunt, and Ojan Vafai.


Used svn merge to roll out revisions 42678, 42690, 42694, 42697 because
they broke the Tiger and Windows buildbots.

  • fast/forms/drag-out-of-textarea.html:
  • fast/forms/resources/TEMPLATE.html: Removed.
  • fast/forms/resources/text-control-intrinsic-widths.js: Removed.
  • fast/forms/resources/textarea-metrics.js: Removed.
  • fast/forms/search-abs-pos-cancel-button.html:
  • fast/forms/text-control-intrinsic-widths-expected.txt: Removed.
  • fast/forms/text-control-intrinsic-widths.html: Removed.
  • fast/forms/textarea-metrics-expected.txt: Removed.
  • fast/forms/textarea-metrics.html: Removed.
  • fast/forms/textarea-width.html:
  • fast/replaced/table-percent-height-expected.txt:
  • fast/replaced/table-percent-height.html:
  • platform/mac-leopard/fast/forms/input-text-maxlength-expected.checksum:
  • platform/mac-leopard/fast/forms/input-text-maxlength-expected.png:
  • platform/mac-leopard/fast/forms/input-text-maxlength-expected.txt:
  • platform/mac-leopard/fast/forms/input-text-paste-maxlength-expected.checksum:
  • platform/mac-leopard/fast/forms/input-text-paste-maxlength-expected.png:
  • platform/mac-leopard/fast/forms/input-text-paste-maxlength-expected.txt:
  • platform/mac/editing/deleting/5168598-expected.checksum:
  • platform/mac/editing/deleting/5168598-expected.png:
  • platform/mac/editing/deleting/5168598-expected.txt:
  • platform/mac/editing/inserting/4960120-1-expected.checksum:
  • platform/mac/editing/inserting/4960120-1-expected.png:
  • platform/mac/editing/inserting/4960120-1-expected.txt:
  • platform/mac/editing/inserting/5607069-2-expected.checksum:
  • platform/mac/editing/inserting/5607069-2-expected.png:
  • platform/mac/editing/inserting/5607069-2-expected.txt:
  • platform/mac/editing/inserting/5607069-3-expected.checksum:
  • platform/mac/editing/inserting/5607069-3-expected.png:
  • platform/mac/editing/inserting/5607069-3-expected.txt:
  • platform/mac/editing/inserting/before-after-input-element-expected.checksum:
  • platform/mac/editing/inserting/before-after-input-element-expected.png:
  • platform/mac/editing/inserting/before-after-input-element-expected.txt:
  • platform/mac/editing/inserting/typing-tab-designmode-forms-expected.checksum:
  • platform/mac/editing/inserting/typing-tab-designmode-forms-expected.png:
  • platform/mac/editing/inserting/typing-tab-designmode-forms-expected.txt:
  • platform/mac/editing/pasteboard/4806874-expected.checksum:
  • platform/mac/editing/pasteboard/4806874-expected.png:
  • platform/mac/editing/pasteboard/4806874-expected.txt:
  • platform/mac/editing/pasteboard/drop-text-without-selection-expected.checksum:
  • platform/mac/editing/pasteboard/drop-text-without-selection-expected.png:
  • platform/mac/editing/pasteboard/drop-text-without-selection-expected.txt:
  • platform/mac/editing/pasteboard/input-field-1-expected.checksum:
  • platform/mac/editing/pasteboard/input-field-1-expected.png:
  • platform/mac/editing/pasteboard/input-field-1-expected.txt:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.checksum:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.png:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-area-expected.txt:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.checksum:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.png:
  • platform/mac/editing/pasteboard/nested-blocks-with-text-field-expected.txt:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.checksum:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.png:
  • platform/mac/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/mac/editing/selection/3690703-2-expected.checksum:
  • platform/mac/editing/selection/3690703-2-expected.png:
  • platform/mac/editing/selection/3690703-2-expected.txt:
  • platform/mac/editing/selection/3690703-expected.checksum:
  • platform/mac/editing/selection/3690703-expected.png:
  • platform/mac/editing/selection/3690703-expected.txt:
  • platform/mac/editing/selection/3690719-expected.checksum:
  • platform/mac/editing/selection/3690719-expected.png:
  • platform/mac/editing/selection/3690719-expected.txt:
  • platform/mac/editing/selection/4895428-3-expected.checksum:
  • platform/mac/editing/selection/4895428-3-expected.png:
  • platform/mac/editing/selection/4895428-3-expected.txt:
  • platform/mac/editing/selection/4975120-expected.checksum:
  • platform/mac/editing/selection/4975120-expected.png:
  • platform/mac/editing/selection/4975120-expected.txt:
  • platform/mac/editing/selection/5136696-expected.checksum:
  • platform/mac/editing/selection/5136696-expected.png:
  • platform/mac/editing/selection/5136696-expected.txt:
  • platform/mac/editing/selection/5213963-expected.checksum:
  • platform/mac/editing/selection/5213963-expected.png:
  • platform/mac/editing/selection/5213963-expected.txt:
  • platform/mac/editing/selection/drag-select-1-expected.checksum:
  • platform/mac/editing/selection/drag-select-1-expected.png:
  • platform/mac/editing/selection/drag-select-1-expected.txt:
  • platform/mac/editing/selection/drag-text-delay-expected.checksum:
  • platform/mac/editing/selection/drag-text-delay-expected.png:
  • platform/mac/editing/selection/drag-text-delay-expected.txt:
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.checksum:
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.png:
  • platform/mac/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/css/line-height-expected.checksum:
  • platform/mac/fast/css/line-height-expected.png:
  • platform/mac/fast/css/line-height-expected.txt:
  • platform/mac/fast/css/resize-corner-tracking-expected.checksum:
  • platform/mac/fast/css/resize-corner-tracking-expected.png:
  • platform/mac/fast/css/resize-corner-tracking-expected.txt:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.checksum:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png:
  • platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
  • platform/mac/fast/dom/isindex-002-expected.checksum:
  • platform/mac/fast/dom/isindex-002-expected.png:
  • platform/mac/fast/dom/isindex-002-expected.txt:
  • platform/mac/fast/dynamic/008-expected.checksum:
  • platform/mac/fast/dynamic/008-expected.png:
  • platform/mac/fast/dynamic/008-expected.txt:
  • platform/mac/fast/events/autoscroll-expected.checksum:
  • platform/mac/fast/events/autoscroll-expected.png:
  • platform/mac/fast/events/autoscroll-expected.txt:
  • platform/mac/fast/events/context-no-deselect-expected.checksum:
  • platform/mac/fast/events/context-no-deselect-expected.png:
  • platform/mac/fast/events/context-no-deselect-expected.txt:
  • platform/mac/fast/events/label-focus-expected.checksum:
  • platform/mac/fast/events/label-focus-expected.png:
  • platform/mac/fast/events/label-focus-expected.txt:
  • platform/mac/fast/forms/basic-textareas-expected.checksum:
  • platform/mac/fast/forms/basic-textareas-expected.png:
  • platform/mac/fast/forms/basic-textareas-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.checksum:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/control-restrict-line-height-expected.checksum:
  • platform/mac/fast/forms/control-restrict-line-height-expected.png:
  • platform/mac/fast/forms/control-restrict-line-height-expected.txt:
  • platform/mac/fast/forms/encoding-test-expected.checksum:
  • platform/mac/fast/forms/encoding-test-expected.png:
  • platform/mac/fast/forms/encoding-test-expected.txt:
  • platform/mac/fast/forms/fieldset-align-expected.checksum:
  • platform/mac/fast/forms/fieldset-align-expected.png:
  • platform/mac/fast/forms/fieldset-align-expected.txt:
  • platform/mac/fast/forms/form-element-geometry-expected.checksum:
  • platform/mac/fast/forms/form-element-geometry-expected.png:
  • platform/mac/fast/forms/form-element-geometry-expected.txt:
  • platform/mac/fast/forms/input-align-expected.checksum:
  • platform/mac/fast/forms/input-align-expected.png:
  • platform/mac/fast/forms/input-align-expected.txt:
  • platform/mac/fast/forms/input-appearance-bkcolor-expected.checksum:
  • platform/mac/fast/forms/input-appearance-bkcolor-expected.png:
  • platform/mac/fast/forms/input-appearance-bkcolor-expected.txt:
  • platform/mac/fast/forms/input-appearance-default-bkcolor-expected.checksum:
  • platform/mac/fast/forms/input-appearance-default-bkcolor-expected.png:
  • platform/mac/fast/forms/input-appearance-default-bkcolor-expected.txt:
  • platform/mac/fast/forms/input-appearance-disabled-expected.checksum:
  • platform/mac/fast/forms/input-appearance-disabled-expected.png:
  • platform/mac/fast/forms/input-appearance-disabled-expected.txt:
  • platform/mac/fast/forms/input-appearance-focus-expected.checksum:
  • platform/mac/fast/forms/input-appearance-focus-expected.png:
  • platform/mac/fast/forms/input-appearance-focus-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.checksum:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/input-appearance-preventDefault-expected.checksum:
  • platform/mac/fast/forms/input-appearance-preventDefault-expected.png:
  • platform/mac/fast/forms/input-appearance-preventDefault-expected.txt:
  • platform/mac/fast/forms/input-appearance-readonly-expected.checksum:
  • platform/mac/fast/forms/input-appearance-readonly-expected.png:
  • platform/mac/fast/forms/input-appearance-readonly-expected.txt:
  • platform/mac/fast/forms/input-appearance-selection-expected.checksum:
  • platform/mac/fast/forms/input-appearance-selection-expected.png:
  • platform/mac/fast/forms/input-appearance-selection-expected.txt:
  • platform/mac/fast/forms/input-appearance-visibility-expected.checksum:
  • platform/mac/fast/forms/input-appearance-visibility-expected.png:
  • platform/mac/fast/forms/input-appearance-visibility-expected.txt:
  • platform/mac/fast/forms/input-appearance-width-expected.checksum:
  • platform/mac/fast/forms/input-appearance-width-expected.png:
  • platform/mac/fast/forms/input-appearance-width-expected.txt:
  • platform/mac/fast/forms/input-baseline-expected.checksum:
  • platform/mac/fast/forms/input-baseline-expected.png:
  • platform/mac/fast/forms/input-baseline-expected.txt:
  • platform/mac/fast/forms/input-disabled-color-expected.checksum:
  • platform/mac/fast/forms/input-disabled-color-expected.png:
  • platform/mac/fast/forms/input-disabled-color-expected.txt:
  • platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.checksum:
  • platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.png:
  • platform/mac/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/mac/fast/forms/input-paste-undo-expected.checksum:
  • platform/mac/fast/forms/input-paste-undo-expected.png:
  • platform/mac/fast/forms/input-paste-undo-expected.txt:
  • platform/mac/fast/forms/input-readonly-autoscroll-expected.checksum:
  • platform/mac/fast/forms/input-readonly-autoscroll-expected.png:
  • platform/mac/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/mac/fast/forms/input-readonly-dimmed-expected.checksum:
  • platform/mac/fast/forms/input-readonly-dimmed-expected.png:
  • platform/mac/fast/forms/input-readonly-dimmed-expected.txt:
  • platform/mac/fast/forms/input-readonly-empty-expected.checksum:
  • platform/mac/fast/forms/input-readonly-empty-expected.png:
  • platform/mac/fast/forms/input-readonly-empty-expected.txt:
  • platform/mac/fast/forms/input-spaces-expected.checksum:
  • platform/mac/fast/forms/input-spaces-expected.png:
  • platform/mac/fast/forms/input-spaces-expected.txt:
  • platform/mac/fast/forms/input-table-expected.txt:
  • platform/mac/fast/forms/input-text-click-inside-expected.checksum:
  • platform/mac/fast/forms/input-text-click-inside-expected.png:
  • platform/mac/fast/forms/input-text-click-inside-expected.txt:
  • platform/mac/fast/forms/input-text-click-outside-expected.checksum:
  • platform/mac/fast/forms/input-text-click-outside-expected.png:
  • platform/mac/fast/forms/input-text-click-outside-expected.txt:
  • platform/mac/fast/forms/input-text-double-click-expected.checksum:
  • platform/mac/fast/forms/input-text-double-click-expected.png:
  • platform/mac/fast/forms/input-text-double-click-expected.txt:
  • platform/mac/fast/forms/input-text-drag-down-expected.checksum:
  • platform/mac/fast/forms/input-text-drag-down-expected.png:
  • platform/mac/fast/forms/input-text-drag-down-expected.txt:
  • platform/mac/fast/forms/input-text-option-delete-expected.checksum:
  • platform/mac/fast/forms/input-text-option-delete-expected.png:
  • platform/mac/fast/forms/input-text-option-delete-expected.txt:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.checksum:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.png:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/mac/fast/forms/input-text-self-emptying-click-expected.checksum:
  • platform/mac/fast/forms/input-text-self-emptying-click-expected.png:
  • platform/mac/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/mac/fast/forms/input-text-word-wrap-expected.checksum:
  • platform/mac/fast/forms/input-text-word-wrap-expected.png:
  • platform/mac/fast/forms/input-text-word-wrap-expected.txt:
  • platform/mac/fast/forms/input-type-change2-expected.checksum:
  • platform/mac/fast/forms/input-type-change2-expected.png:
  • platform/mac/fast/forms/input-type-change2-expected.txt:
  • platform/mac/fast/forms/input-type-text-min-width-expected.checksum:
  • platform/mac/fast/forms/input-type-text-min-width-expected.png:
  • platform/mac/fast/forms/input-type-text-min-width-expected.txt:
  • platform/mac/fast/forms/input-value-expected.checksum:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/forms/input-width-expected.checksum:
  • platform/mac/fast/forms/input-width-expected.png:
  • platform/mac/fast/forms/input-width-expected.txt:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.checksum:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.png:
  • platform/mac/fast/forms/linebox-overflow-in-textarea-padding-expected.txt:
  • platform/mac/fast/forms/negativeLineHeight-expected.checksum:
  • platform/mac/fast/forms/negativeLineHeight-expected.png:
  • platform/mac/fast/forms/negativeLineHeight-expected.txt:
  • platform/mac/fast/forms/password-placeholder-expected.checksum:
  • platform/mac/fast/forms/password-placeholder-expected.png:
  • platform/mac/fast/forms/password-placeholder-expected.txt:
  • platform/mac/fast/forms/password-placeholder-text-security-expected.checksum:
  • platform/mac/fast/forms/password-placeholder-text-security-expected.png:
  • platform/mac/fast/forms/password-placeholder-text-security-expected.txt:
  • platform/mac/fast/forms/placeholder-pseudo-style-expected.checksum:
  • platform/mac/fast/forms/placeholder-pseudo-style-expected.png:
  • platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/mac/fast/forms/placeholder-set-attribute-expected.checksum:
  • platform/mac/fast/forms/placeholder-set-attribute-expected.png:
  • platform/mac/fast/forms/placeholder-set-attribute-expected.txt:
  • platform/mac/fast/forms/placeholder-set-value-expected.checksum:
  • platform/mac/fast/forms/placeholder-set-value-expected.png:
  • platform/mac/fast/forms/placeholder-set-value-expected.txt:
  • platform/mac/fast/forms/search-cancel-button-style-sharing-expected.checksum:
  • platform/mac/fast/forms/search-cancel-button-style-sharing-expected.png:
  • platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/mac/fast/forms/search-display-none-cancel-button-expected.checksum:
  • platform/mac/fast/forms/search-display-none-cancel-button-expected.png:
  • platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
  • platform/mac/fast/forms/search-placeholder-value-changed-expected.checksum:
  • platform/mac/fast/forms/search-placeholder-value-changed-expected.png:
  • platform/mac/fast/forms/search-placeholder-value-changed-expected.txt:
  • platform/mac/fast/forms/search-rtl-expected.checksum:
  • platform/mac/fast/forms/search-rtl-expected.png:
  • platform/mac/fast/forms/search-rtl-expected.txt:
  • platform/mac/fast/forms/search-transformed-expected.checksum:
  • platform/mac/fast/forms/search-transformed-expected.png:
  • platform/mac/fast/forms/search-transformed-expected.txt:
  • platform/mac/fast/forms/search-zoomed-expected.checksum:
  • platform/mac/fast/forms/search-zoomed-expected.png:
  • platform/mac/fast/forms/search-zoomed-expected.txt:
  • platform/mac/fast/forms/searchfield-heights-expected.checksum:
  • platform/mac/fast/forms/searchfield-heights-expected.png:
  • platform/mac/fast/forms/searchfield-heights-expected.txt:
  • platform/mac/fast/forms/tabbing-input-iframe-expected.checksum:
  • platform/mac/fast/forms/tabbing-input-iframe-expected.png:
  • platform/mac/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/mac/fast/forms/textAreaLineHeight-expected.checksum:
  • platform/mac/fast/forms/textAreaLineHeight-expected.png:
  • platform/mac/fast/forms/textAreaLineHeight-expected.txt:
  • platform/mac/fast/forms/textarea-align-expected.checksum:
  • platform/mac/fast/forms/textarea-align-expected.png:
  • platform/mac/fast/forms/textarea-align-expected.txt:
  • platform/mac/fast/forms/textarea-rows-cols-expected.checksum:
  • platform/mac/fast/forms/textarea-rows-cols-expected.png:
  • platform/mac/fast/forms/textarea-rows-cols-expected.txt:
  • platform/mac/fast/forms/textarea-scroll-height-expected.checksum:
  • platform/mac/fast/forms/textarea-scroll-height-expected.png:
  • platform/mac/fast/forms/textarea-scroll-height-expected.txt:
  • platform/mac/fast/forms/textarea-scrollbar-expected.checksum:
  • platform/mac/fast/forms/textarea-scrollbar-expected.png:
  • platform/mac/fast/forms/textarea-scrollbar-expected.txt:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.checksum:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.png:
  • platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.checksum:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.png:
  • platform/mac/fast/forms/textarea-setinnerhtml-expected.txt:
  • platform/mac/fast/forms/textarea-width-expected.checksum:
  • platform/mac/fast/forms/textarea-width-expected.png:
  • platform/mac/fast/forms/textarea-width-expected.txt:
  • platform/mac/fast/forms/textfield-drag-into-disabled-expected.checksum:
  • platform/mac/fast/forms/textfield-drag-into-disabled-expected.png:
  • platform/mac/fast/forms/textfield-drag-into-disabled-expected.txt:
  • platform/mac/fast/forms/textfield-outline-expected.checksum:
  • platform/mac/fast/forms/textfield-outline-expected.png:
  • platform/mac/fast/forms/textfield-outline-expected.txt:
  • platform/mac/fast/forms/textfield-overflow-expected.checksum:
  • platform/mac/fast/forms/textfield-overflow-expected.png:
  • platform/mac/fast/forms/textfield-overflow-expected.txt:
  • platform/mac/fast/forms/visual-hebrew-text-field-expected.txt:
  • platform/mac/fast/invalid/residual-style-expected.txt:
  • platform/mac/fast/lists/dynamic-marker-crash-expected.checksum:
  • platform/mac/fast/lists/dynamic-marker-crash-expected.png:
  • platform/mac/fast/lists/dynamic-marker-crash-expected.txt:
  • platform/mac/fast/overflow/overflow-x-y-expected.checksum:
  • platform/mac/fast/overflow/overflow-x-y-expected.png:
  • platform/mac/fast/overflow/overflow-x-y-expected.txt:
  • platform/mac/fast/parser/comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/comment-in-textarea-expected.png:
  • platform/mac/fast/parser/comment-in-textarea-expected.txt:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.png:
  • platform/mac/fast/parser/entity-comment-in-textarea-expected.txt:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.checksum:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.png:
  • platform/mac/fast/parser/open-comment-in-textarea-expected.txt:
  • platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.checksum:
  • platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.png:
  • platform/mac/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/mac/fast/repaint/search-field-cancel-expected.checksum:
  • platform/mac/fast/repaint/search-field-cancel-expected.png:
  • platform/mac/fast/repaint/search-field-cancel-expected.txt:
  • platform/mac/fast/repaint/subtree-root-skipped-expected.checksum:
  • platform/mac/fast/repaint/subtree-root-skipped-expected.png:
  • platform/mac/fast/repaint/subtree-root-skipped-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-expected.checksum:
  • platform/mac/fast/replaced/replaced-breaking-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-expected.txt:
  • platform/mac/fast/replaced/replaced-breaking-mixture-expected.checksum:
  • platform/mac/fast/replaced/replaced-breaking-mixture-expected.png:
  • platform/mac/fast/replaced/replaced-breaking-mixture-expected.txt:
  • platform/mac/fast/replaced/width100percent-searchfield-expected.checksum:
  • platform/mac/fast/replaced/width100percent-searchfield-expected.png:
  • platform/mac/fast/replaced/width100percent-searchfield-expected.txt:
  • platform/mac/fast/replaced/width100percent-textarea-expected.checksum:
  • platform/mac/fast/replaced/width100percent-textarea-expected.png:
  • platform/mac/fast/replaced/width100percent-textarea-expected.txt:
  • platform/mac/fast/replaced/width100percent-textfield-expected.checksum:
  • platform/mac/fast/replaced/width100percent-textfield-expected.png:
  • platform/mac/fast/replaced/width100percent-textfield-expected.txt:
  • platform/mac/fast/table/003-expected.checksum:
  • platform/mac/fast/table/003-expected.png:
  • platform/mac/fast/table/003-expected.txt:
  • platform/mac/fast/table/colspanMinWidth-expected.checksum:
  • platform/mac/fast/table/colspanMinWidth-expected.png:
  • platform/mac/fast/table/colspanMinWidth-expected.txt:
  • platform/mac/fast/table/spanOverlapRepaint-expected.checksum:
  • platform/mac/fast/table/spanOverlapRepaint-expected.png:
  • platform/mac/fast/table/spanOverlapRepaint-expected.txt:
  • platform/mac/fast/table/text-field-baseline-expected.checksum:
  • platform/mac/fast/table/text-field-baseline-expected.png:
  • platform/mac/fast/table/text-field-baseline-expected.txt:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.checksum:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.png:
  • platform/mac/fast/text/international/rtl-white-space-pre-wrap-expected.txt:
  • platform/mac/fast/text/textIteratorNilRenderer-expected.checksum:
  • platform/mac/fast/text/textIteratorNilRenderer-expected.png:
  • platform/mac/fast/text/textIteratorNilRenderer-expected.txt:
  • platform/mac/fast/transforms/transformed-focused-text-input-expected.checksum:
  • platform/mac/fast/transforms/transformed-focused-text-input-expected.png:
  • platform/mac/fast/transforms/transformed-focused-text-input-expected.txt:
  • platform/mac/http/tests/navigation/anchor-basic-expected.checksum:
  • platform/mac/http/tests/navigation/anchor-basic-expected.png:
  • platform/mac/http/tests/navigation/anchor-basic-expected.txt:
  • platform/mac/http/tests/navigation/anchor-frames-expected.txt:
  • platform/mac/http/tests/navigation/anchor-goback-expected.checksum:
  • platform/mac/http/tests/navigation/anchor-goback-expected.png:
  • platform/mac/http/tests/navigation/anchor-goback-expected.txt:
  • platform/mac/http/tests/navigation/anchor-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-basic-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-goback-expected.txt:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.png:
  • platform/mac/http/tests/navigation/javascriptlink-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-frames-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-goback-expected.txt:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.png:
  • platform/mac/http/tests/navigation/metaredirect-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/post-goback2-expected.checksum:
  • platform/mac/http/tests/navigation/post-goback2-expected.png:
  • platform/mac/http/tests/navigation/post-goback2-expected.txt:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.checksum:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.png:
  • platform/mac/http/tests/navigation/postredirect-goback2-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.png:
  • platform/mac/http/tests/navigation/redirect302-basic-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.png:
  • platform/mac/http/tests/navigation/redirect302-frames-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.png:
  • platform/mac/http/tests/navigation/redirect302-goback-expected.txt:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.png:
  • platform/mac/http/tests/navigation/redirect302-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-basic-expected.checksum:
  • platform/mac/http/tests/navigation/relativeanchor-basic-expected.png:
  • platform/mac/http/tests/navigation/relativeanchor-basic-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-frames-expected.txt:
  • platform/mac/http/tests/navigation/relativeanchor-goback-expected.checksum:
  • platform/mac/http/tests/navigation/relativeanchor-goback-expected.png:
  • platform/mac/http/tests/navigation/relativeanchor-goback-expected.txt:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/slowmetaredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/slowtimerredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/success200-basic-expected.checksum:
  • platform/mac/http/tests/navigation/success200-basic-expected.png:
  • platform/mac/http/tests/navigation/success200-basic-expected.txt:
  • platform/mac/http/tests/navigation/success200-frames-expected.checksum:
  • platform/mac/http/tests/navigation/success200-frames-expected.png:
  • platform/mac/http/tests/navigation/success200-frames-expected.txt:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.checksum:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.png:
  • platform/mac/http/tests/navigation/success200-frames-loadsame-expected.txt:
  • platform/mac/http/tests/navigation/success200-goback-expected.checksum:
  • platform/mac/http/tests/navigation/success200-goback-expected.png:
  • platform/mac/http/tests/navigation/success200-goback-expected.txt:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.checksum:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.png:
  • platform/mac/http/tests/navigation/success200-loadsame-expected.txt:
  • platform/mac/http/tests/navigation/success200-reload-expected.checksum:
  • platform/mac/http/tests/navigation/success200-reload-expected.png:
  • platform/mac/http/tests/navigation/success200-reload-expected.txt:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.png:
  • platform/mac/http/tests/navigation/success200-subframeload-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-basic-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-frames-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-goback-expected.txt:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.checksum:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.png:
  • platform/mac/http/tests/navigation/timerredirect-subframeload-expected.txt:
  • platform/mac/svg/custom/inline-svg-in-xhtml-expected.checksum:
  • platform/mac/svg/custom/inline-svg-in-xhtml-expected.png:
  • platform/mac/svg/custom/inline-svg-in-xhtml-expected.txt:
  • platform/mac/svg/hixie/mixed/003-expected.checksum:
  • platform/mac/svg/hixie/mixed/003-expected.png:
  • platform/mac/svg/hixie/mixed/003-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1188-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug1188-expected.png:
  • platform/mac/tables/mozilla/bugs/bug1188-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug12384-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug12384-expected.png:
  • platform/mac/tables/mozilla/bugs/bug12384-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug18359-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug18359-expected.png:
  • platform/mac/tables/mozilla/bugs/bug18359-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.png:
  • platform/mac/tables/mozilla/bugs/bug194024-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug24200-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug24200-expected.png:
  • platform/mac/tables/mozilla/bugs/bug24200-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.png:
  • platform/mac/tables/mozilla/bugs/bug2479-2-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug2479-3-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug2479-3-expected.png:
  • platform/mac/tables/mozilla/bugs/bug2479-3-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug2479-4-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug28928-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug28928-expected.png:
  • platform/mac/tables/mozilla/bugs/bug28928-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.png:
  • platform/mac/tables/mozilla/bugs/bug30559-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30692-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug30692-expected.png:
  • platform/mac/tables/mozilla/bugs/bug30692-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4382-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug4382-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4382-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug46368-1-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug46368-1-expected.png:
  • platform/mac/tables/mozilla/bugs/bug46368-1-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug46368-2-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug46368-2-expected.png:
  • platform/mac/tables/mozilla/bugs/bug46368-2-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug51037-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug51037-expected.png:
  • platform/mac/tables/mozilla/bugs/bug51037-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug55545-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug55545-expected.png:
  • platform/mac/tables/mozilla/bugs/bug55545-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug59354-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug59354-expected.png:
  • platform/mac/tables/mozilla/bugs/bug59354-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug7342-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug7342-expected.png:
  • platform/mac/tables/mozilla/bugs/bug7342-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug96334-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug96334-expected.png:
  • platform/mac/tables/mozilla/bugs/bug96334-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug99948-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug99948-expected.png:
  • platform/mac/tables/mozilla/bugs/bug99948-expected.txt:
  • platform/mac/tables/mozilla/dom/tableDom-expected.checksum:
  • platform/mac/tables/mozilla/dom/tableDom-expected.png:
  • platform/mac/tables/mozilla/dom/tableDom-expected.txt:
  • platform/mac/tables/mozilla/other/move_row-expected.checksum:
  • platform/mac/tables/mozilla/other/move_row-expected.png:
  • platform/mac/tables/mozilla/other/move_row-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug92647-1-expected.checksum:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug92647-1-expected.png:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug92647-1-expected.txt:
  • platform/win/Skipped:
  • svg/custom/resources/svg-fonts-in-text-controls.js:
  • svg/custom/svg-fonts-in-text-controls-expected.txt:
  • svg/custom/svg-fonts-in-text-controls.html: Removed.
21:26 Changeset [42697] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

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

Not reviewed, typo fix.

Rename erroneous lines in Skipped to actual test URLs.

  • platform/win/Skipped:
20:50 Changeset [42696] by aroben@apple.com
  • 2 edits in trunk/WebKit/win

Build fix

  • MemoryStream.cpp: (MemoryStream::Clone): Fix typo introduced when implementing suggestions from patch review.
20:48 Changeset [42695] by ggaren@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Adam Roben.

One last loose end, discovered using COLLECT_ON_EVERY_ALLOCATION, for
https://bugs.webkit.org/show_bug.cgi?id=21260
Unbounded memory growth when churning elements with anonymous event handler functions


  • bindings/js/JSSVGElementInstanceCustom.cpp: (WebCore::JSSVGElementInstance::mark): Don't ASSERT that an ElementInstance's correspondingElement has a JS wrapper. If a GC falls exactly between the allocation of the ElementInstance wrapper and the correspondingElement wrapper, the correspondingElement won't have a wrapper at the time we mark the ElementInstance's wrapper.
20:45 Changeset [42694] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

2009-04-20 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Roben.

Add Windows failures temporarily to the Skipped list after r42678.
See https://bugs.webkit.org/show_bug.cgi?id=25306 for more
information. This is just to get the tree green while the tests
are fixed.

  • platform/win/Skipped:
20:42 Changeset [42693] by aroben@apple.com
  • 3 edits in trunk/WebKit/win

First part of <rdar://6395825> It takes over 20 sec to launch Safari with 500KB history file

This ports the changes that were made to WebKit/mac's WebHistory
implementation in r25275 to WebKit/win. WebHistory now stores a
HashMap from CFAbsoluteTime (stored as int64_t) to CFArray of
IWebHistoryItem*. The HashMap lets us look up the CFArray for a
particular day's history in constant time rather than linear time. The
precise reasons why we store the CFAbsoluteTime as an int64_t are lost
to the mists of time, but it is likely because these CFAbsoluteTimes
never have a decimal part, and integer comparisons are faster than
floating-point comparisons, so storing them as int64_t should improve
performance without losing precision. We also now use a binary search
instead of a linear search when determining the index at which to
insert a WebHistoryItem into its day's CFArray.

This patch reduces the time needed to load a 100,000-item
History.plist from ~15 seconds to ~7.5 seconds. Further improvements
could likely be made by reducing the number of string conversions,
reducing calls to CFTimeZone functions, and removing all the
WebHistoryItemsAdded notifications that are sent (Mac doesn't send any
while loading history).

Reviewed by Darin Adler.

  • WebHistory.cpp: (WebHistoryWriter::WebHistoryWriter): Changed to take a DateToEntriesMap instead of a CFArrayRef. Initialize m_dateKeys to contain the keys from m_entriesByDate in ascending order. (WebHistoryWriter::writeHistoryItems): Now loops through m_dateKeys in reverse order and gets the entries array from the DateToEntriesMap. (WebHistory::WebHistory): Removed code to initialize m_datesWithEntries (which has been removed) and m_entriesByDate (which has been converted to a HashMap). (WebHistory::removeAllItems): Clear out m_entriesByDate and m_orderedLastVisitedDays. (WebHistory::orderedLastVisitedDays): If we don't already have a cached m_orderedLastVisitedDays array, create one by converting the keys from m_entriesByDate to DATEs and sorting them in descending order. Then copy m_orderedLastVisitedDays to the output buffer. (WebHistory::orderedItemsLastVisitedOnDay): Updated to use findKey instead of findIndex and to treat m_entriesByDate as a HashMap. Now that the items in each day's CFArray are stored in descending order (newest to oldest), we don't have to reverse them when filling in the output buffer. (The old comment about putting the items in oldest-to-newest order was incorrect -- it was putting them in newest-to-oldest order.)

(WebHistory::addItemToDateCaches):
(WebHistory::removeItemFromDateCaches):
Changed to use findKey instead of findIndex and to treat
m_entriesByDate as a HashMap. If we're adding a key to or removing a
key from m_entriesByDate, also clear m_orderedLastVisitedDays so that
we will regenerate it for the current set of keys the next time it is
needed.

(timeIntervalForBeginningOfDay): Added. Returns the CFAbsoluteTime
that corresponds to the beginning of the day in which the passed-in
DATE occurs.
(WebHistory::findKey): Returns the key used in m_entriesByDate to
store the CFArray that should contain the IWebHistoryItem that
corresponds to the passed-in DATE. Replaces findIndex.
(WebHistory::insertItem): Changed to treat m_entriesByDate as a
HashMap rather than a CFArray. We now optimize for inserting at the
beginning and end of the array, and use a binary rather than linear
search when inserting into the middle of the array.
(WebHistory::data): Changed to treat m_entriesByDate as a HashMap.

  • WebHistory.h: Changed m_entriesByDate to a DateToEntriesMap, removed m_datesWithEntries, added m_orderedLastVisitedDays.
20:42 Changeset [42692] by aroben@apple.com
  • 9 edits in trunk/WebKit/win

Change MemoryStream::createInstance to return a COMPtr

Part of Bug 25294: All WebKit/win classes should return COMPtrs from
their static constructor members
<https://bugs.webkit.org/show_bug.cgi?id=25294>

Reviewed by Darin Adler.

  • MemoryStream.cpp: (MemoryStream::createInstance): Changed to return a COMPtr. (MemoryStream::Clone): Updated for createInstance change.
  • MemoryStream.h: Changed createInstance to return a COMPtr.
  • WebArchive.cpp: (WebArchive::data):
  • WebCoreSupport/EmbeddedWidget.cpp: (EmbeddedWidget::didReceiveData):
  • WebDataSource.cpp: (WebDataSource::data):
  • WebHistory.cpp: (WebHistory::data):
  • WebIconFetcher.cpp: (WebIconFetcherClient::finishedFetchingIcon):
  • WebResource.cpp: (WebResource::createInstance): Updated for changes to MemoryStream::createInstance.
20:42 Changeset [42691] by aroben@apple.com
  • 8 edits
    7 deletes in trunk/WebKit/win

Fix Bug 25295: Remove WebKit/win code that was used for Drosera support

<https://bugs.webkit.org/show_bug.cgi?id=25295>

Reviewed by Sam Weinig.

  • ForEachCoClass.h: Removed WebScriptDebugServer.
  • Interfaces/WebKit.idl: Removed WebScriptDebugServer and references to removed IDL files.
  • WebKit.vcproj/Interfaces.vcproj:
  • WebKit.vcproj/WebKit.vcproj: Removed IDL and source files for IWebScriptCallFrame, IWebScriptDebugListener, IWebScriptDebugServer, WebScriptCallFrame, and WebScriptDebugServer.
  • WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebKitClassFactory.cpp:
  • WebKitDLL.cpp: Removed #includes of WebScriptDebugServer.h.
  • Interfaces/IWebScriptCallFrame.idl: Removed.
  • Interfaces/IWebScriptDebugListener.idl: Removed.
  • Interfaces/IWebScriptDebugServer.idl: Removed.
  • WebScriptCallFrame.cpp: Removed.
  • WebScriptCallFrame.h: Removed.
  • WebScriptDebugServer.cpp: Removed.
  • WebScriptDebugServer.h: Removed.
17:57 Changeset [42690] by levin@chromium.org
  • 3 edits in trunk/LayoutTests

2009-04-20 Ojan Vafai <ojan@chromium.org>

Reviewed by Eric Seidel

Fix svg-fonts-in-text-controls.js to measure the
widths after the SVG font has loaded.

For now the expected results have the success line
printed before the metrics being measured. I'll fix
this in a following commit. See
https://bugs.webkit.org/show_bug.cgi?id=25302
for more details.

  • svg/custom/resources/svg-fonts-in-text-controls.js:
  • svg/custom/svg-fonts-in-text-controls-expected.txt:
16:36 Changeset [42689] by sfalken@apple.com
  • 3 edits
    3 adds in trunk/JavaScriptCore

More Windows build fixes.

15:32 Changeset [42688] by beidson@apple.com
  • 2 edits in trunk/WebCore

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

Rubberstamped by Mark Rowe

Clean builds are broken on case-sensitive filesystems. Let's fix, shall we?

  • platform/graphics/SimpleFontData.cpp: Remove "String.h" include. Ojan probably intended to include "PlatformString.h" which was unnecessary because it is pulled in through other headers. This wasn't a build failure on case-insensitive file systems because those systems would find the system <string.h>, averting the warning.
15:32 Changeset [42687] by ggaren@apple.com
  • 6 edits in trunk/WebCore

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

Reviewed by Darin Adler.

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


Converted "lazy" event listeners to be unprotected, just like all the others.

  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::~JSEventListener): (WebCore::JSEventListener::jsFunction): (WebCore::JSEventListener::markJSFunction): (WebCore::JSEventListener::handleEvent): (WebCore::JSEventListener::virtualIsInline):
  • bindings/js/JSEventListener.h: (WebCore::JSEventListener::isInline): Merged JSAbstractEventListener into JSEventListener. Now that the only difference between JSEventListener and JSLazyEventListener is that JSLazyEventListener compiles lazily, there's no need for an abstract base class.
  • bindings/js/JSLazyEventListener.cpp: Converted JSLazyEventListener to inherit from JSEventListener and match its un-GC-protected behavior. (WebCore::JSLazyEventListener::JSLazyEventListener): ditto (WebCore::JSLazyEventListener::parseCode): ditto (WebCore::createInlineEventListener): When creating a lazy event listener, ensure that the related node has a JS wrapper to mark the listener. Since the parser makes these listeners, it's possible that no JS reference has been made to the node yet.
  • bindings/js/JSLazyEventListener.h: ditto
  • dom/EventListener.h: (WebCore::EventListener::clearJSFunction): Removed an usused function.
15:30 Changeset [42686] by justin.garcia@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderText.cpp

Fixed typo.

15:28 Changeset [42685] by justin.garcia@apple.com
  • 2 edits in trunk/WebCore

2009-04-20 Justin Garcia <justin.garcia@apple.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=25299
Don't bound caret to root line box if it is still inside its containing block


Can't yet write tests for behavior of non-standard caret widths.

  • rendering/RenderText.cpp: (WebCore::RenderText::localCaretRect):
14:47 Changeset [42684] by sfalken@apple.com
  • 1 edit in trunk/WebKit/mac/WebKitPrefix.h

Build fix

14:47 Changeset [42683] by sfalken@apple.com
  • 1 edit in trunk/WebCore/config.h

Build fix

14:46 Changeset [42682] by sfalken@apple.com
  • 1 edit in trunk/JavaScriptGlue/config.h

Build fix

14:36 Changeset [42681] by darin@apple.com
  • 5 edits
    2 adds in trunk

WebKitTools:

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

Reviewed by Sam Weinig.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added PlainTextController.h and PlainTextController.mm.
  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didClearWindowObject:forFrame:]): Added PlainTextController as "window.plainText".
  • DumpRenderTree/mac/PlainTextController.h: Added.
  • DumpRenderTree/mac/PlainTextController.mm: Added.

LayoutTests:

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

Reviewed by Sam Weinig.

  • fast/dom/Window/window-properties.html: Added a new DumpRenderTree window object property, plainText.
14:25 Changeset [42680] by sfalken@apple.com
  • 23 edits
    2 adds in trunk

JavaScriptCore:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.

Reviewed by Oliver Hunt.

  • API/JSBase.h: Export symbols with JS_EXPORT when using MSVC.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.vcproj/WTF/WTF.vcproj: Build JavaScriptCore as a DLL instead of a static library.
  • config.h: Specify declspec(dllexport/dllimport) appropriately when exporting data.
  • runtime/InternalFunction.h: Specify JS_EXPORTDATA on exported data.
  • runtime/JSArray.h: Specify JS_EXPORTDATA on exported data.
  • runtime/JSFunction.h: Specify JS_EXPORTDATA on exported data.
  • runtime/StringObject.h: Specify JS_EXPORTDATA on exported data.
  • runtime/UString.h: Specify JS_EXPORTDATA on exported data.

WebCore:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.

Reviewed by Oliver Hunt.

  • config.h: Specify declspec(dllexport/dllimport) appropriately when exporting data.

WebKit/cf:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.


Reviewed by Oliver Hunt.

  • WebCoreSupport/WebInspectorClientCF.cpp: Workaround for lack of config.h in shared WebKit file (WebKit/win uses config.h from WebCore).

WebKit/win:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.

Reviewed by Oliver Hunt.

  • WebKit.vcproj/WebKit.def: Mark JavaScriptCore re-exports as deprecated.
  • WebKit.vcproj/WebKit.vcproj: Link against JavaScriptCore.dll
  • WebKit.vcproj/WebKit_debug.def: Mark JavaScriptCore re-exports as deprecated.

WebKitLibraries:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.

Reviewed by Oliver Hunt.

  • win/tools/vsprops/common.vsprops: Add BUILDING_{project} preprocessor define.

WebKitTools:

2009-04-20 Steve Falkenburg <sfalken@apple.com>

Separate JavaScriptCore.dll from WebKit.dll.
Slight performance improvement or no change on benchmarks.


Allows us to break a circular dependency between CFNetwork and WebKit on Windows,
and simplifies standalone JavaScriptCore builds.

Reviewed by Oliver Hunt.

  • DumpRenderTree/config.h: Specify JS, WebKit exported data as declspec(dllimport)
  • DumpRenderTree/win/DumpRenderTree.vcproj: Link against JavaScriptCore.dll
13:41 Changeset [42679] by andersca@apple.com
  • 18 edits in trunk

WebCore:

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

Reviewed by Sam Weinig.

<rdar://problem/6722845> In the Cocoa event model, NPWindow's window field should be null

  • bridge/npapi.h: (_NPCocoaEvent::): Add a CGContextRef member to the draw struct. Add an NPCoordinateSpace enum.


  • plugins/npfunctions.h: Add a prototype for NPN_ConvertPoint.

WebKit/mac:

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

Reviewed by Sam Weinig.

<rdar://problem/6722845>
In the Cocoa event model, NPWindow's window field should be null


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCConvertPoint): Get the instance proxy and call it's convertPoint function.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::convertPoint): Call convertPoint on the plug-in view.


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


  • Plugins/WebBaseNetscapePluginView.h: Add a declaration for convertFromX:andY:space:toX:andY:space:.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]): Convert a point from one coordinate system to another.


  • Plugins/WebNetscapePluginEventHandler.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: (WebNetscapePluginEventHandlerCarbon::drawRect):
  • Plugins/WebNetscapePluginEventHandlerCocoa.h: Add CGContextRef to drawRect.
  • Plugins/WebNetscapePluginEventHandlerCocoa.mm: (WebNetscapePluginEventHandlerCocoa::drawRect): Set the passed in context.


  • Plugins/WebNetscapePluginPackage.mm: (-[WebNetscapePluginPackage _tryLoad]): Add NPN_ConvertPoint to the browserFuncs vtable.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): Only set the window for the Carbon event model.


(-[WebNetscapePluginView restorePortState:]):
It's OK for the window context to be null.


(-[WebNetscapePluginView sendDrawRectEvent:]):
Pass the CGContextRef to drawRect.

  • Plugins/npapi.mm: (NPN_ConvertPoint): Call the plug-in view method.
12:52 QtWebKitTodo edited by kenneth.christiansen@gmail.com
(diff)
12:49 Changeset [42678] by eric@webkit.org
  • 546 edits
    10 adds in trunk

Reviewed by Dan Bernstein.

Make textarea and text input metrics more closely match IEs.
https://bugs.webkit.org/show_bug.cgi?id=15312

This involves:
-set text input width to size*avgCharWidth + maxCharWidth - avgCharWidth
-set textarea width to cols*avgCharWidth
-Make default CSS match IEs
-Correctly initializing m_avgCharWidth and m_maxCharWidth for each platform and SVG.

Those values for textarea and inputs were derived by doing a ton of manual
testing of IE's width values for various textareas and fonts.

To get the average and max character width of a font, we do the following
for each platform:
-Win: TextMetrics expose avgCharWidth and maxCharWidth
-SVG: avgCharWidth = width of an '0', fallback on width of a space glyph, then m_xHeight

maxCharWidth = width of a 'W' for roman fonts, fallback on m_ascent

-Linux: avgCharWidth = width of an '0', fallback on m_xHeight

maxCharWidth = max of avgCharWidth and m_ascent

-Mac: look in the OS/2 table for avgCharWidth and grab the maxCharWidth off the font.

If either one is not there, then calculate the value using the Linux approach.

Linux ports could probably dig into the OS/2 table as well, but I'll leave
that up to them to implement.

Tests: fast/forms/text-control-intrinsic-widths.html

fast/forms/textarea-metrics.html
svg/custom/svg-fonts-in-text-controls.html

  • css/html4.css:
  • css/themeWin.css:
  • platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::SimpleFontData): (WebCore::SimpleFontData::initCharWidths):
  • platform/graphics/SimpleFontData.h: (WebCore::SimpleFontData::maxCharWidth): (WebCore::SimpleFontData::avgCharWidth):
  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/chromium/SimpleFontDataLinux.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/gtk/SimpleFontDataGtk.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/gtk/SimpleFontDataPango.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/qt/SimpleFontDataQt.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/win/SimpleFontDataCGWin.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/win/SimpleFontDataCairoWin.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::initGDIFont):
  • platform/graphics/wx/SimpleFontDataWx.cpp: (WebCore::SimpleFontData::platformCharWidthInit):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::calcPrefWidths):
  • rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::createInnerTextStyle):
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::preferredContentWidth):
12:13 QtWebKitContrib edited by kenneth.christiansen@gmail.com
(diff)
12:10 Changeset [42677] by eric@webkit.org
  • 10 edits in trunk/WebCore

Reviewed by Simon Fraser.

Remove m_absoluteBounds hack from SVG renderers and move outlineBoundsForRepaint into RenderSVGModelObject
https://bugs.webkit.org/show_bug.cgi?id=25276

This also exposed a buggy paint check in RenderSVGContainer::layout()
we should repaint if we are self painting OR if our kids changed, not AND.

Writing real outlineBoundsForRepaint required writing a mapLocalToContainer() function

No functional changes, thus no tests.

  • rendering/RenderPath.cpp: (WebCore::RenderPath::localToParentTransform): (WebCore::RenderPath::layout):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::mapLocalToContainer): (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): (WebCore::RenderSVGRoot::paint): (WebCore::RenderSVGRoot::localToParentTransformWithoutCSSParentOffset): (WebCore::RenderSVGRoot::localToParentTransform): (WebCore::RenderSVGRoot::computeRectForRepaint):
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGViewportContainer.cpp: (WebCore::RenderSVGViewportContainer::layout):
11:12 Changeset [42676] by weinig@apple.com
  • 5 edits in trunk/JavaScriptCore

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

Reviewed by Kevin McCullough.

Always tag mmaped memory on darwin and clean up #defines
now that they are a little bigger.

  • interpreter/RegisterFile.h: (JSC::RegisterFile::RegisterFile):
  • jit/ExecutableAllocatorFixedVMPool.cpp: (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemAlloc):
  • runtime/Collector.cpp: (JSC::allocateBlock):
11:11 Changeset [42675] by simon.fraser@apple.com
  • 3 edits
    10 adds in trunk

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

Reviewed by Eric Seidel

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

outlineBoundsForRepaint() should compute a quad relative to the
repaintContainer. This fixes the repaint issues originally fixed in
https://bugs.webkit.org/show_bug.cgi?id=12885 for elements in compositing layers.
Failure was only apparent when building with ACCELERATED_COMPOSITING enabled.

Tests: compositing/repaint/content-into-overflow.html

compositing/repaint/overflow-into-content.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::outlineBoundsForRepaint):
11:06 Changeset [42674] by weinig@apple.com
  • 29 edits in trunk

JavaScriptCore:

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

Rubber-stamped by Tim Hatcher.

Add licenses for xcconfig files.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/JavaScriptCore.xcconfig:
  • Configurations/Version.xcconfig:

JavaScriptGlue:

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

Rubber-stamped by Tim Hatcher.

Add licenses for xcconfig files.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/JavaScriptGlue.xcconfig:
  • Configurations/Version.xcconfig:

WebCore:

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

Rubber-stamped by Tim Hatcher.

Add licenses for xcconfig files.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/Version.xcconfig:
  • Configurations/WebCore.xcconfig:

WebKit/mac:

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

Rubber-stamped by Tim Hatcher.

Add licenses for xcconfig files.


  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/Version.xcconfig:
  • Configurations/WebKit.xcconfig:

WebKitTools:

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

Rubber-stamped by Tim Hatcher.

Add licenses for xcconfig files.

  • DumpRenderTree/mac/Configurations/Base.xcconfig:
  • DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
  • DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
  • DumpRenderTree/mac/Configurations/ImageDiff.xcconfig:
  • DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig:
10:31 Changeset [42673] by andersca@apple.com
  • 5 edits in trunk/WebKit/mac

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

Reviewed by Dan Bernstein.

WebKit side of <rdar://problem/6781302>


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::keyEvent): Pass the event keyChar.


(WebKit::NetscapePluginInstanceProxy::syntheticKeyDownWithCommandModifier):
Ditto.


(WebKit::NetscapePluginInstanceProxy::flagsChanged):
Pass a 0 keyChar.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView flagsChanged:]): Call NetscapePluginInstanceProxy::flagsChanged.


  • Plugins/Hosted/WebKitPluginHost.defs: Add a keyChar argument.
10:16 Changeset [42672] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

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

Reviewed by Xan Lopez.

https://bugs.webkit.org/show_bug.cgi?id=24786
WebKitDownload sometimes suggests peculiar filenames

Remove query and ref from the URI that is to be downloaded when
using it to provide a file name suggestion.

  • webkit/webkitdownload.cpp: (_WebKitDownloadPrivate::webkit_download_set_property):
08:27 Changeset [42671] by dglazkov@chromium.org
  • 3 edits in trunk/WebCore

2009-04-20 Eric Roman <eroman@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25261
Implement the V8 binding for DOMWindow.event similarly to JSC, by using
the custom getter boilerplate from the IDL file.
Also, stub out DOMWindow.crypto which is defined by the idl.

  • bindings/v8/V8AbstractEventListener.cpp: (WebCore::V8AbstractEventListener::invokeEventHandler):
  • bindings/v8/custom/V8DOMWindowCustom.cpp: (WebCore::ACCESSOR_GETTER):
08:23 Changeset [42670] by kov@webkit.org
  • 4 edits in trunk

WebCore

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

Reviewed by Xan Lopez.

https://bugs.webkit.org/show_bug.cgi?id=25243
Crash when data:// loads are cancelled

Properly handle cancellation of the load for data:// loads. This
fixes crashing in the followin test:

plugins/return-error-from-new-stream-callback-in-full-frame-plugin.html

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl):

WebKit/gtk

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

Reviewed by Xan Lopez.

Handle the case when the plugin view is destroyed during
didReceiveResponse, to avoid crashing.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::committedLoad):
07:30 QtWebKitTodo edited by kenneth.christiansen@gmail.com
(diff)
07:11 QtWebKitTodo edited by ariya@webkit.org
(diff)
06:24 QtWebKitJournal edited by hausmann@webkit.org
(diff)
06:17 QtWebKitTodo edited by hausmann@webkit.org
(diff)
02:27 Changeset [42669] by ariya@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-04-20 Ariya Hidayat <ariya.hidayat@nokia.com>

Build fix for Qt port (after r42646). Not reviewed.

  • wtf/unicode/qt4/UnicodeQt4.h: Added U16_PREV.

04/19/09:

23:25 Changeset [42668] by adele@apple.com
  • 2 edits in trunk/WebKit/mac

2009-04-19 Adele Peterson <adele@apple.com>

Reviewed by Darin Adler.

Fix for <rdar://problem/6804809> REGRESSION: In Mail, Home and End do not scroll message

If no scrolling occurs, call tryToPerform on the next responder. Then our WebResponderChainSink
will correctly detect if no responders handle the selector.

  • WebView/WebFrameView.mm: (-[WebFrameView _scrollToBeginningOfDocument]): (-[WebFrameView _scrollToEndOfDocument]): (-[WebFrameView scrollToBeginningOfDocument:]): (-[WebFrameView scrollToEndOfDocument:]): (-[WebFrameView scrollLineUp:]): (-[WebFrameView scrollLineDown:]):
22:47 Changeset [42667] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • maybe fix release builds
  • dom/ScriptElement.cpp: (WebCore::ScriptElementData::notifyFinished):
22:27 Changeset [42666] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • fix release builds
  • dom/Document.cpp: (WebCore::Document::executeScriptSoonTimerFired):
21:20 Changeset [42665] by mitz@apple.com
  • 12 edits
    3 adds in trunk

WebCore:

Reviewed by Mark Rowe.

  • fix <rdar://problem/6734365> REGRESSION eBay "Save this search" link does nothing the second time search results are opened

Test: fast/dom/HTMLScriptElement/nested-execution.html

Instead of executing scripts as soon as they finish loading, which may
happen synchronously during execution of another script, defer their
execution until the next run loop iteration, using a queue that is
similar to the HTML5 notion of the "list of scripts that will execute as
soon as possible", and in my testing was consistent with how Firefox
behaved.

  • dom/Document.cpp: (WebCore::Document::Document): Initialize m_executeScriptSoonTimer. (WebCore::Document::~Document): deref() script elements in m_scriptsToExecuteSoon. (WebCore::Document::executeScriptSoonTimerFired): Added. Executes the scripts in m_scriptsToExecuteSoon and deref()s them. (WebCore::Document::executeScriptSoon): Added. Appends to m_scriptsToExecuteSoon and ref()s the script element, which keeps the ScriptElementData alive as well.
  • dom/Document.h:
  • dom/ScriptElement.cpp: (WebCore::ScriptElementData::ScriptElementData): Initialize m_requested. (WebCore::ScriptElementData::requestScript): Set m_requested to true, to prevent further load requests. (WebCore::ScriptElementData::execute): Added. Moved the code from notifyFinished() which should not execute synchronously here, to be called by the Document on a 0-interval timer. (WebCore::ScriptElementData::notifyFinished): Moved the code to dispatch events and evaluate the script, which should not execute synchronously, out of here. (WebCore::ScriptElementData::ignoresLoadRequest): Changed to test for m_requested instead of m_cachedScript, because the latter is cleared before the script is evaluated.
  • dom/ScriptElement.h:

LayoutTests:

Reviewed by Mark Rowe.

  • test and updated tests for <rdar://problem/6734365> eBay "Save this search" link does nothing the second time search results are opened
  • fast/dom/HTMLScriptElement/nested-execution-expected.txt: Added.
  • fast/dom/HTMLScriptElement/nested-execution.html: Added.
  • fast/dom/HTMLScriptElement/resources/nested-execution.js: Added.
  • fast/dom/HTMLScriptElement/script-reexecution.html:
  • fast/dom/HTMLScriptElement/script-set-src.html:
  • fast/dom/script-element-gc.html:
  • fast/loader/local-JavaScript-from-local.html:
  • svg/dom/SVGScriptElement/script-reexecution.svg:
  • svg/dom/SVGScriptElement/script-set-href.svg:
18:31 Changeset [42664] by oliver@apple.com
  • 2 edits in trunk/WebCore

<rdar://problem/6127705> Excessive memory consumption on image load failure

Reviewed by Antti Koivisto and Darin Adler

When we fail to decode an image we clear most of the image data, but not the
input data itself, which can be backed by a CFData object that itself holds onto
a few hundred Kbs of memory. This patch merely ensures that this buffer gets
cleared.

16:38 Changeset [42663] by darin@apple.com
  • 2 edits in trunk/WebKit

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

  • StringsNotToBeLocalized.txt: Updated for recent changes.
15:54 Changeset [42662] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Darin Adler.

Better fix for JSStringCreateWithCFString hardening.

  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString):
15:48 Changeset [42661] by darin@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

ooo

15:47 Changeset [42660] by darin@apple.com
  • 5 edits in trunk/WebCore

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

Reviewed by Sam Weinig.

Add hoooks so sudden termination will not cause loss of icons or local storage.
rdar://problem/5951701

  • loader/icon/IconDatabase.cpp: Marked various constants static to give them internal linkage. (WebCore::IconDatabase::IconDatabase): Added initial value for m_syncTimer. Removed unneeded initial value for m_defaultIconRecord. Changed assertion to work cross-platform. (WebCore::IconDatabase::wakeSyncThread): Added disableSuddenTermination, so we won't terminate until the sync thread has done its thing. (WebCore::IconDatabase::scheduleOrDeferSyncTimer): Added disableSuddenTermination, so we won't terminate if we have an outstanding sync timer. (WebCore::IconDatabase::syncTimerFired): Added enableSuddenTermination, to balance the one in scheduleOrDeferSyncTimer. (WebCore::IconDatabase::syncThreadMainLoop): Added enableSuddenTermination, to balance the one in wakeSyncThread. (WebCore::IconDatabase::deleteAllPreparedStatements): Use clear() instead of set(0).
  • loader/icon/IconDatabase.h: Use a Timer instead of an OwnPtr<Timer>.
  • storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::scheduleFinalSync): Added disableSuddenTermination. (WebCore::LocalStorageArea::scheduleItemForSync): Ditto. (WebCore::LocalStorageArea::scheduleClear): Ditto. (WebCore::LocalStorageArea::syncTimerFired): Added a disableSuddenTermination if we schedule a performSync callback for later and an unconditional enableSuddenTermination to balance the ones in the schedule calls above. (WebCore::LocalStorageArea::sync): Factored out the work of the sync function so it can continue to use early return idiom. (WebCore::LocalStorageArea::performSync): Added a call to enableSuddenTermination.
  • storage/LocalStorageArea.h: Added declaration of the sync function.
15:26 Changeset [42659] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Dan Bernstein.

Fix for <rdar://problem/5860954>
Harden JSStringCreateWithCFString against malformed CFStringRefs.

  • API/JSStringRefCF.cpp: (JSStringCreateWithCFString):
10:05 Changeset [42658] by ddkilzer@apple.com
  • 8 edits in trunk

Make FEATURE_DEFINES completely dynamic

Reviewed by Darin Adler.

Make FEATURE_DEFINES depend on individual ENABLE_FEATURE_NAME
variables for each feature, making it possible to remove all
knowledge of FEATURE_DEFINES from build-webkit.

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Extract a variable from FEATURE_DEFINES for each feature setting.

WebCore:

  • Configurations/FeatureDefines.xcconfig: Extract a variable from FEATURE_DEFINES for each feature setting.

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Extract a variable from FEATURE_DEFINES for each feature setting.

WebKitTools:

  • Scripts/build-webkit: Define individual ENABLE_FEATURE_NAME variables instead of the whole FEATURE_DEFINES string when building with Xcode. Miscellaneous clean up:
  • Reordered/sorted command-line switch variables.
  • Reordered/sorted command-line switches in $usage.
  • Reordered/sorted command-line switches in GetOptions().
  • Defined $svgSupport to true if any --svg-feature switch is set in order to match "Implies SVG Support" claim.
  • Build JavaScriptGlue after JavaScriptCore again!
  • Fixed --[no-]geolocation for GTK+ port and sorted GTK+ command-line switches.
  • Added "exit 0" statement at the end of the script.
00:38 Changeset [42657] by ggaren@apple.com
  • 6 edits in trunk/WebCore

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

Reviewed by Alexey Proskuryakov.

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


Removed a little more complexity from event handler creation and destruction.


Removed the jsProtectedEventListeners, jsProtectedInlineEventListeners,
and jsInlineEventListeners maps, and all the code for managing them.


ProtectedEventListeners don't exist anymore, so they're easy to nix.


Inline EventListeners do still exist, but there's no reason to track
them in a map. The map exists to enable 'removeEventListener' to associate
a unique JSEventListener with a given JavaScript function. But the
'removeEventListener' API only works with non-inline event listeners!


  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject): (WebCore::JSDOMGlobalObject::findJSEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener): (WebCore::JSDOMGlobalObject::createJSInlineEventListener):
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::clearJSFunctionInline):
  • bindings/js/JSLazyEventListener.cpp: (WebCore::JSLazyEventListener::~JSLazyEventListener): (WebCore::JSLazyEventListener::parseCode):
  • bindings/scripts/CodeGeneratorJS.pm:

04/18/09:

23:42 Changeset [42656] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Dan Bernstein.

Fix typo. s/VM_MEMORY_JAVASCRIPT_JIT_REGISTER_FILE/VM_MEMORY_JAVASCRIPT_CORE/

  • runtime/Collector.cpp: (JSC::allocateBlock): Fix bozo typo.
23:39 Changeset [42655] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Windows build
  • editing/VisiblePosition.cpp: (WebCore::VisiblePosition::characterAfter):
23:29 Changeset [42654] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • revert the previous change, which was to a file that the Windows port does not even use
  • icu/unicode/utf16.h:
23:17 Changeset [42653] by simon.fraser@apple.com
  • 2 edits in trunk

Fix the dates in my Changelog entries

22:28 Changeset [42652] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Geoffrey Garen.

  • try to fix the Windows build
  • icu/unicode/utf16.h:
22:00 Changeset [42651] by simon.fraser@apple.com
  • 6 edits
    4 adds in trunk

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

Reviewed by Antti Koivisto.

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

When a <video> element gained a RenderLayer via opacity, reflection etc., the
layer hierarchy was not correctly updated because RenderMedia skipped a level
when asked for its children; it skipped m_controlsShadowRoot's renderer, which
actually has a layer.

Test: fast/layers/video-layer.html

  • rendering/MediaControlElements.cpp: (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement): Don't manually call setParent() on the renderer. It will happen later as a result of addChild().
  • rendering/RenderMedia.cpp: (WebCore::RenderMedia::createControlsShadowRoot): Add m_controlsShadowRoot's renderer as a child.
  • rendering/RenderMedia.h: (WebCore::RenderMedia::children): Now maintain a RenderObjectChildList, m_children, and remove the unneeded removeChild() method. Make the two children() methods inline.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::moveLayers): Assert if moveLayers() is called with an oldParent that is not the layer's actual parent (which would have revealed this bug).
21:58 Changeset [42650] by ggaren@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Cameron Zwarich.

Fixed a layout test failure, caused by my last check-in
(fast/dom/script-element-gc.html).

  • bindings/js/JSDOMBinding.cpp: (WebCore::isObservableThroughDOM):
  • html/HTMLScriptElement.h: (WebCore::HTMLScriptElement::haveFiredLoadEvent): Treat script elements just like image elements: if a script element is loading, mark its JS wrapper, even if the element is not in the document.
19:14 Changeset [42649] by weinig@apple.com
  • 5 edits in trunk/JavaScriptCore

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

Reviewed by Anders Carlsson.

Fix for <rdar://problem/6801555> Tag JavaScript memory on SnowLeopard

  • interpreter/RegisterFile.h: (JSC::RegisterFile::RegisterFile):
  • jit/ExecutableAllocatorFixedVMPool.cpp: (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemAlloc):
  • runtime/Collector.cpp: (JSC::allocateBlock):
18:40 Changeset [42648] by dimich@chromium.org
  • 3 edits
    2 adds in trunk/WebCore

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

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25170
Upstream V8WorkerCustom.cpp and V8WorkerContextCustom.cpp for V8 bindings.

  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::findOrCreateEventListener):
  • bindings/v8/WorkerContextExecutionProxy.h:
  • bindings/v8/custom/V8WorkerContextCustom.cpp: Added.
  • bindings/v8/custom/V8WorkerCustom.cpp: Added.
18:40 Changeset [42647] by dimich@chromium.org
  • 3 edits
    2 moves in trunk/WebCore

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

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/post_bug.cg://bugs.webkit.org/show_bug.cgi?id=25167
Change createHiddenXHRDependency and removeHiddenXHRDependency so that they can be used by other custom code in V8 bindings.

  • bindings/v8/V8Utilities.cpp: Renamed from WebCore/bindings/v8/V8XMLHttpRequestUtilities.cpp. (WebCore::createHiddenDependency): (WebCore::removeHiddenDependency):
  • bindings/v8/V8Utilities.h: Renamed from WebCore/bindings/v8/V8XMLHttpRequestUtilities.h.
  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp: (WebCore::ACCESSOR_SETTER): (WebCore::CALLBACK_FUNC_DECL):
  • bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp: (WebCore::ACCESSOR_SETTER): (WebCore::CALLBACK_FUNC_DECL):
18:19 Changeset [42646] by ddkilzer@apple.com
  • 8 edits in trunk

2009-04-18 Drew Wilson <amw@apple.com>

<rdar://problem/6781407> VisiblePosition.characterAfter should return UChar32

Reviewed by Dan Bernstein.

JavaScriptCore:

  • wtf/unicode/icu/UnicodeIcu.h: (WTF::Unicode::hasLineBreakingPropertyComplexContextOrIdeographic): Added.

WebCore:

No test case since there is no change in behavior.

  • editing/VisiblePosition.cpp: (WebCore::VisiblePosition::characterAfter): Now handles surrogate pairs correctly and returns a UChar32.
  • editing/VisiblePosition.h: (WebCore::VisiblePosition::characterBefore): Now returns a UChar32.
  • editing/visible_units.cpp: (WebCore::endOfFirstWordBoundaryContext): Renamed firstNonComplexContextLineBreak() to this. Changed it to use the generic requiresContextForWordBoundary() instead of hasLineBreakingPropertyComplexContext(). (WebCore::startOfLastWordBoundaryContext): Replaces lastNonComplexContextLineBreak(), but returns the offset of the character after the last character that does not require context for word breaking. Also changed to use requiresContextForWordBoundary(). (WebCore::previousBoundary): Updated for the above changes in names and semantics, and changed to use requiresContextForWordBoundary(). (WebCore::nextBoundary): Ditto. (WebCore::startWordBoundary): Ditto. (WebCore::endWordBoundary): Ditto. (WebCore::previousWordPositionBoundary): Ditto. (WebCore::nextWordPositionBoundary): Ditto.
  • platform/text/TextBoundaries.h: (WebCore::requiresContextForWordBoundary): Added.
  • platform/text/mac/TextBoundaries.mm:
18:00 Changeset [42645] by ggaren@apple.com
  • 3 edits
    3 adds in trunk

WebCore:

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

Reviewed by Cameron Zwarich.

Fixed <rdar://problem/6797442> | https://bugs.webkit.org/show_bug.cgi?id=25285
REGRESSION (r42569): Profiles cannot be selected in inspector profiler


EventListeners are shared; RegisteredEventListeners are not. Therefore,
when a node wrapper needs to invalidate the node's JS event listeners,
it should invalidate its RegisteredEventListeners, not its EventListeners.
Otherwise, it might invalidate an EventListener shared by another node.

  • dom/RegisteredEventListener.h: (WebCore::invalidateEventListeners): ditto

LayoutTests:

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

Reviewed by Cameron Zwarich.


Test for <rdar://problem/6797442> | https://bugs.webkit.org/show_bug.cgi?id=25285
REGRESSION (r42569): Profiles cannot be selected in inspector profiler

  • fast/events/event-listener-sharing-expected.txt: Added.
  • fast/events/event-listener-sharing.html: Added.
  • fast/events/resources/event-listener-sharing.js: Added. (gc): (clickHandler):
16:50 Changeset [42644] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Mark Rowe.

Fix for <rdar://problem/5861045>
A little bit of hardening for UString.

  • runtime/UString.cpp: (JSC::concatenate): (JSC::UString::append):
15:50 Changeset [42643] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Mark Rowe and Dan Bernstein.

Fix for <rdar://problem/5861188>
A little bit of hardening for Vector.

  • wtf/Vector.h: (WTF::Vector<T, inlineCapacity>::append): (WTF::Vector<T, inlineCapacity>::insert):
13:29 Changeset [42642] by eric.carlson@apple.com
  • 11 edits in trunk

2009-04-18 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6781295> video.buffered and video.seekable are not
the same.

  • WebCore.base.exp: Added wkQTMovieMaxTimeSeekable.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::maxTimeSeekable): Return wkQTMovieMaxTimeSeekable.
  • platform/mac/WebCoreSystemInterface.h: Add wkQTMovieMaxTimeSeekable.
  • platform/mac/WebCoreSystemInterface.mm: Ditto.

2009-04-18 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6781295> video.buffered and video.seekable are not
the same.

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Add wkQTMovieMaxTimeSeekable.

2009-04-18 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6781295> video.buffered and video.seekable are not
the same.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
12:11 Changeset [42641] by eric.carlson@apple.com
  • 11 edits in trunk

2009-04-18 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6747241> work around QTKit no longer reaching
QTMovieLoadStateComplete

  • WebCore.base.exp: Export wkQTMovieMaxTimeLoadedChangeNotification.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie): observe QTMovieMaxTimeLoadedChangeNotification. (WebCore::MediaPlayerPrivate::updateStates): compare duuration() with maxTimeLoaded() instead of using QTMovieLoadStateComplete to determine if a movie are fully loaded.
  • platform/mac/WebCoreSystemInterface.h: Add wkQTMovieMaxTimeLoadedChangeNotification.
  • platform/mac/WebCoreSystemInterface.mm: Ditto.

2009-04-18 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6747241> work around QTKit no longer reaching
QTMovieLoadStateComplete

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Init the new WKSI exported symbol.
11:49 Changeset [42640] by justin.garcia@apple.com
  • 4 edits in trunk/LayoutTests

2009-04-18 Justin Garcia <justin.garcia@apple.com>

Updated test results for https://bugs.webkit.org/show_bug.cgi?id=25277

  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.checksum:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.png:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
04:49 Changeset [42639] by staikos@webkit.org
  • 6 edits in trunk

2009-04-18 Nikolas Zimmermann <nikolas.zimmermann@torchmobile.com>

Reviewed by George Staikos.

Make WML work again, most regressions test were failing.

04/17/09:

21:44 Changeset [42638] by barraclough@apple.com
  • 4 edits
    1 add in trunk/JavaScriptCore

2009-04-17 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoff Garen.

On x86_64, make all JIT-code allocations from a new heap, managed
by FixedVMPoolAllocator. This class allocates a single large (2Gb)
pool of virtual memory from which all further allocations take place.
Since all JIT code is allocated from this pool, we can continue to
safely assume (as is already asserted) that it will always be possible
to link any JIT-code to JIT-code jumps and calls.

Add new file.

  • jit/ExecutableAllocatorFixedVMPool.cpp: Added. (JSC::FreeListEntry::FreeListEntry): (JSC::AVLTreeAbstractorForFreeList::get_less): (JSC::AVLTreeAbstractorForFreeList::set_less): (JSC::AVLTreeAbstractorForFreeList::get_greater): (JSC::AVLTreeAbstractorForFreeList::set_greater): (JSC::AVLTreeAbstractorForFreeList::get_balance_factor): (JSC::AVLTreeAbstractorForFreeList::set_balance_factor): (JSC::AVLTreeAbstractorForFreeList::null): (JSC::AVLTreeAbstractorForFreeList::compare_key_key): (JSC::AVLTreeAbstractorForFreeList::compare_key_node): (JSC::AVLTreeAbstractorForFreeList::compare_node_node): (JSC::sortFreeListEntriesByPointer): (JSC::sortCommonSizedAllocations): (JSC::FixedVMPoolAllocator::release): (JSC::FixedVMPoolAllocator::reuse): (JSC::FixedVMPoolAllocator::addToFreeList): (JSC::FixedVMPoolAllocator::coalesceFreeSpace): (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator): (JSC::FixedVMPoolAllocator::alloc): (JSC::FixedVMPoolAllocator::free): (JSC::ExecutableAllocator::intializePageSize): (JSC::ExecutablePool::systemAlloc): (JSC::ExecutablePool::systemRelease):

The new 2Gb heap class!

  • jit/ExecutableAllocatorPosix.cpp:

Disable use of this implementation on x86_64.

  • wtf/AVLTree.h:

Add missing variable initialization.

(WTF::::remove):

19:23 Changeset [42637] by justin.garcia@apple.com
  • 4 edits in trunk/LayoutTests/platform/mac/fast/inline

Accidently checked in outdated pixel results.

19:04 Changeset [42636] by oliver@apple.com
  • 3 edits
    3 adds in trunk

Fix bug where the VM reentry cache would not correctly unroll the cached callframe

Reviewed by Darin Adler

Fix a check that was intended to mark a cached call as invalid when the callframe could
not be constructed. Instead it was just checking that there was a place to put the
exception. This eventually results in a non-recoverable RegisterFile starvation.

18:59 Changeset [42635] by justin.garcia@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderText.cpp

Forgot to uncomment some code before checking in.

18:53 Changeset [42634] by justin.garcia@apple.com
  • 3 edits
    8 adds in trunk

WebCore:

2009-04-17 Justin Garcia <justin.garcia@apple.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=25277
If there is no line wrapping, a caret can leave its containing block but it shouldn't leave its root line box


Also added code to handle a caret wider than one pixel.


Added fast/inline/25277.html and fast/inline/25277-2.html

  • rendering/RenderText.cpp: (WebCore::RenderText::localCaretRect): Distribute a caret's width to either side of the offset, so that a caret between two characters doesn't hang over one character more than the other. If there is no wrapping, the caret can leave its containing block, but not its root line box.

LayoutTests:

2009-04-17 Justin Garcia <justin.garcia@apple.com>

Reviewed by Dan Bernstein.


https://bugs.webkit.org/show_bug.cgi?id=25277
If there is no line wrapping, a caret can leave its containing block but it shouldn't leave its root line box

  • fast/inline/25277-2.html: Added.
  • fast/inline/25277.html: Added.
  • platform/mac/fast/inline/25277-2-expected.checksum: Added.
  • platform/mac/fast/inline/25277-2-expected.png: Added.
  • platform/mac/fast/inline/25277-2-expected.txt: Added.
  • platform/mac/fast/inline/25277-expected.checksum: Added.
  • platform/mac/fast/inline/25277-expected.png: Added.
  • platform/mac/fast/inline/25277-expected.txt: Added.
18:31 Changeset [42633] by ggaren@apple.com
  • 40 edits in trunk/WebCore

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

Reviewed by Oliver Hunt.

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


Some refactoring of "inline" event listeners.


Renames:

dispatchEventForType => dispatchEvent
setWindowInlineEventListenerForTypeAndAttribute => setWindowInlineEventListener
removeInlineEventListenerForType => clearInlineEventListener
setInlineEventListenerForType => setInlineEventListener
inlineEventListenerForType => getInlineEventListener

  • bindings/js/JSLazyEventListener.cpp: (WebCore::eventParameterName): (WebCore::JSLazyEventListener::JSLazyEventListener): (WebCore::createInlineEventListener):
  • bindings/js/JSLazyEventListener.h: Added two helper functions for creating "inline" event listeners. These replace Document::createEventListener, and abstract the creation of JS event listeners for DOM attributes out of the DOM. Removed legacy JSProtectedEventListener constructor code for adding the event listener's function to a map, since lazy event listeners don't have functions at construction time.
  • dom/Document.cpp: (WebCore::Document::setFocusedNode):
  • dom/Document.h: (WebCore::Document::isSVGDocument):
  • dom/Element.cpp: (WebCore::Element::setWindowInlineEventListener):
  • dom/Element.h: Updated for renames. Nixed Document::createEventListener, mentioned above. Moved setWindowInlineEventListenerForTypeAndAttribute to Element, for simplicity.
  • dom/InputElement.cpp: (WebCore::InputElement::setValueFromRenderer):
  • dom/Node.cpp: (WebCore::Node::dispatchFocusEvent): (WebCore::Node::dispatchBlurEvent): (WebCore::Node::dispatchEvent): (WebCore::Node::clearInlineEventListener): (WebCore::Node::setInlineEventListener): (WebCore::Node::getInlineEventListener): (WebCore::Node::onabort): (WebCore::Node::setOnabort): (WebCore::Node::etc.):
  • dom/Node.h: Updated for renames.


  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment): Updated for renames.


Updated these files for renames, and to use the new createInlineEventListener
helper function:

  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::parseMappedAttribute):
  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::parseMappedAttribute):
  • html/HTMLElement.cpp: (WebCore::HTMLElement::parseMappedAttribute):
  • html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::onChange):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::prepareSubmit): (WebCore::HTMLFormElement::reset): (WebCore::HTMLFormElement::parseMappedAttribute):
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseMappedAttribute):
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::parseMappedAttribute):
  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::parseMappedAttribute):
  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::dispatchLoadEvent):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute): (WebCore::HTMLInputElement::onSearch):
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::loadInternal):
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::parseMappedAttribute):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::parseMappedAttribute): (WebCore::HTMLScriptElement::dispatchLoadEvent): (WebCore::HTMLScriptElement::dispatchErrorEvent):
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute):
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::parseMappedAttribute):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::notifyFinished):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::mouseButtonListener):
  • page/DOMWindow.cpp:
  • page/DOMWindow.h: (WebCore::DOMWindow::eventListeners):
  • page/EventHandler.cpp: (WebCore::EventHandler::canMouseDownStartSelect): (WebCore::EventHandler::canMouseDragExtendSelect): (WebCore::EventHandler::sendScrollEvent):
  • page/Page.cpp: (WebCore::networkStateChanged):
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::valueChanged):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::selectionChanged):
  • svg/SVGElement.cpp: (WebCore::SVGElement::parseMappedAttribute):
  • svg/SVGElementInstance.cpp:
  • svg/SVGImageLoader.cpp: (WebCore::SVGImageLoader::dispatchLoadEvent):
  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::parseMappedAttribute):
  • svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::dispatchErrorEvent):
  • wml/WMLInputElement.cpp: (WebCore::WMLInputElement::defaultEventHandler):
16:52 Changeset [42632] by andersca@apple.com
  • 11 edits in trunk/WebKit/mac

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

Reviewed by Dan Bernstein.

<rdar://problem/6714488>
REGRESSION (Safari 3-4): Edit menu commands (cut/copy/paste/select all) do not work on Flash content


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::syntheticKeyDownWithCommandModifier): Send a keyDown event to the plug-in host.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView sendModifierEventWithKeyCode:character:]): Call the plug-in instance proxy.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView sendModifierEventWithKeyCode:character:]): Add this. Subclasses are required to override it.


(-[WebBaseNetscapePluginView cut:]):
(-[WebBaseNetscapePluginView copy:]):
(-[WebBaseNetscapePluginView paste:]):
(-[WebBaseNetscapePluginView selectAll:]):
Call sendModifierEventWithKeyCode.


  • Plugins/WebNetscapePluginEventHandler.h: Add syntheticKeyDownWithCommandModifier.


  • Plugins/WebNetscapePluginEventHandlerCarbon.h:
  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: (WebNetscapePluginEventHandlerCarbon::syntheticKeyDownWithCommandModifier): Send the synthetic event.


  • Plugins/WebNetscapePluginEventHandlerCocoa.h:
  • Plugins/WebNetscapePluginEventHandlerCocoa.mm: (WebNetscapePluginEventHandlerCocoa::syntheticKeyDownWithCommandModifier): Send the synthetic event.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView sendModifierEventWithKeyCode:character:]): Call the event handler.
16:11 Changeset [42631] by ddkilzer@apple.com
  • 13 edits
    3 adds in trunk

Simplify FEATURE_DEFINES definition

Reviewed by Darin Adler.

This moves FEATURE_DEFINES and its related ENABLE_FEATURE_NAME
variables to their own FeatureDefines.xcconfig file. It also
extracts a new ENABLE_GEOLOCATION variable so that
FEATURE_DEFINES only needs to be defined once.

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Added.
  • Configurations/JavaScriptCore.xcconfig: Removed definition of ENABLE_SVG_DOM_OBJC_BINDINGS and FEATURE_DEFINES. Added include of FeatureDefines.xcconfig.
  • JavaScriptCore.xcodeproj/project.pbxproj: Added FeatureDefines.xcconfig file.

WebCore:

  • Configurations/FeatureDefines.xcconfig: Added.
  • Configurations/WebCore.xcconfig: Removed definition of ENABLE_SVG_DOM_OBJC_BINDINGS and FEATURE_DEFINES. Added include of FeatureDefines.xcconfig.
  • WebCore.xcodeproj/project.pbxproj: Added FeatureDefines.xcconfig file.
  • bindings/scripts/CodeGeneratorObjC.pm: When creating a list of command-line macro definitions, split on one-or-more spaces instead of a single space since the FEATURE_DEFINES macro may now contain more than one space between macros if some macros aren't defined.

WebKit:

  • WebKit.xcodeproj/project.pbxproj: Added FeatureDefines.xcconfig file.

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Added.
  • Configurations/WebKit.xcconfig: Removed definition of ENABLE_SVG_DOM_OBJC_BINDINGS and FEATURE_DEFINES. Added include of FeatureDefines.xcconfig.

WebKitTools:

  • Scripts/build-webkit: Realphabetized code related to enabling Geolation features for WebKit. Also set ENABLE_GEOLOCATION variable for xcodebuild.
15:54 Changeset [42630] by adachan@apple.com
  • 2 edits in trunk/WebKit/win

<rdar://problem/6803905> Lots of ASSERTs firing when trying to clear history

Reviewed by Steve Falkenburg.

  • WebHistory.cpp: (WebHistory::data): Return null if there are no history items.
15:29 Changeset [42629] by simon.fraser@apple.com
  • 2 edits in trunk/WebKitSite

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

Reviewed by Steve Falkenburg

Fix the link for setting the Platform SDK paths in the Windows instructions.

  • building/build.html:
15:28 QtWebKitTodo edited by hausmann@webkit.org
(diff)
15:27 QtWebKitJournal edited by hausmann@webkit.org
(diff)
14:49 Changeset [42628] by beidson@apple.com
  • 3 edits
    1 move in trunk

WebCore:

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

Reviewed by Mark Rowe

<rdar://problem/6786999> Tiger WebKit shouldn't try to POST on back/forward without nagging.

  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willLoadFromCache):

LayoutTests:

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

Reviewed by Mark Rowe

<rdar://problem/6778137> - Disable post-goback-repost-policy.html until the networking layer allows it to be useful.

  • http/tests/navigation/post-goback-repost-policy.html: Removed.
  • http/tests/navigation/post-goback-repost-policy.html-disabled: Copied from http/tests/navigation/post-goback-repost-policy.html.
13:50 Changeset [42627] by darin@apple.com
  • 4 edits
    2 adds in trunk/WebCore

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

Reviewed by Timothy Hatcher.

Added sudden termination functions that can be called without involving
the page or client.

  • GNUmakefile.am: Added SuddenTermination.h.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto. Also added SuddenTermination.mm.
  • platform/SuddenTermination.h: Added.
  • platform/mac/SuddenTermination.mm: Added.
13:45 Changeset [42626] by eric@webkit.org
  • 7 edits in trunk/WebCore

Reviewed by Simon Fraser.

Move more code into RenderSVGModelObject

needsLayer() already returns false from RenderSVGModelObject
lineHeight and baselinePosition are from days of RenderPath having RenderBox parents.

I also added comments to explain how focus rings work (now that I understand)
I got rid of two more uses of m_absoluteBounds (nearly dead!)

  • rendering/RenderPath.cpp:
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::paint): (WebCore::RenderSVGContainer::addFocusRingRects):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::absoluteRects): (WebCore::RenderSVGModelObject::absoluteQuads):
  • rendering/RenderSVGModelObject.h:
13:44 Changeset [42625] by adachan@apple.com
  • 2 edits in trunk/WebKit/win
  • Fix a leak in WebHistoryItem::children() by adopting the created instance of WebHistoryItem.
  • Remove the unnecessary call to QueryInterface() which is not related to the leak.

Reviewed by Adam Roben.

  • WebHistoryItem.cpp: (WebHistoryItem::children):
13:42 Changeset [42624] by pkasting@chromium.org
  • 2 edits in trunk/WebCore

2009-04-16 Peter Kasting <pkasting@google.com>

Reviewed by Adele Peterson.

https://bugs.webkit.org/show_bug.cgi?id=25238
Invalidate the hovered scrollbar part when resetting the pressed part,
since once there is no pressed part we can draw a hovered state.

  • platform/Scrollbar.cpp: (WebCore::Scrollbar::setHoveredPart): (WebCore::Scrollbar::setPressedPart):
13:31 Changeset [42623] by darin@chromium.org
  • 6 edits
    3 adds in trunk

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

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25223
REGRESSION: Back button after form submission to the same URL fails to navigate.

Test: http/tests/navigation/post-goback-same-url.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadItem): Check if the page we are leaving has FormData.
13:09 Changeset [42622] by zimmermann@webkit.org
  • 3 edits in trunk/WebCore

Not reviewed. Fix WML enabled builds.

12:53 Changeset [42621] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk/po

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

Unreviewed build fix to generate all .mo files at the correct
location.

  • GNUmakefile.am:
12:53 Changeset [42620] by darin@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Darin Adler.

Fix crashes seen in regression tests with hosted plug-ins.

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::cancelStreamLoad): Check the stream for 0, not the stream ID.
12:35 Changeset [42619] by eric.carlson@apple.com
  • 7 edits in trunk

2009-04-17 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Simon Fraser.

Add support for the media element 'played' attribute.
This involves support of "normalized TimeRanges" as described by
the spec.

Test: media/video-played.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): Renamed m_currentTimeDuringSeek->m_lastSeekTime. Added m_playing and m_playedTimeRanges. (WebCore::HTMLMediaElement::loadInternal): Reset m_playing, m_lastSeekTime, and m_playedTimeRanges (WebCore::HTMLMediaElement::seek): Set current time to m_playedTimeRanges (WebCore::HTMLMediaElement::currentTime): m_currentTimeDuringSeek -> m_lastSeekTime (WebCore::HTMLMediaElement::played): Returns m_playedTimeRanges. (WebCore::HTMLMediaElement::updatePlayState): Add the new played time ranges when pausing. Set the m_playing flag.
  • html/HTMLMediaElement.h:
  • html/TimeRanges.cpp: (TimeRanges::add): Merge range(s) if overlap.
  • html/TimeRanges.h: Add various helpers (below). (WebCore::TimeRanges::Range::isPointInRange): Added. (WebCore::TimeRanges::Range::isOverlappingRange): Ditto. (WebCore::TimeRanges::Range::unionWithOverlappingRange): Ditto. (WebCore::TimeRanges::Range::isBeforeRange): Ditto.

2009-04-17 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Simon Fraser.

Add test for media element 'played' attribute.

  • media/video-played-expected.txt: Added.
  • media/video-played.html: Added.
  • media/video-test.js: (disableFullTestDetailsPrinting): New, include less information in 'reportExpected' output to accomodate tests with values that are expected to change from run to run. (reportExpected): Don't log expected and observed values when printFullTestDetails is false. (runSilently): New, same as run() but without logging. (run): Call runSilently to run command.
12:16 Changeset [42618] by darin@apple.com
  • 49 edits in trunk

WebCore:

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

Reviewed by Antti Koivisto.

Bug 25210: don't use ObjC methods to wrap/unwrap DOM objects with ObjC
https://bugs.webkit.org/show_bug.cgi?id=25210

  • WebCore.base.exp: Export the core and kit function overloads that are used in WebKit. Also resorted this file.
  • WebCore.xcodeproj/project.pbxproj: Re-added DOMHTMLCanvasElement.h to fix a strange problem with the file type.
  • bindings/objc/DOM.mm: Removed the many extraneous includes. Added new includes so we can use and implement the new core and kit functions. Import DOMInternal.h first so it can do its public/private magic. (-[DOMNode _rootObject]): Changed to use early-return style. (kitClass): Added. Tells the wrapper generator what kind of node class to create to wrap DOM nodes. This has the code that used to be in the _wrapNode method. (kit): Added. Takes an EventTarget and makes the appropriate type of wrapper, dpending on whether it's a Node or an SVGElementInstance. This replace methods that used to be on both of those classes. (-[DOMNode boundingBox]): Changed to use early return, and the core function. (-[DOMNode lineBoxRects]): Ditto. (-[DOMNode renderedImage]): Ditto. (-[DOMRange boundingBox]): Ditto. (-[DOMRange lineBoxRects]): Ditto. (-[DOMElement image]): Ditto. (-[DOMElement _font]): Ditto. (-[DOMElement _imageTIFFRepresentation]): Ditto. (-[DOMElement _getURLAttribute:]): Ditto. (-[DOMElement isFocused]): Ditto. (kit): Hand-wrote the version of this for NodeFilter, since it's a protocol, not a class in the binding. (core): Ditto. (-[DOMNodeFilter acceptNode:]): Use core.
  • bindings/objc/DOMAbstractView.mm: (-[DOMAbstractView document]): Use kit. (-[DOMAbstractView _disconnectFrame]): Call removeDOMWrapper, which is no longer in the WebCore namespace, since it's headed for WebKit in the future. (core): Hand-wrote the version of this for DOMAbstractView.mm, since we store a pointer to the Frame, not the DMWindow. (kit): Ditto.
  • bindings/objc/DOMCSS.mm: (kitClass): Added. Tells the wrapper generator what kind of node class to create to wrap CSS objects. This has the code that used to be in the _wrapStyleSheet, _wrapCSSRule, and _wrapCSSValue methods.
  • bindings/objc/DOMEvents.mm: (kitClass): Added. Tells the wrapper generator what kind of node class to create to wrap event objects. This has the code that used to be in the _wrapEvent methods.
  • bindings/objc/DOMHTML.mm: (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]): Use kit and core. (-[DOMHTMLDocument createDocumentFragmentWithText:]): Ditto. (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Ditto. (-[DOMHTMLInputElement _rectOnScreen]): Ditto. (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]): Ditto. (-[DOMHTMLInputElement _selectedRange]): Ditto. (-[DOMHTMLInputElement _setAutofilled:]): Ditto. (-[DOMHTMLSelectElement _activateItemAtIndex:]): Ditto. (-[DOMHTMLInputElement _isEdited]): Ditto. (-[DOMHTMLTextAreaElement _isEdited]): Ditto. (kitClass): Added. Gives HTMLOptionCollection objects an appropriate wrapper.
  • bindings/objc/DOMInternal.h: Removed most of the imports. There's no reason to have this header include all the other internal DOM headers. Removed unneeded interfaces, including the redeclaration of _init in DOMObject, since it's already inherited from WebScriptObject. Moved all the functions out of the WebCore namespace since this code is destined for WebKit, which doesn't use a namespace. Added kit and core functions for the two classes that live in this header.
  • bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]): Use core.
  • bindings/objc/DOMObject.h: Made the _internal field be private instead of protected. This also allows the "#define private public" trick to be used to make the field accessible inside the bindings code.
  • bindings/objc/DOMObject.mm: (-[DOMObject dealloc]): Updated for namespace change. (-[DOMObject sheet]): Use core and kit functions.
  • bindings/objc/DOMRGBColor.mm: (-[DOMRGBColor dealloc]): Updated for namespace change. (-[DOMRGBColor red]): Use kit function. (-[DOMRGBColor green]): Ditto. (-[DOMRGBColor blue]): Ditto. (-[DOMRGBColor alpha]): Ditto. (core): Added. Replaces the _RGBColor method. (kit): Added. Replaces the _wrapRGBColor method.
  • bindings/objc/DOMSVGPathSegInternal.mm: (kitClass): Added. Replaces the _wrapSVGPathSeg method.
  • bindings/objc/DOMUtility.mm: (JSC::createDOMWrapper): Use kit function. (createDOMWrapper): Ditto.
  • bindings/objc/DOMXPath.mm: (core): Added. Replaces the _xpathNSResolver method. (kit): Added. Replaces the _wrapXPathNSResolver method.
  • bindings/objc/ObjCEventListener.mm: (WebCore::ObjCEventListener::find): Changed to use early return. (WebCore::ObjCEventListener::handleEvent): Use kit function.
  • bindings/objc/ObjCNodeFilterCondition.mm: (WebCore::ObjCNodeFilterCondition::acceptNode): Use kit function.
  • bindings/objc/WebScriptObject.mm: (+[WebScriptObject scriptObjectForJSObject:originRootObject:rootObject:]): Updated for namespace change.
  • bindings/scripts/CodeGeneratorObjC.pm: Changed spelling of "license" to U.S. spelling. Removed GetObjCTypeMaker, GetObjCTypeGetterName, GetInternalTypeGetterSignature, and GetInternalTypeMakerSignature. Changed includes to conform to new scheme. Generate core and kit functions instead of methods and calls to those functions. Added a new attribute, Polymorphic, to indicate classes that have derived subclasses. Removed the old ObjCCustomInternalImpl attribute.
  • css/CSSRule.idl: Use Polymorphic attribute, so core and kit functions will be generated, with kit calling kitClass. This requires less hand- written code than the old ObjCCustomInternalImpl.
  • css/CSSValue.idl: Ditto.
  • css/StyleSheet.idl: Ditto.
  • dom/Event.idl: Ditto.
  • dom/Node.idl: Ditto.
  • html/HTMLCollection.idl: Ditto.
  • svg/SVGPathSeg.idl: Ditto.
  • editing/TextAffinity.h: Moved kit and core functions out of the WebCore namespace since this code is destined for WebKit, which doesn't use a namespace
  • platform/mac/ClipboardMac.mm: (WebCore::ClipboardMac::declareAndWriteDragImage): Use kit function.
  • platform/mac/DragDataMac.mm: (WebCore::DragData::asFragment): Use core function.
  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection): Use kit function.
  • svg/SVGElementInstance.idl: Removed now-unneeded ObjCCustomInternalImpl function. This can be generated in a standard way now.
  • svg/SVGViewSpec.idl: Ditto.

WebKit/mac:

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

Reviewed by Antti Koivisto.

Bug 25210: don't use ObjC methods to wrap/unwrap DOM objects with ObjC
https://bugs.webkit.org/show_bug.cgi?id=25210

  • DOM/WebDOMOperations.mm: (-[DOMNode markupString]): Use the core function instead of an Objective-C method. (-[DOMNode _subresourceURLs]): Ditto. (-[DOMDocument _focusableNodes]): Ditto. (-[DOMRange webArchive]): Ditto. (-[DOMRange markupString]): Ditto.
  • Misc/WebElementDictionary.mm: Added now-needed include since the core and kit functions now come from the internal headers from DOM bindings.
  • Misc/WebNSPasteboardExtras.mm: Ditto.
  • Plugins/WebNullPluginView.mm: Ditto.
  • Plugins/WebPluginController.mm: Ditto.
  • WebCoreSupport/WebChromeClient.mm: Ditto.
  • WebCoreSupport/WebInspectorClient.mm: Ditto.
  • WebCoreSupport/WebPasteboardHelper.mm: Ditto.
  • WebView/WebHTMLView.mm: Ditto.
  • WebCoreSupport/WebEditorClient.mm: Made kit function have internal linkage since it's only used in this file. Someone had instead added a declaration to suppress the warning you would otherwise get. Removed the core function. (WebEditorClient::textFieldDidBeginEditing): Added correct type checking. Previously the function would check only that something was an HTMLElement, but then cast it to HTMLInputElement. Also call kit instead of old wrap method. (WebEditorClient::textFieldDidEndEditing): Ditto. (WebEditorClient::textDidChangeInTextField): Ditto. (WebEditorClient::doTextFieldCommandFromEvent): Ditto. (WebEditorClient::textWillBeDeletedInTextField): Ditto. (WebEditorClient::textDidChangeInTextArea): Ditto, but for HTMLTextAreaElement.
  • WebView/WebFrame.mm: Removed the core and kit functions here which are no longer needed since they're automatically generated now. (-[WebFrame _nodesFromList:]): Use kit. (-[WebFrame _markupStringFromRange:nodes:]): Use core. (-[WebFrame _stringForRange:]): More of the same. (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto. (-[WebFrame _firstRectForDOMRange:]): Ditto. (-[WebFrame _scrollDOMRangeToVisible:]): Ditto. (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]): Ditto. (-[WebFrame _convertNSRangeToDOMRange:]): Ditto. (-[WebFrame _convertDOMRangeToNSRange:]): Ditto. (-[WebFrame _markDOMRange]): Ditto. (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto. (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto. (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto. (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto. (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto. (-[WebFrame _characterRangeAtPoint:]): Ditto. (-[WebFrame _typingStyle]): Ditto. (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto. (-[WebFrame _pauseAnimation:onNode:atTime:]): Ditto. (-[WebFrame _pauseTransitionOfProperty:onNode:atTime:]): Ditto. (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto.
  • WebView/WebFrameInternal.h: Removed the core and kit functions here which are no longer needed since they're automatically generated now.
  • WebView/WebHTMLRepresentation.mm: (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]): Use core. (formElementFromDOMElement): Ditto. (inputElementFromDOMElement): Ditto.
  • WebView/WebTextIterator.mm: (-[WebTextIterator initWithRange:]): Ditto. (-[WebTextIterator currentRange]): Ditto. (-[WebTextIterator currentNode]): Ditto.
  • WebView/WebView.mm: (-[WebView textIteratorForRect:]): Ditto. (-[WebView setSelectedDOMRange:affinity:]): Ditto.
11:46 Changeset [42617] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

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

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=25251
Crash when frame creation removes it from the parent

This brings us up-to-date with the expectations of sub-frame
creation, following what Mac has done. It fixes crashes when
calling init on the child frame removes it from the page.

This makes the following test pass instead of crash:

fast/loader/frame-creation-removal.html

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::createFrame):
11:03 Changeset [42616] by beidson@apple.com
  • 9 edits
    2 adds in trunk

WebCore:

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

Reviewed by Maciej Stachowiak

<rdar://problem/5753299> "Private Browsing" doesn't affect HTML 5 Database storage

If the Page is in private browsing mode when a statement is queued up, flag that
statement as read-only.

It would be better to set the read-only flag on the database thread when it actually
executes, but that would either require making Settings access a lock-protected operation
or involve a synchronous callback to the WebCore thread, neither of which seem worth it.
If it becomes an issue in practice, we can revisit this later.

Test: storage/private-browsing-readonly.html

  • storage/Database.cpp: (WebCore::Database::setAuthorizerReadOnly):
  • storage/Database.h:
  • storage/DatabaseAuthorizer.cpp: For all action types that would alter the database, deny when in read-only mode. (WebCore::DatabaseAuthorizer::reset): (WebCore::DatabaseAuthorizer::createTable): (WebCore::DatabaseAuthorizer::dropTable): (WebCore::DatabaseAuthorizer::allowAlterTable): (WebCore::DatabaseAuthorizer::createIndex): (WebCore::DatabaseAuthorizer::dropIndex): (WebCore::DatabaseAuthorizer::createTrigger): (WebCore::DatabaseAuthorizer::dropTrigger): (WebCore::DatabaseAuthorizer::createVTable): (WebCore::DatabaseAuthorizer::dropVTable): (WebCore::DatabaseAuthorizer::allowDelete): (WebCore::DatabaseAuthorizer::allowInsert): (WebCore::DatabaseAuthorizer::allowUpdate): (WebCore::DatabaseAuthorizer::setReadOnly):
  • storage/DatabaseAuthorizer.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::create): Add a m_readOnly flag. (WebCore::SQLStatement::SQLStatement): Ditto. (WebCore::SQLStatement::execute): If m_readOnly is set, tell the authorizer to change to read-only mode.
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::executeSQL): Flag the statement as read-only if the Page is currently in private browsing mode.

LayoutTests:

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

Reviewed by Maciej Stachowiak

<rdar://problem/5753299> "Private Browsing" doesn't affect HTML 5 Database storage

  • storage/private-browsing-readonly-expected.txt: Added.
  • storage/private-browsing-readonly.html: Added.
10:59 QtWebKitTodo edited by ariya@webkit.org
(diff)
10:46 Changeset [42615] by andersca@apple.com
  • 11 edits in trunk/WebKit/mac

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

Reviewed by Sam Weinig.

WebKit side of <rdar://problem/6449642>.


  • Plugins/Hosted/HostedNetscapePluginStream.h: (WebKit::HostedNetscapePluginStream::create): New function that creates a stream from a frame loader.


  • Plugins/Hosted/HostedNetscapePluginStream.mm: (WebKit::HostedNetscapePluginStream::HostedNetscapePluginStream): Add the constructor that takes a frame loader.


  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::instantiatePlugin): Pass "fullFrame" to the plug-in host.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCCancelLoadURL): Call NetscapePluginInstanceProxy::cancelStreamLoad.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::create): Pass "fullFrame" to the constructor.


(WebKit::NetscapePluginInstanceProxy::manualStream):
New getter for the manual stream.


  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): Take the implicit request into account if we have a full frame plug-in.


(WebKit::NetscapePluginInstanceProxy::setManualStream):
Setter for the manual stream.


(WebKit::NetscapePluginInstanceProxy::cancelStreamLoad):
Cancel the manual stream if necessary.


  • Plugins/Hosted/WebHostedNetscapePluginView.h: WebHostedNetscapePluginView now conforms to the WebPluginManualLoader protocol.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView createPlugin]): Pass "fullFrame" to instantiatePlugin.


(-[WebHostedNetscapePluginView pluginView:receivedResponse:]):
(-[WebHostedNetscapePluginView pluginView:receivedData:]):
(-[WebHostedNetscapePluginView pluginView:receivedError:]):
(-[WebHostedNetscapePluginView pluginViewFinishedLoading:]):
Call the equivalent manual stream functions.


  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::createPlugin): Use a macro for getting the plug-in view type.
10:44 Changeset [42614] by adachan@apple.com
  • 2 edits in trunk/WebKit/win

Fix a leak in WebHistory::data().

Reviewed by Adam Roben.

  • WebHistory.cpp: (WebHistory::data):
10:42 Changeset [42613] by eric@webkit.org
  • 15 edits in trunk

Reviewed by Antti Koivisto.

Move RenderPath and RenderSVGContainer onto a unified clippedOverflowRectForRepaint
https://bugs.webkit.org/show_bug.cgi?id=25268

Lots of minus lines. Now we're sharing more sane code
(which will respect -webkit-transforms! and scroll offsets correctly)

Which means this fixes:
https://bugs.webkit.org/show_bug.cgi?id=20769 too!

We're no longer expanding the paint rect "for anti-aliasing", since
I can't find a case where that's required. If it is, repaintRectInLocalCoordinates()
should be fixed to handle those cases instead of here.

This fixes svg/custom/scroll-hit-test (now that we respect scroll offsets when repainting)
as well as improves our focus ring drawing seen in svg/custom/focus-ring
focus rings are now closer to transformed content by a couple pixels (they were needlessly outset by the antialiasing hack)
Also, it fixes the dumped rects for markers, causing a progression in svg/custom/marker-overflow-clip

  • rendering/RenderPath.cpp: (WebCore::RenderPath::repaintRectInLocalCoordinates): (WebCore::RenderPath::setPath):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint): (WebCore::RenderSVGModelObject::computeRectForRepaint):
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::computeRectForRepaint):
  • rendering/RenderSVGRoot.h:
09:53 Changeset [42612] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Anders Carlsson.

  • remove tests affected by <rdar://problem/6661401> from the skip list, now that it is fixed.
  • platform/mac-snowleopard/Skipped:
09:00 Changeset [42611] by cfleizach@apple.com
  • 3 edits
    2 adds in trunk

Bug 25259: AX: VoiceOver cmd-cntl-space does not follow the google.com->more link
https://bugs.webkit.org/show_bug.cgi?id=25259

When a node becomes visible or hidden, accessibility needs to be told to update.

08:52 Changeset [42610] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix, added missing header.

02:20 Changeset [42609] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

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

Unreviewed build fix.

Fix the build with enabled SVG filters

01:49 Changeset [42608] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-04-17 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Simon Hausmann.

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

Remove QtCore 4.5 dependency from QWebElement test

00:34 Changeset [42607] by oliver@apple.com
  • 5 edits in trunk

Bug 25027: JavaScript parseInt wrong on negative numbers
<https://bugs.webkit.org/show_bug.cgi?id=25027>

Contributed by Mihnea Ovidenie
Reviewed by Oliver Hunt

When dealing with negative numbers, parseInt should use ceil instead of floor.

Note: See TracTimeline for information about the timeline view.