Timeline


and

04/14/09:

23:43 Changeset [42536] by ap@webkit.org

Rubber-stamped by Darin Adler.

Don't keep platform objects for authentication challenge in ResourceHandleInternal.
We already have a copy in AuthenticationChallenge object.

  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::clearAuthentication):
  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal):
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): (WebCore::ResourceHandle::receivedCancellation):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): (WebCore::ResourceHandle::didCancelAuthenticationChallenge): (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): (WebCore::ResourceHandle::receivedCancellation):
22:06 Changeset [42535] by simon.fraser@apple.com

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

Reviewed by Dan Bernstein

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

Move the run loop observer cleanup from -close
to -_close.

  • WebView/WebView.mm: (-[WebView _close]): (-[WebView close]):
21:19 Changeset [42534] by ggaren@apple.com

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

Reviewed by Sam Weinig.

Nixed some now-defunct autogeneration code.

  • bindings/scripts/CodeGeneratorJS.pm:
18:42 Changeset [42533] by eric.carlson@apple.com

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

Reviewed by NOBODY (OOPS!).


Fix <rdar://problem/6755724> <audio> and <video> elements can reference local
file:/// URLs from remote in Safari

Tests: http/tests/security/local-video-poster-from-remote.html

http/tests/security/local-video-source-from-remote.html
http/tests/security/local-video-src-from-remote.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::loadResource): Don't pass url to media engine if loader->canLoad() says it should not be loaded.

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

Reviewed by NOBODY (OOPS!).

Fix <rdar://problem/6755724> <audio> and <video> elements can reference local
file:/// URLs from remote in Safari

Test cases to ensure that local 'src', 'poster', and <source> are not loaded.

  • http/tests/security/local-video-poster-from-remote-expected.txt: Added.
  • http/tests/security/local-video-poster-from-remote.html: Added.
  • http/tests/security/local-video-source-from-remote-expected.txt: Added.
  • http/tests/security/local-video-source-from-remote.html: Added.
  • http/tests/security/local-video-src-from-remote-expected.txt: Added.
  • http/tests/security/local-video-src-from-remote.html: Added.
  • http/tests/security/resources/load-media.cgi: Added.
18:15 Changeset [42532] by weinig@apple.com

WebCore:

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

Reviewed by Darin Adler.

Part of <rdar://problem/6150868>
Fix incorrect handling of content that needs to go into the head element
once the head element has been removed.

Test: fast/parser/head-content-after-head-removal.html

  • html/HTMLParser.cpp: (WebCore::HTMLParser::HTMLParser): Remove unneeded initializer of m_head. (WebCore::HTMLParser::handleError): Update since m_head is now a RefPtr. (WebCore::HTMLParser::createHead): Ditto.
  • html/HTMLParser.h: Make m_head a RefPtr.

LayoutTests:

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

Reviewed by Darin Adler.

Part of <rdar://problem/6150868>
Test for incorrect handling of content that needs to go into the head element
once the head element has been removed.

  • fast/parser/head-content-after-head-removal-expected.txt: Added.
  • fast/parser/head-content-after-head-removal.html: Added.
16:11 Changeset [42531] by ggaren@apple.com

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

Used svn merge -r42529:42528 to roll out my last patch because it broke
the build.

  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject): (WebCore::JSDOMGlobalObject::findJSProtectedEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener): (WebCore::JSDOMGlobalObject::jsProtectedEventListeners): (WebCore::JSDOMGlobalObject::jsProtectedInlineEventListeners):
  • bindings/js/JSDOMGlobalObject.h:
15:58 Changeset [42530] by kov@webkit.org

Tagging 1.1.5.

15:54 Changeset [42529] by ggaren@apple.com

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

Reviewed by Sam Weinig.

Nixed some now-dead code related to protected event listeners.

  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
  • bindings/js/JSDOMGlobalObject.h:
15:48 Changeset [42528] by ggaren@apple.com

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

Reviewed by Sam Weinig.

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

Stop using protected event listeners on SVGElementInstance.

  • bindings/js/JSSVGElementInstanceCustom.cpp: (WebCore::JSSVGElementInstance::mark): Mark our event listeners, since they're not protected anymore.

(WebCore::JSSVGElementInstance::addEventListener):
(WebCore::JSSVGElementInstance::removeEventListener): Make unprotected
event listeners, since we mark them now.

  • bindings/scripts/CodeGeneratorJS.pm: Autogenerate event listener invalidation for SVGElementInstance.
  • svg/SVGElementInstance.h: (WebCore::SVGElementInstance::eventListeners): Added an accessor, for the sake of autogenerated code.
  • svg/SVGElementInstance.idl: Removed the ProtectedEventListener attribute from event listener properties. Added a CustomMarkFunction attribute, since we need to mark our event listeners.
15:47 Changeset [42527] by andersca@apple.com

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

Reviewed by Sam Weinig.

  • Speculative fix for <rdar://problem/6781422>

Protect the plug-in instance proxy in case it's deleted while waiting for a reply.

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::wheelEvent):
15:30 Changeset [42526] by sfalken@apple.com

Windows build fix

15:26 Changeset [42525] by mrowe@apple.com

Versioning.

15:25 Changeset [42524] by mrowe@apple.com

New tag.

15:04 Changeset [42523] by aroben@apple.com

Skip another test that sometimes times out on Windows

  • platform/win/Skipped: Added dom/html/level2/html/table29.html.
14:33 Changeset [42522] by xan@webkit.org

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

Fix the build.

Add the yarr headers (and only the headers) to the build, so that
RegExp.cpp can compile. The headers are ifdefed out with yarr
disabled, so we don't need anything else for now.

  • GNUmakefile.am:
14:23 Changeset [42521] by sfalken@apple.com

Add header guards to WebCore forwarding headers.


Speeds up WebCore debug build on Windows by 12% on my system,
since Visual Studio appears to not optimize for standard header
guards in included files.


Rubber stamped by Ada Chan.

13:56 Changeset [42520] by aroben@apple.com

Skip a test that sometimes times out on Windows

  • platform/win/Skipped: Added http/tests/incremental/slow-utf8-text.pl.
13:53 Changeset [42519] by weinig@apple.com

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

Reviewed by Adele Peterson.

Use a template function to generalize the way we create non-caching
JS function getters.

  • bindings/js/JSDOMWindowCustom.cpp:
  • bindings/js/JSDOMWindowCustom.h: (WebCore::nonCachingStaticFunctionGetter): (WebCore::JSDOMWindow::customGetOwnPropertySlot):
13:53 Changeset [42518] by aroben@apple.com

Skip another JavaScriptCore test that sometimes fails on Windows

See Bug 25160: Various ecma/Date tests sometimes fail on Windows (but
not Mac)
<https://bugs.webkit.org/show_bug.cgi?id=25160>

Rubber-stamped by Geoff Garen.

  • Scripts/run-javascriptcore-tests: Skip ecma/Date/15.9.2.2-3.js.
13:46 Changeset [42517] by aroben@apple.com

Skip a sometimes-failing test on Windows

Rubber-stamped by Simon Fraser.

  • platform/win/Skipped: Added transitions/zero-duration-with-non-zero-delay-end.html.
13:46 Changeset [42516] by hausmann@webkit.org

2009-04-14 Benjamin C Meyer <benjamin.meyer@torchmobile.com>

Reviewed by George Staikos.

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

When creating a QNetworkRequest make sure to populate the
CacheLoadControlAttribute with the value set by the ResourceRequest::cachePolicy() so that the cache will be used as WebKit expects.

13:14 Changeset [42515] by hausmann@webkit.org

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

Reviewed by Simon Hausmann.

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

Fix linking against QtWebKit for Symbian and other platforms
where the OS ABI distinguishes between an import or an export situation.

12:53 Changeset [42514] by adele@apple.com

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

Reviewed by Darin.

Initialize WebKitSystemInterface in class methods that could get called before a WebView/WebFrame is set up. This was causing Mail to crash on launch.

  • Misc/WebCache.mm: (+[WebCache initialize]):
  • WebView/WebView.mm: (+[WebView initialize]):
12:25 Changeset [42513] by kevino@webkit.org

Build fix. Move the DerivedSources.make calls into build-wxwebkit so that the FEATURE_DEFINES are parsed properly.

12:06 Changeset [42512] by timothy@apple.com

Fix a world leak caused by opening the Web Inspector. This was
a regression caused by the InspectorController becoming refcounted.

<rdar://problem/6782944>

Reviewed by Darin Adler.

  • bindings/js/ScriptObject.cpp: (WebCore::ScriptGlobalObject::get): Renamed to better match the other functions. (WebCore::ScriptGlobalObject::remove): Added. Deletes the property.
  • bindings/js/ScriptObject.h:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::~InspectorController): Do less work at destruction time since the object lifetime is tied to JS GC. Assert that inspectedPageDestroyed cleared everything needed. (WebCore::InspectorController::inspectedPageDestroyed): Do most of the work that ~InspectorController was doing. (WebCore::InspectorController::scriptObjectReady): Renamed getObject.
11:59 Changeset [42511] by dimich@chromium.org

2009-04-14 Dmitry Titov <dimich@chromium.org>

Fixing ChangeLog.

11:55 Changeset [42510] by dimich@chromium.org

2009-04-14 Antony Sargent <asargent@chromium.org>

Reviewed by Dimitri Glazkov.

This is some cleanup motivated by the crash in http://crbug.com/9775 , which
happens because of calling window.open inside a window.onload handler.

These changes are just part of the fix, along with some asserts to help prevent
breakage on future changes.

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

  • bindings/v8/V8EventListenerList.cpp: (WebCore::V8EventListenerList::add): (WebCore::V8EventListenerList::remove): (WebCore::V8EventListenerList::clear):
  • bindings/v8/V8EventListenerList.h: (WebCore::V8EventListenerList::size):
11:55 Changeset [42509] by dimich@chromium.org

2009-04-14 Evan Martin <evan@chromium.org>

Reviewed by Darin Adler.

Fix a race that can occur between flex and the perl script that parses
its output.

  • css/maketokenizer: Consume all input.
11:55 Changeset [42508] by dimich@chromium.org

2009-04-14 Rohit Rao <rohitrao@google.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=25184
Do not change the text color for selected text in Mac Chromium.

  • rendering/RenderThemeChromiumMac.h: (WebCore::RenderThemeChromiumMac::supportsSelectionForegroundColors): Now returns false, matching the behavior of Safari on Mac.
11:48 Changeset [42507] by justin.garcia@apple.com

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

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=25172
Extra partial layout during the first keypress in an empty block


Determining if a placeholder needs to be removed requires the creation of a VisiblePosition
which was triggering layout before we were finished modifying the DOM for the insert operation.


Find out if we need to remove a placeholder near the start of the operation, and if we do remember
where it's located. Then, later, remove it along with all of the other DOM operations we perform.


Renamed lineBreakExistsAtPosition to lineBreakExistsAtVisiblePosition and added a lineBreakExistsAtPosition
that takes in a Position. In InsertTextCommand, we can use the latter, since we normalize manually.


removePlaceholderAt now takes in a Position that it assumes has already been checked for a placeholder.


No test added as this only effects performance.

  • editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::removePlaceholderAt): (WebCore::CompositeEditCommand::moveParagraphs): (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph): (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
  • editing/CompositeEditCommand.h:
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): (WebCore::DeleteSelectionCommand::doApply):
  • editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::doApply):
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply):
  • editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input):
  • editing/htmlediting.cpp: (WebCore::lineBreakExistsAtVisiblePosition): (WebCore::lineBreakExistsAtPosition):
  • editing/htmlediting.h:
11:35 Changeset [42506] by aroben@apple.com

Remove support for profile-guided optimization on Windows

JavaScriptCore:

Remove support for profile-guided optimization on Windows

Rubber-stamped by Steve Falkenburg.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Removed the Release_PGO configuration. Also let VS re-order the source files list.

WebCore:

Remove support for profile-guided optimization on Windows

Rubber-stamped by Steve Falkenburg.

  • WebCore.vcproj/WebCore.vcproj: Removed the Release_PGO configuration.

WebKit/win:

Remove support for profile-guided optimization on Windows

Rubber-stamped by Steve Falkenburg.

  • WebKit.vcproj/WebKit.vcproj: Removed the Release_PGOInstrument and Release_PGOOptimize configurations.
11:32 Changeset [42505] by xan@webkit.org

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

Unreviewed build fix.

  • GNUmakefile.am:
11:15 Changeset [42504] by dimich@chromium.org

2009-04-14 Dmitry Titov <dimich@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25163
Upstream fix for releasing v8 objects on worker thread termination in Chromium.

  • bindings/v8/V8DOMMap.cpp: (WebCore::domDataList): Now uses Vector instead of HashMap. (WebCore::domDataListMutex): (WebCore::ThreadSpecificDOMData::ThreadSpecificDOMData): remove usage of currentThread(); (WebCore::ThreadSpecificDOMData::~ThreadSpecificDOMData): ditto. (WebCore::NonMainThreadSpecificDOMData::~NonMainThreadSpecificDOMData): moved call to removeAllDOMObjectsInCurrentThread() to ~WorkerScriptController. (WebCore::handleWeakObjectInOwningThread): (WebCore::derefDelayedObjects): (WebCore::removeAllDOMObjectsInCurrentThread): not static anymore.
  • bindings/v8/V8DOMMap.h:
  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::dispose): removed code that avoided dual-dereference of WorkerContext. (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): this ref() is countered in removeAllDOMObjectsInCurrentThread(), when the WorkerContext is removed from the v8 map.
  • bindings/v8/WorkerScriptController.cpp: (WebCore::WorkerScriptController::~WorkerScriptController):
11:08 Changeset [42503] by aroben@apple.com

Fix Bug 25183: Split up WebCore.vcproj's settings into vsprops files

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

WebCore.vcproj now uses a set of .vsprops files to store most of its
settings.

Reviewed by Darin Adler.

  • WebCore.vcproj/WebCore.vcproj: Moved settings from here into the new .vsprops files.
  • WebCore.vcproj/WebCoreCFNetwork.vsprops: Added. Contains settings for ports that build against CFNetwork.
  • WebCore.vcproj/WebCoreCG.vsprops: Added. Contains settings for ports that build against CoreGraphics.
  • WebCore.vcproj/WebCoreCURL.vsprops: Added. Contains settings for ports that build against libcurl.
  • WebCore.vcproj/WebCoreCairo.vsprops: Added. Contains settings for ports that build against Cairo.
  • WebCore.vcproj/WebCoreCommon.vsprops: Added. Contains settings shared by all ports.
  • WebCore.vcproj/WebCoreMediaQT.vsprops: Added. Contains settings for ports that use QTMovieWin to implement the MediaPlayerPrivate interface.
  • WebCore.vcproj/WebCorePthreads.vsprops: Added. Contains settings for ports that build against pthreads.
10:56 Changeset [42502] by ap@webkit.org

Reviewed by Darin Adler.

http/tests/xmlhttprequest/basic-auth.html fails on Tiger.

Turns out that NSURLCredentialPersistenceNone doesn't work on Tiger, so we have to use
session persistence.

  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Route the credential through receivedCredential(), ensuring that the Tiger-specific need to use session credentials is honored. (WebCore::ResourceHandle::receivedCredential): On Tiger, change PersistenceNone to PersistenceForSession, because the former doesn't work.
10:40 Changeset [42501] by adele@apple.com

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

Reviewed by Darin Adler.

Fix for <rdar://problem/6703873> Triple-click quoted line and type Return creates an extra quoted blank line

Test: editing/inserting/6703873.html

  • editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply): If the startNode's original parent is now empty, we can remove it. Its already been cloned and copied with the startNode, so we only need to keep it around if it actually holds some original content, otherwise it will look like an extra empty container in the document.
09:52 Changeset [42500] by kov@webkit.org

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

Unreviewed. Update gtk-doc control and base sgml files for 1.1.5.

  • docs/webkitgtk-docs.sgml:
  • docs/webkitgtk-sections.txt:
09:44 Changeset [42499] by xan@webkit.org

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

  • NEWS: updated for 1.1.5 release.
09:14 Changeset [42498] by xan@webkit.org

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

Unreviewed version bump in preparation for 1.1.5 release.

  • configure.ac:
08:56 Changeset [42497] by xan@webkit.org

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

Reviewed by Holger Freyther.

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

Add a proper implementation of AtkText::get_text and
AtkText::get_character_count, which takes into account non
TextControl text. With this the 'Text' field in Accerciser's
Interface Viewer is filled correctly.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp:
08:56 Changeset [42496] by xan@webkit.org

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

Reviewed by Holger Freyther.

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

Remove some dead code and g_return_if_fail from static functions.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp:
08:56 Changeset [42495] by xan@webkit.org

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

Reviewed by Holger Freyther.

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

Also implement text interface for StaticTextRole, which covers
most of the text in web pages.

  • page/gtk/AccessibilityObjectWrapperAtk.cpp:
08:07 Changeset [42494] by hausmann@webkit.org

2009-04-14 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Tor Arne Vestbø.

Rename QWebElement::setHtml and html to setXml and toXml respectivily.

Also add a mean to define the scope (inner or other).

07:53 Changeset [42493] by aroben@apple.com

Land updated Windows results for two tests changed by r42471

Rubber-stamped by Anders Carlsson.

  • platform/win/css1/text_properties/text_transform-expected.txt: Copied from LayoutTests/platform/mac-leopard/css1/text_properties/text_transform-expected.txt.
  • platform/win/css2.1/t1605-c545-txttrans-00-b-ag-expected.txt: Copied from LayoutTests/platform/mac-leopard/css2.1/t1605-c545-txttrans-00-b-ag-expected.txt.
07:53 Changeset [42492] by aroben@apple.com

Small run-javascriptcore-tests cleanup

Reviewed by Cameron Zwarich.

  • Scripts/run-javascriptcore-tests: Move the list of tests to skip into its own variable, annotated with the bugs that are filed about the various failures.
07:52 Changeset [42491] by aroben@apple.com

Skip another sometimes-failing ecma/Date test on Windows

These failing tests are covered by Bug 25160: Various ecma/Date tests
sometimes fail on Windows (but not Mac)
<https://bugs.webkit.org/show_bug.cgi?id=25160>

Reviewed by Cameron Zwarich.

  • Scripts/run-javascriptcore-tests: Added ecma/Date/15.9.2.1.js to the list of tests to skip.
07:37 QtWebKitTodo edited by hausmann@webkit.org
(diff)
07:30 QtWebKitJournal edited by hausmann@webkit.org
(diff)
07:08 Changeset [42490] by hausmann@webkit.org

2009-04-14 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Tor Arne Vestbø.

Rename QWebElement::setText() and text() to ::setPlainText and
::toPlainText, respectively.

06:31 QtWebKitTodo edited by hausmann@webkit.org
(diff)
06:17 QtWebKitTodo edited by hausmann@webkit.org
(diff)
06:12 QtWebKitTodo edited by hausmann@webkit.org
(diff)
05:15 QtWebKitTodo edited by hausmann@webkit.org
(diff)
05:14 QtWebKitTodo edited by hausmann@webkit.org
(diff)
04:55 QtWebKitGitInstructions edited by hausmann@webkit.org
(diff)
04:54 QtWebKitGitInstructions edited by hausmann@webkit.org
(diff)
04:43 QtWebKitTodo edited by hausmann@webkit.org
(diff)
04:30 QtWebKitJournal edited by hausmann@webkit.org
(diff)
04:30 Changeset [42489] by jmalonzo@webkit.org

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

Reviewed by Holger Freyther.

[Gtk] disable soup auth dialog when running DRT
https://bugs.webkit.org/show_bug.cgi?id=24598

Disable soup's auth dialog when running the tests.

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (setDefaultsToConsistentStateValuesForTesting):
  • GNUmakefile.am:

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

Reviewed by Holger Freyther.

[Gtk] disable soup auth dialog when running DRT
https://bugs.webkit.org/show_bug.cgi?id=24598

Enable http/tests/xmlhttprequest/failed-auth.html test. We should
be able to run this test in non-interactive mode

  • platform/gtk/Skipped:
04:16 Changeset [42488] by jmalonzo@webkit.org

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

Gtk build fix when building minidom. Not reviewed.

Use C-style comment instead of C++ style since autotools builds
minidom using gcc and not g++.

  • wtf/Platform.h:
03:19 Changeset [42487] by mrowe@apple.com

Update WebKitSystemInterface so that the Tiger portion supports PowerPC.

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
01:41 Changeset [42486] by ap@webkit.org

Another Windows build fix.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::WebCoreSynchronousLoader::load):
01:24 Changeset [42485] by ap@webkit.org

Windows build fix.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::WebCoreSynchronousLoader::willSendRequest): (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
01:16 Changeset [42484] by ap@webkit.org

Removed mentions of tests from ChangeLog - I'll land those once OS-level support for this feature is in.

01:11 Changeset [42483] by ap@webkit.org

Reviewed by Sam Weinig.

<rdar://problem/6698851> Implement XMLHttpRequest withCredentials attribute

Tests: http/tests/xmlhttprequest/cross-origin-authorization.html

http/tests/xmlhttprequest/cross-origin-no-authorization.html

  • WebCore.xcodeproj/project.pbxproj: Made ThreadableLoader.h private, as enum definitions from it are now used in otehr private headers.
  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequest.idl: Added withCredentials attribute. When it is false (default), neither credentials nor cookies are sent with cross origin requests, When it is true, those are sent, but the server needs to allow handling results via Access-Control-Allow-Credentials header. It was always possible to send a cross-site request with credentials via IFRAME or IMG, so this just adds a way to read results, as long as the server reports that it's allowed. Having the default set to false ensures that requests won't fail unexpectedly because of stored credentials and cookies for other resources in the target protection space.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::loadRequestSynchronously): Allow stored credentials for same origin requests, and for cross origin ones that have withCredentials attribute set. Such code already existed for cookies (but it's simpler, because we could just set a ResourceRequest flag). (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
  • platform/network/ResourceHandle.h: Added willSendRequest() - just like for other callbacks, is is easier to have code in the class. Also, loadResourceSynchronously() now takes a StoredCredentials option, matching async case.
  • platform/network/ResourceHandleClient.h: (WebCore::ResourceHandleClient::receivedCredential): Removed. This method could never be called, and no client used it. (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential): Ditto.
  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): Split username and password out of request URL. We want to always get a callback for credentials to manage them in WebCore, so network back-end shouldn't see them too early.
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::removeCredentials):
  • platform/network/ResourceRequestBase.h: Added a removeCredentials() method that removes login and password parts from request URL.
  • platform/network/mac/ResourceHandleMac.mm: (WebCoreCredentialStorage): Added a simple storage class for per-session credentials. (WebCore::ResourceHandle::loadResourceSynchronously): Pass allowStoredCredentials through. (WebCore::ResourceHandle::willSendRequest): On a redirect, credentials should be replaced. (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Try credentials from the URL and per-session credentials. Code was partially moved from Obj-C callback. (WebCore::ResourceHandle::receivedCredential): Intercept per-session credentials and store them in WebCore storage. (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Don't store the redirected URL - we only needed credentials, which are now stored separately. (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]): Removed code that was setting credentials from URL. First, the code is now in ResourceHandle, and also, it wasn't actually needed in Leopard release before this patch, see <rdar://problem/5298142>. (-[WebCoreSynchronousLoader dealloc]): Release credentials. Note that unlike ResourceHandle, this class still needs to track URL for checking whether a redirect is allowed. This is not a great solution, and we should unify client code to use the same checks in sync and async cases. (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Just like in async case, put credentials aside to ensure that network back-end asks for them. (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Use credentials from URL, or from WebCore storage. (-[WebCoreSynchronousLoader connectionShouldUseCredentialStorage:]): Don't use stored credentials when not allowed to. (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]): Put credentials aside to ensure that network back-end asks for them.
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::WebCoreCredentialStorage::set): (WebCore::WebCoreCredentialStorage::get): (WebCore::willSendRequest): (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::willSendRequest): (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): (WebCore::ResourceHandle::receivedCredential): (WebCore::ResourceHandle::loadResourceSynchronously): (WebCore::WebCoreSynchronousLoader::willSendRequest): (WebCore::WebCoreSynchronousLoader::didReceiveChallenge): (WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage): (WebCore::WebCoreSynchronousLoader::load): Same changes as in Mac case.
  • platform/network/curl/ResourceHandleCurl.cpp: (WebCore::ResourceHandle::loadResourceSynchronously):
  • platform/network/qt/ResourceHandleQt.cpp: (WebCore::ResourceHandle::loadResourceSynchronously):
  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandle::loadResourceSynchronously): Trying not to break the build.
  • dom/XMLTokenizerLibxml2.cpp: (WebCore::openFunc):
  • xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc): Unconditionally allow stored credentials for these, as they only support same origin loads.
  • workers/WorkerContext.cpp: (WebCore::WorkerContext::importScripts): WorkerContext.importScripts() can be cross-origin, but sending credentials with it is no worse than sending them with <script src=...>, so this is also unconditionally allowed.
  • loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Pass through storedCredentials. (WebCore::DocumentThreadableLoader::create): Ditto. (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Save storedCredentials and sameOrigin flags foruse in callbacks. (WebCore::DocumentThreadableLoader::willSendRequest): Assert that loaders aren't all confused. (WebCore::DocumentThreadableLoader::didSendData): Ditto. (WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto. (WebCore::DocumentThreadableLoader::didReceiveData): Ditto. (WebCore::DocumentThreadableLoader::didFinishLoading): Ditto. (WebCore::DocumentThreadableLoader::didFail): Ditto. (WebCore::DocumentThreadableLoader::getShouldUseCredentialStorage): Don't use credential storage if that's not allowed by the code that invoked DocumentThreadableLoader. (WebCore::DocumentThreadableLoader::didReceiveAuthenticationChallenge): Simulate a failure and cancel the request if we are about to ask the user for credentials for a cross-origin request, which is forbidden by CORS (and would have been very confusing if allowed). (WebCore::DocumentThreadableLoader::receivedCancellation): Assert that loaders aren't all confused.
  • loader/DocumentThreadableLoader.h: Updated for the new flags (storedCredentials and sameOrigin) that affect the loader. Eventually, we need to move all CORS logic from XHR here.
  • loader/ThreadableLoader.h: (StoredCredentials): Added another flag that affects loader behavior. We should combine all of these into a structure, and use it for sync requests, too.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously):
  • loader/FrameLoader.h:
  • loader/ThreadableLoader.cpp: (WebCore::ThreadableLoader::create): (WebCore::ThreadableLoader::loadResourceSynchronously):
  • loader/WorkerThreadableLoader.cpp: (WebCore::WorkerThreadableLoader::WorkerThreadableLoader): (WebCore::WorkerThreadableLoader::loadResourceSynchronously): (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
  • loader/WorkerThreadableLoader.h: (WebCore::WorkerThreadableLoader::create): Pass through storedCredentials.
00:19 Changeset [42482] by barraclough@apple.com

speculative 'doze build fix

00:06 Changeset [42481] by barraclough@apple.com

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

Reviewed by Cap'n Geoff Garen.

Yarr!
(Yet another regex runtime).

Currently disabled by default since the interpreter, whilst awesomely
functional, has not been optimized and is likely slower than PCRE, and
the JIT, whilst faster than WREC, is presently incomplete and does not
fallback to using an interpreter for the cases it cannot handle.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::move): (JSC::MacroAssemblerX86Common::swap): (JSC::MacroAssemblerX86Common::signExtend32ToPtr): (JSC::MacroAssemblerX86Common::zeroExtend32ToPtr): (JSC::MacroAssemblerX86Common::branch32): (JSC::MacroAssemblerX86Common::branch16):
  • assembler/X86Assembler.h: (JSC::X86Assembler::cmpw_im): (JSC::X86Assembler::testw_rr): (JSC::X86Assembler::X86InstructionFormatter::immediate16):
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp): (JSC::RegExp::~RegExp): (JSC::RegExp::create): (JSC::RegExp::compile): (JSC::RegExp::match):
  • runtime/RegExp.h:
  • wtf/Platform.h:
  • yarr: Added.
  • yarr/RegexCompiler.cpp: Added. (JSC::Yarr::CharacterClassConstructor::CharacterClassConstructor): (JSC::Yarr::CharacterClassConstructor::reset): (JSC::Yarr::CharacterClassConstructor::append): (JSC::Yarr::CharacterClassConstructor::putChar): (JSC::Yarr::CharacterClassConstructor::isUnicodeUpper): (JSC::Yarr::CharacterClassConstructor::isUnicodeLower): (JSC::Yarr::CharacterClassConstructor::putRange): (JSC::Yarr::CharacterClassConstructor::charClass): (JSC::Yarr::CharacterClassConstructor::addSorted): (JSC::Yarr::CharacterClassConstructor::addSortedRange): (JSC::Yarr::newlineCreate): (JSC::Yarr::digitsCreate): (JSC::Yarr::spacesCreate): (JSC::Yarr::wordcharCreate): (JSC::Yarr::nondigitsCreate): (JSC::Yarr::nonspacesCreate): (JSC::Yarr::nonwordcharCreate): (JSC::Yarr::RegexPatternConstructor::RegexPatternConstructor): (JSC::Yarr::RegexPatternConstructor::~RegexPatternConstructor): (JSC::Yarr::RegexPatternConstructor::reset): (JSC::Yarr::RegexPatternConstructor::assertionBOL): (JSC::Yarr::RegexPatternConstructor::assertionEOL): (JSC::Yarr::RegexPatternConstructor::assertionWordBoundary): (JSC::Yarr::RegexPatternConstructor::atomPatternCharacter): (JSC::Yarr::RegexPatternConstructor::atomBuiltInCharacterClass): (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBegin): (JSC::Yarr::RegexPatternConstructor::atomCharacterClassAtom): (JSC::Yarr::RegexPatternConstructor::atomCharacterClassRange): (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBuiltIn): (JSC::Yarr::RegexPatternConstructor::atomCharacterClassEnd): (JSC::Yarr::RegexPatternConstructor::atomParenthesesSubpatternBegin): (JSC::Yarr::RegexPatternConstructor::atomParentheticalAssertionBegin): (JSC::Yarr::RegexPatternConstructor::atomParenthesesEnd): (JSC::Yarr::RegexPatternConstructor::atomBackReference): (JSC::Yarr::RegexPatternConstructor::copyDisjunction): (JSC::Yarr::RegexPatternConstructor::copyTerm): (JSC::Yarr::RegexPatternConstructor::quantifyAtom): (JSC::Yarr::RegexPatternConstructor::disjunction): (JSC::Yarr::RegexPatternConstructor::regexBegin): (JSC::Yarr::RegexPatternConstructor::regexEnd): (JSC::Yarr::RegexPatternConstructor::regexError): (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets): (JSC::Yarr::RegexPatternConstructor::setupDisjunctionOffsets): (JSC::Yarr::RegexPatternConstructor::setupOffsets): (JSC::Yarr::compileRegex):
  • yarr/RegexCompiler.h: Added.
  • yarr/RegexInterpreter.cpp: Added. (JSC::Yarr::Interpreter::appendParenthesesDisjunctionContext): (JSC::Yarr::Interpreter::popParenthesesDisjunctionContext): (JSC::Yarr::Interpreter::DisjunctionContext::DisjunctionContext): (JSC::Yarr::Interpreter::DisjunctionContext::operator new): (JSC::Yarr::Interpreter::allocDisjunctionContext): (JSC::Yarr::Interpreter::freeDisjunctionContext): (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::ParenthesesDisjunctionContext): (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::operator new): (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::restoreOutput): (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::getDisjunctionContext): (JSC::Yarr::Interpreter::allocParenthesesDisjunctionContext): (JSC::Yarr::Interpreter::freeParenthesesDisjunctionContext): (JSC::Yarr::Interpreter::InputStream::InputStream): (JSC::Yarr::Interpreter::InputStream::next): (JSC::Yarr::Interpreter::InputStream::rewind): (JSC::Yarr::Interpreter::InputStream::read): (JSC::Yarr::Interpreter::InputStream::readChecked): (JSC::Yarr::Interpreter::InputStream::reread): (JSC::Yarr::Interpreter::InputStream::prev): (JSC::Yarr::Interpreter::InputStream::getPos): (JSC::Yarr::Interpreter::InputStream::setPos): (JSC::Yarr::Interpreter::InputStream::atStart): (JSC::Yarr::Interpreter::InputStream::atEnd): (JSC::Yarr::Interpreter::InputStream::checkInput): (JSC::Yarr::Interpreter::InputStream::uncheckInput): (JSC::Yarr::Interpreter::testCharacterClass): (JSC::Yarr::Interpreter::tryConsumeCharacter): (JSC::Yarr::Interpreter::checkCharacter): (JSC::Yarr::Interpreter::tryConsumeCharacterClass): (JSC::Yarr::Interpreter::checkCharacterClass): (JSC::Yarr::Interpreter::tryConsumeBackReference): (JSC::Yarr::Interpreter::matchAssertionBOL): (JSC::Yarr::Interpreter::matchAssertionEOL): (JSC::Yarr::Interpreter::matchAssertionWordBoundary): (JSC::Yarr::Interpreter::matchPatternCharacter): (JSC::Yarr::Interpreter::backtrackPatternCharacter): (JSC::Yarr::Interpreter::matchCharacterClass): (JSC::Yarr::Interpreter::backtrackCharacterClass): (JSC::Yarr::Interpreter::matchBackReference): (JSC::Yarr::Interpreter::backtrackBackReference): (JSC::Yarr::Interpreter::recordParenthesesMatch): (JSC::Yarr::Interpreter::resetMatches): (JSC::Yarr::Interpreter::resetAssertionMatches): (JSC::Yarr::Interpreter::parenthesesDoBacktrack): (JSC::Yarr::Interpreter::matchParenthesesOnceBegin): (JSC::Yarr::Interpreter::matchParenthesesOnceEnd): (JSC::Yarr::Interpreter::backtrackParenthesesOnceBegin): (JSC::Yarr::Interpreter::backtrackParenthesesOnceEnd): (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceBegin): (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceEnd): (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceBegin): (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceEnd): (JSC::Yarr::Interpreter::matchParentheses): (JSC::Yarr::Interpreter::backtrackParentheses): (JSC::Yarr::Interpreter::matchTerm): (JSC::Yarr::Interpreter::backtrackTerm): (JSC::Yarr::Interpreter::matchAlternative): (JSC::Yarr::Interpreter::matchDisjunction): (JSC::Yarr::Interpreter::matchNonZeroDisjunction): (JSC::Yarr::Interpreter::interpret): (JSC::Yarr::Interpreter::Interpreter): (JSC::Yarr::ByteCompiler::ParenthesesStackEntry::ParenthesesStackEntry): (JSC::Yarr::ByteCompiler::ByteCompiler): (JSC::Yarr::ByteCompiler::compile): (JSC::Yarr::ByteCompiler::checkInput): (JSC::Yarr::ByteCompiler::assertionBOL): (JSC::Yarr::ByteCompiler::assertionEOL): (JSC::Yarr::ByteCompiler::assertionWordBoundary): (JSC::Yarr::ByteCompiler::atomPatternCharacter): (JSC::Yarr::ByteCompiler::atomCharacterClass): (JSC::Yarr::ByteCompiler::atomBackReference): (JSC::Yarr::ByteCompiler::atomParenthesesSubpatternBegin): (JSC::Yarr::ByteCompiler::atomParentheticalAssertionBegin): (JSC::Yarr::ByteCompiler::popParenthesesStack): (JSC::Yarr::ByteCompiler::dumpDisjunction): (JSC::Yarr::ByteCompiler::closeAlternative): (JSC::Yarr::ByteCompiler::atomParenthesesEnd): (JSC::Yarr::ByteCompiler::regexBegin): (JSC::Yarr::ByteCompiler::regexEnd): (JSC::Yarr::ByteCompiler::alterantiveDisjunction): (JSC::Yarr::ByteCompiler::emitDisjunction): (JSC::Yarr::byteCompileRegex): (JSC::Yarr::interpretRegex):
  • yarr/RegexInterpreter.h: Added. (JSC::Yarr::ByteTerm::): (JSC::Yarr::ByteTerm::ByteTerm): (JSC::Yarr::ByteTerm::BOL): (JSC::Yarr::ByteTerm::CheckInput): (JSC::Yarr::ByteTerm::EOL): (JSC::Yarr::ByteTerm::WordBoundary): (JSC::Yarr::ByteTerm::BackReference): (JSC::Yarr::ByteTerm::AlternativeBegin): (JSC::Yarr::ByteTerm::AlternativeDisjunction): (JSC::Yarr::ByteTerm::AlternativeEnd): (JSC::Yarr::ByteTerm::PatternEnd): (JSC::Yarr::ByteTerm::invert): (JSC::Yarr::ByteTerm::capture): (JSC::Yarr::ByteDisjunction::ByteDisjunction): (JSC::Yarr::BytecodePattern::BytecodePattern): (JSC::Yarr::BytecodePattern::~BytecodePattern):
  • yarr/RegexJIT.cpp: Added. (JSC::Yarr::RegexGenerator::optimizeAlternative): (JSC::Yarr::RegexGenerator::matchCharacterClassRange): (JSC::Yarr::RegexGenerator::matchCharacterClass): (JSC::Yarr::RegexGenerator::jumpIfNoAvailableInput): (JSC::Yarr::RegexGenerator::jumpIfAvailableInput): (JSC::Yarr::RegexGenerator::checkInput): (JSC::Yarr::RegexGenerator::atEndOfInput): (JSC::Yarr::RegexGenerator::notAtEndOfInput): (JSC::Yarr::RegexGenerator::jumpIfCharEquals): (JSC::Yarr::RegexGenerator::jumpIfCharNotEquals): (JSC::Yarr::RegexGenerator::readCharacter): (JSC::Yarr::RegexGenerator::storeToFrame): (JSC::Yarr::RegexGenerator::loadFromFrame): (JSC::Yarr::RegexGenerator::TermGenerationState::TermGenerationState): (JSC::Yarr::RegexGenerator::TermGenerationState::resetAlternative): (JSC::Yarr::RegexGenerator::TermGenerationState::alternativeValid): (JSC::Yarr::RegexGenerator::TermGenerationState::nextAlternative): (JSC::Yarr::RegexGenerator::TermGenerationState::alternative): (JSC::Yarr::RegexGenerator::TermGenerationState::resetTerm): (JSC::Yarr::RegexGenerator::TermGenerationState::termValid): (JSC::Yarr::RegexGenerator::TermGenerationState::nextTerm): (JSC::Yarr::RegexGenerator::TermGenerationState::term): (JSC::Yarr::RegexGenerator::TermGenerationState::lookaheadTerm): (JSC::Yarr::RegexGenerator::TermGenerationState::isSinglePatternCharacterLookaheadTerm): (JSC::Yarr::RegexGenerator::TermGenerationState::inputOffset): (JSC::Yarr::RegexGenerator::TermGenerationState::jumpToBacktrack): (JSC::Yarr::RegexGenerator::TermGenerationState::setBacktrackGenerated): (JSC::Yarr::RegexGenerator::jumpToBacktrackCheckEmitPending): (JSC::Yarr::RegexGenerator::genertateAssertionBOL): (JSC::Yarr::RegexGenerator::genertateAssertionEOL): (JSC::Yarr::RegexGenerator::matchAssertionWordchar): (JSC::Yarr::RegexGenerator::genertateAssertionWordBoundary): (JSC::Yarr::RegexGenerator::genertatePatternCharacterSingle): (JSC::Yarr::RegexGenerator::genertatePatternCharacterPair): (JSC::Yarr::RegexGenerator::genertatePatternCharacterFixed): (JSC::Yarr::RegexGenerator::genertatePatternCharacterGreedy): (JSC::Yarr::RegexGenerator::genertatePatternCharacterNonGreedy): (JSC::Yarr::RegexGenerator::genertateCharacterClassSingle): (JSC::Yarr::RegexGenerator::genertateCharacterClassFixed): (JSC::Yarr::RegexGenerator::genertateCharacterClassGreedy): (JSC::Yarr::RegexGenerator::genertateCharacterClassNonGreedy): (JSC::Yarr::RegexGenerator::generateParenthesesSingleDisjunctionOneAlternative): (JSC::Yarr::RegexGenerator::generateParenthesesSingle): (JSC::Yarr::RegexGenerator::generateTerm): (JSC::Yarr::RegexGenerator::generateDisjunction): (JSC::Yarr::RegexGenerator::RegexGenerator): (JSC::Yarr::RegexGenerator::generate): (JSC::Yarr::jitCompileRegex): (JSC::Yarr::executeRegex):
  • yarr/RegexJIT.h: Added. (JSC::Yarr::RegexCodeBlock::RegexCodeBlock):
  • yarr/RegexParser.h: Added. (JSC::Yarr::): (JSC::Yarr::Parser::): (JSC::Yarr::Parser::CharacterClassParserDelegate::CharacterClassParserDelegate): (JSC::Yarr::Parser::CharacterClassParserDelegate::begin): (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacterUnescaped): (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacter): (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBuiltInCharacterClass): (JSC::Yarr::Parser::CharacterClassParserDelegate::end): (JSC::Yarr::Parser::CharacterClassParserDelegate::assertionWordBoundary): (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBackReference): (JSC::Yarr::Parser::CharacterClassParserDelegate::flush): (JSC::Yarr::Parser::CharacterClassParserDelegate::): (JSC::Yarr::Parser::Parser): (JSC::Yarr::Parser::parseEscape): (JSC::Yarr::Parser::parseAtomEscape): (JSC::Yarr::Parser::parseCharacterClassEscape): (JSC::Yarr::Parser::parseCharacterClass): (JSC::Yarr::Parser::parseParenthesesBegin): (JSC::Yarr::Parser::parseParenthesesEnd): (JSC::Yarr::Parser::parseQuantifier): (JSC::Yarr::Parser::parseTokens): (JSC::Yarr::Parser::parse): (JSC::Yarr::Parser::saveState): (JSC::Yarr::Parser::restoreState): (JSC::Yarr::Parser::atEndOfPattern): (JSC::Yarr::Parser::peek): (JSC::Yarr::Parser::peekIsDigit): (JSC::Yarr::Parser::peekDigit): (JSC::Yarr::Parser::consume): (JSC::Yarr::Parser::consumeDigit): (JSC::Yarr::Parser::consumeNumber): (JSC::Yarr::Parser::consumeOctal): (JSC::Yarr::Parser::tryConsume): (JSC::Yarr::Parser::tryConsumeHex): (JSC::Yarr::parse):
  • yarr/RegexPattern.h: Added. (JSC::Yarr::CharacterRange::CharacterRange): (JSC::Yarr::): (JSC::Yarr::PatternTerm::): (JSC::Yarr::PatternTerm::PatternTerm): (JSC::Yarr::PatternTerm::BOL): (JSC::Yarr::PatternTerm::EOL): (JSC::Yarr::PatternTerm::WordBoundary): (JSC::Yarr::PatternTerm::invert): (JSC::Yarr::PatternTerm::capture): (JSC::Yarr::PatternTerm::quantify): (JSC::Yarr::PatternAlternative::PatternAlternative): (JSC::Yarr::PatternAlternative::lastTerm): (JSC::Yarr::PatternAlternative::removeLastTerm): (JSC::Yarr::PatternDisjunction::PatternDisjunction): (JSC::Yarr::PatternDisjunction::~PatternDisjunction): (JSC::Yarr::PatternDisjunction::addNewAlternative): (JSC::Yarr::RegexPattern::RegexPattern): (JSC::Yarr::RegexPattern::~RegexPattern): (JSC::Yarr::RegexPattern::reset): (JSC::Yarr::RegexPattern::containsIllegalBackReference): (JSC::Yarr::RegexPattern::newlineCharacterClass): (JSC::Yarr::RegexPattern::digitsCharacterClass): (JSC::Yarr::RegexPattern::spacesCharacterClass): (JSC::Yarr::RegexPattern::wordcharCharacterClass): (JSC::Yarr::RegexPattern::nondigitsCharacterClass): (JSC::Yarr::RegexPattern::nonspacesCharacterClass): (JSC::Yarr::RegexPattern::nonwordcharCharacterClass):

04/13/09:

23:39 Changeset [42480] by oliver@apple.com

Missed code from last patch

23:33 Changeset [42479] by hyatt@apple.com

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

Reviewed by Cameron Zwarich.

Remove an outdated comment in ScrollView.h

  • platform/ScrollView.h:
23:24 Changeset [42478] by oliver@apple.com

BUG 25171: It should be possible to manually set the name of an anonymous function
<https://bugs.webkit.org/show_bug.cgi?id=25171>

Submitted by Francisco Tolmasky <francisco@280north.com>
Reviewed by Oliver Hunt.

This change adds the displayName property to functions, which when set overrides the
normal name when appearing in the console.

22:30 Moving to Git edited by jhaitas@gmail.com
trivial fix incorrect 'there' replaced with correct 'their' (diff)
22:03 Changeset [42477] by eric.carlson@apple.com

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

Reviewed by Mark Rowe.

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

QTTrack's -media method always return NULL in 64-bit QTKit, so
MediaPlayerPrivate::disableUnsupportedTracks should use
QTTrackMediaTypeAttribute to get a track's type.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
21:52 Changeset [42476] by ggaren@apple.com

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

Reviewed by Cameron Zwarich.

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

Stop using protected event listeners on the window object.

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::mark): Mark our event listeners, since they're no longer protected.

(WebCore::JSDOMWindow::addEventListener):
(WebCore::JSDOMWindow::removeEventListener): Create unprotected event
listeners, since we mark them now.

  • bindings/js/JSEventListener.h: Made some functions public so DOMWindow could call them.
  • bindings/js/JSNodeCustom.cpp: Moved markEventListeners to a header, so it could be shared.
  • bindings/scripts/CodeGeneratorJS.pm: Generate event listener marking and invalidating code for the DOMWindow.
  • dom/RegisteredEventListener.h: (WebCore::markEventListeners): (WebCore::invalidateEventListeners): Added helper functions.
  • page/DOMWindow.idl: Make the window's event listener attributes not protected.
21:13 Changeset [42475] by eric.carlson@apple.com

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

Reviewed by Mark Rowe.

OS X standalone media documents should not switch from <video> to <embed> when
QTKit load state is QTMovieLoadStateLoading as that happens frequently when a loading
with a slow network connection or when a movie is not saved fast-start.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates): Don't open movie with plug-in when QTKit's loadstate is QTMovieLoadStateLoading, wait until it drops below QTMovieLoadStateError.
18:03 Changeset [42474] by dimich@chromium.org

2009-04-13 Dmitry Titov <dimich@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24453
REGRESSION: If setTimeout is called on a iframe's window, the DOM changes to
the main document that timer callback makes are not flushed.

  • bindings/js/ScheduledAction.cpp: (WebCore::ScheduledAction::execute): Use Document::updateStyleForAllDocuments() instead of document->updateStyleIfNeeded() since timers may affect documents other then their own.
17:21 Changeset [42473] by kov@webkit.org

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

Reviewed by David Hyatt.

Check document for nullity to avoid crashing on GTK+, when
creating the WebView.

  • page/FrameView.cpp: (WebCore::FrameView::needsLayout):
17:19 Changeset [42472] by adachan@apple.com

Forgot to capitalize the "US".

  • platform/text/win/TextBreakIteratorInternalICUWin.cpp: (WebCore::currentTextBreakLocaleID):
17:10 Changeset [42471] by adachan@apple.com

<rdar://problem/6564956> URL field double-click selects entire domain, rather than single word or entire URL
Revert back to the old word breaking behavior by using en_US_POSIX locale.

Reviewed by Steve Falkenburg.

  • platform/text/win/TextBreakIteratorInternalICUWin.cpp: (WebCore::currentTextBreakLocaleID):
16:42 Changeset [42470] by kdecker@apple.com

Reviewed by Darin.

<rdar://problem/6784955> REGRESSION: closing a tab containing a PDF causes world leaks


Simplify the _trackFirstResponder method by just caching the value instead of retaining
a Cocoa object.


  • WebView/WebPDFView.h: Eliminated trackedFirstResponder object and replaced it with a firstResponderIsPDFDocumentView boolean.
  • WebView/WebPDFView.mm: (-[WebPDFView dealloc]): Removed no longer necessary ASSERT. (-[WebPDFView viewWillMoveToWindow:]): Removed call to release and nil-out trackedFirstResponder, which no longer exists. In the new code all we do now is set firstResponderIsPDFDocumentView to NO. (-[WebPDFView _trackFirstResponder]): Rewrote this method to just cache the value instead of retaining an object.
15:36 Changeset [42469] by darin@apple.com

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

Reviewed by Mark Rowe.

  • Scripts/check-for-exit-time-destructors: Add ERROR: and WARNING: prefixes to make these scripts work better with the build window in new versions of Xcode.
  • Scripts/check-for-global-initializers: Ditto.
  • Scripts/check-for-weak-vtables: Ditto.
15:18 Changeset [42468] by darin@apple.com

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

Reviewed by Dan Bernstein.

  • platform/cf/BinaryPropertyList.cpp: Added comment.
  • platform/cf/BinaryPropertyList.h: Fixed mistakes in comments.
15:16 Changeset [42467] by darin@apple.com

WebCore:

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

Reviewed by Dan Bernstein.

Bug 25158: hit testing doesn't work right in some cases involving anonymous blocks
https://bugs.webkit.org/show_bug.cgi?id=25158
rdar://problem/6769693

Test: editing/selection/click-after-nested-block.html

  • rendering/RenderBlock.cpp: (WebCore::isChildHitTestCandidate): Added. Helper so the two loops in positionForPoint can share code. (WebCore::RenderBlock::positionForPoint): Removed unneeded special case for first child box. Changed special case for last child box to propertly handle the various types of child box that are not hit test candidates (the same ones already handled by the hit test loop below), adding in a loop so we find the last candidate.

LayoutTests:

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

Reviewed by Dan Bernstein.

Bug 25158: hit testing doesn't work right in some cases involving anonymous blocks
https://bugs.webkit.org/show_bug.cgi?id=25158
rdar://problem/6769693

  • editing/selection/click-after-nested-block-expected.txt: Added.
  • editing/selection/click-after-nested-block.html: Added.
  • fast/events/pointer-events-expected.txt: Updated since this is now a plain-text test.
  • fast/events/pointer-events.html: Changed this to a plain-text test, because the old results reflected a difference in hit testing behavior that this test was not intended to exercise and it's better to have the test be more cross-platform. Also removed unneeded use of waitUntilDone.
  • fast/js/finally-codegen-failure.html: Replaced with standard wrapper created by running the make-js-test-wrappers script. If we want to include type and charset attributes in the script elements, we can change make-js-test-wrappers to do that for all tests at some point.
  • fast/js/function-apply-aliased.html: Ditto.
  • fast/js/function-call-aliased.html: Ditto.
14:44 Changeset [42466] by ggaren@apple.com

JavaScriptCore:

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

Reviewed by Sam Weinig.

Disabled another JavaScriptCore test because it fails on Windows but
not Mac, so it makes the bots red.

  • tests/mozilla/expected.html:

WebKitTools:

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

Reviewed by Sam Weinig.

Disabled another JavaScriptCore test because it fails on Windows but
not Mac, so it makes the bots red.

  • Scripts/run-javascriptcore-tests:
14:39 Changeset [42465] by hyatt@apple.com

Update accessibility layout test from last checkin.

14:34 Changeset [42464] by hyatt@apple.com

Webcore:

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

Reviewed by Sam Weinig.

Fix for https://bugs.webkit.org/show_bug.cgi?id=25125. Rework scrolling so that a layout happens first when
it's already needed so that the code doesn't end up making bad decisions based off invalid document sizes.

  • WebCore.base.exp:
  • page/FrameView.h: (WebCore::FrameView::visibleContentsResized):
  • platform/ScrollView.cpp: (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::updateScrollbars):
  • platform/ScrollView.h:

WebKit/mac:

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

Reviewed by Sam Weinig.

Fix for https://bugs.webkit.org/show_bug.cgi?id=25125. Rework scrolling so that a layout happens first when
it's already needed so that the code doesn't end up making bad decisions based off invalid document sizes.

This patch also eliminates WebHTMLView's separate notion of needing a layout and just consolidates it with
WebCore's notion of needing layout.

  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
  • WebView/WebHTMLView.mm: (-[WebHTMLView _frameOrBoundsChanged]): (-[WebHTMLView initWithFrame:]): (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): (-[WebHTMLView setNeedsLayout:]): (-[WebHTMLView _layoutIfNeeded]): (-[WebHTMLView _needsLayout]):
  • WebView/WebHTMLViewInternal.h:
14:31 Changeset [42463] by aroben@apple.com

Windows part 2 of <rdar://5438063> Saving history containing 100,000 entries causes pauses of 2s while browsing

WebCore:

Add SharedBuffer::wrapCFData

This is the CF-equivalent of wrapNSData.

Reviewed by Brady Eidson.

  • platform/SharedBuffer.h:
  • platform/cf/SharedBufferCF.cpp: (WebCore::SharedBuffer::wrapCFData):

WebKit/win:

Windows part 2 of <rdar://5438063> Saving history containing 100,000
entries causes pauses of 2s while browsing

Reviewed by Brady Eidson.

  • Interfaces/IWebHistoryPrivate.idl: Added data, analagous to WebKit/mac's -[WebHistory _data] method.
  • WebHistory.cpp: (WebHistory::saveHistoryGuts): Changed to call data() to get the data for saving. (WebHistory::data): Added. Returns the data for saving as an IStream. (WebHistory::data): Added. Returns the data for saving as a CFDataRef.
  • WebHistory.h: Added data.
14:27 Changeset [42462] by kov@webkit.org

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

Rubber-stamped by Holger Freyther.

Further massage tests to disable tests that are failingto make the
results more useful.

  • platform/gtk/Skipped:
14:09 Changeset [42461] by ggaren@apple.com

JavaScriptCore:

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

Reviewed by Sam Weinig.


Disabled two JavaScriptCore tests because they fail on Window or Mac but
not both, so they make the bots red.

  • tests/mozilla/expected.html: Updated expected results.

WebKitTools:

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

Reviewed by Sam Weinig.

Disabled two JavaScriptCore tests because they fail on Window or Mac but
not both, so they make the bots red.

  • Scripts/run-javascriptcore-tests:
13:57 Changeset [42460] by justin.garcia@apple.com

Adding a comment to my previous code change.

13:55 Changeset [42459] by darin@apple.com

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

  • WebView/WebViewPrivate.h: Updated comments.
13:48 Changeset [42458] by mitz@apple.com
  • build fix
  • page/EventHandler.cpp: (WebCore::documentPointForWindowPoint):
13:46 Changeset [42457] by antti@apple.com

WebCore:

2009-04-13 Antti Koivisto <antti@apple.com>

Reviewed by Darin Adler.

<rdar://problem/6740294> Increase the connection count per host


Try to use six connections per host if possible.

  • WebCore.base.exp:
  • loader/loader.cpp: (WebCore::Loader::Loader):
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/ResourceRequestBase.cpp: (WebCore::initMaximumHTTPConnectionCountPerHost):
  • platform/network/ResourceRequestBase.h:
  • platform/network/mac/ResourceRequestMac.mm: (WebCore::initMaximumHTTPConnectionCountPerHost):

WebKit/mac:

2009-04-13 Antti Koivisto <antti@apple.com>

Reviewed by Darin Adler.


<rdar://problem/6740294> Increase the connection count per host

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):

WebKitLibraries:

2009-04-13 Antti Koivisto <antti@apple.com>

Reviewed by Darin Adler.


<rdar://problem/6740294> Increase the connection count per host

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
13:38 Changeset [42456] by justin.garcia@apple.com

WebCore:

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

Reviewed by Adele Peterson.

https://bugs.webkit.org/show_bug.cgi?id=25153
Can't place the caret into text field that scrolls the window on focus


We refetch the target node in the shadow node case, and when we do so the window coordinate for the mouse event may
be invalid because of scrolling that the focus handler did. Cache the document point (that we derived from the window
coordinate) and use that any time we refetch.

  • page/EventHandler.cpp: (WebCore::documentPointForWindowPoint): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::prepareMouseEvent):

LayoutTests:

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

Reviewed by Adele Peterson.


<rdar://problem/6748324> REGRESSION (Kirkwood): Can't type in Netflix search field

  • fast/forms/25153-expected.txt: Added.
  • fast/forms/25153.html: Added.
13:29 Changeset [42455] by weinig@apple.com

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

Fix bad expected result.

  • fast/frames/frame-unload-crash-expected.txt:
13:26 Changeset [42454] by weinig@apple.com

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

Reviewed by Geoffrey Garen.

Rename JavaScriptCanOpenWindowsAutomatically to javaScriptCanOpenWindowsAutomatically
to conform to our style guidelines.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::allowPopUp):
  • page/Settings.h: (WebCore::Settings::javaScriptCanOpenWindowsAutomatically):
13:24 Changeset [42453] by ggaren@apple.com

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

Mac build fix: Made another header private.

  • WebCore.xcodeproj/project.pbxproj:
13:20 Changeset [42452] by dimich@chromium.org

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

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25121
Upstream changes to handle error messages from V8 when running worker script.

  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::reportFatalErrorInV8): (WebCore::handleConsoleMessage): (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy): (WebCore::WorkerContextExecutionProxy::dispose): (WebCore::WorkerContextExecutionProxy::initV8IfNeeded): (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): (WebCore::WorkerContextExecutionProxy::evaluate):
  • bindings/v8/WorkerContextExecutionProxy.h:
13:18 Changeset [42451] by beidson@apple.com

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

Reviewed by Tim Hatcher

Tweak my last check-in, moving the thread violation check up to the API-level calls so the logging is more
useful to developers/users.

  • WebView/WebFrame.mm: (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): If not on the main thread, only perform the "call on main thead" workaround, as the log/exception raising is now up at the API level. (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): Perform a thread violation check here so logging is more meaningful. (-[WebFrame loadHTMLString:baseURL:]): Ditto. (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto.
13:16 Changeset [42450] by ggaren@apple.com

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

Build fix: Made setInlineEventListenerForType not inline, since Document
calls it now. Made RegisteredEventListener.h a private header on Mac,
so WebKit can use it.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::setInlineEventListenerForType):
13:14 Changeset [42449] by mitz@apple.com

Reviewed by Sam Weinig.

  • fix <rdar://problem/6404439> REGRESSION: Overlapping text and other layout issues in View Sample feature of MYOB FIrstEdge v3
  • page/Navigator.cpp: (WebCore::shouldHideFourDot): Added "tdqm_loader.js" to the list of JavaScript files this quirk applies to.
13:03 Changeset [42448] by beidson@apple.com

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

Reviewed by Kevin Decker

<rdar://problem/6712063> Garmin WebUpdater crashes

  • WebView/WebFrame.mm: (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): If not called on the main thread, add a ThreadViolationCheckRoundTwo() call to either log or raise an exception. In the case where it's only a log, reschedule the _loadData call to occur on the main thread.
12:50 Changeset [42447] by weinig@apple.com

WebCore:

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

Reviewed by Oliver Hunt.

Move open and showModalDialog functions out of JSDOMWindowBase
and into JSDOMWindow by partially generating them.

This slightly changes the behavior of getting window.showModalDialog
when the embedding app does not support it to return undefined regardless
of shadowing. This should not be an issue in a practice, but will be addressed
when we add a generic way to handle runtime specialization of property
access.

  • DerivedSources.make: Remove JSDOMWindowBase.lut.h
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::): (WebCore::JSDOMWindowBase::getOwnPropertySlot): Move canShowModalDialog check from here to JSDOMWindow::customGetOwnPropertySlot. (WebCore::JSDOMWindowBase::put): Remove dead code.
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::createWindow): (WebCore::JSDOMWindow::open): (WebCore::JSDOMWindow::showModalDialog):
  • bindings/js/JSDOMWindowCustom.h: (WebCore::JSDOMWindow::customGetOwnPropertySlot):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::parseModalDialogFeatures): Move from JSDOMWindowBase. (WebCore::DOMWindow::allowPopUp): Ditto. (WebCore::DOMWindow::canShowModalDialog): Ditto. (WebCore::DOMWindow::canShowModalDialogNow): Ditto.
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

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

Reviewed by Oliver Hunt.

Update tests after moving showModalDialog from JSDOMWindowBase to
JSDOMWindow and slightly changing the behavior when showModalDialog
is not available, as is the case for DumpRenderTree.

  • fast/dom/Window/window-function-frame-getter-precedence-expected.txt:
  • fast/dom/Window/window-properties-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
12:43 Changeset [42446] by ggaren@apple.com

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

Reviewed by Sam Weinig.

Moved storage for window event listeners into the window object.

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::addEventListener): (WebCore::JSDOMWindow::removeEventListener): Add / remove window event listeners to / from the window object.
  • dom/Document.cpp: (WebCore::Document::removeAllEventListeners): (WebCore::Document::clear): (WebCore::Document::setWindowInlineEventListenerForTypeAndAttribute): Moved a bunch of code to the DOMWindow class, and left behind a few calls through to DOMWindow, to support legacy clients. (Eventually, these will go away, too.)
  • dom/Document.h: ditto.
  • dom/Node.cpp: (WebCore::Node::dispatchGenericEvent): (WebCore::Node::dispatchWindowEvent): Dipatch window events on the window object, not the document.
  • dom/Node.h:
  • dom/RegisteredEventListener.h: Moved RegisteredEventListenerVector declaration, since it's required in more places now.
  • history/CachedFrame.cpp: (WebCore::CachedFrame::clear): Updated for rename. Also, remove event listeners before detaching and clearing the document's window pointer, since the the document needs its window pointer in order to tell the window to clear its event listeners.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): (WebCore::FrameLoader::canCachePageContainingThisFrame): (WebCore::FrameLoader::logCanCacheFrameDecision): Updated for rename, and movement of window event listeners into the window.
  • loader/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure): Updated for movement of window event listeners into the window.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::handleEvent): (WebCore::DOMWindow::addEventListener): (WebCore::DOMWindow::removeEventListener): (WebCore::DOMWindow::removeAllEventListeners): (WebCore::DOMWindow::hasEventListener): (WebCore::DOMWindow::setInlineEventListenerForType): (WebCore::DOMWindow::removeInlineEventListenerForType): (WebCore::DOMWindow::inlineEventListenerForType): (WebCore::DOMWindow::addPendingFrameUnloadEventCount): (WebCore::DOMWindow::removePendingFrameUnloadEventCount): (WebCore::DOMWindow::addPendingFrameBeforeUnloadEventCount): (WebCore::DOMWindow::removePendingFrameBeforeUnloadEventCount):
  • page/DOMWindow.h: Moved a bunch of code to the DOMWindow class, from the Document.
  • page/Frame.cpp: (WebCore::Frame::shouldClose): Updated for movement of window event listeners into the window.
12:05 Changeset [42445] by bolsinga@apple.com

2009-04-13 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Sam Weinig.

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

The Geolocation timer needs to start after the UA has granted permission.

  • bindings/js/JSGeolocationCustom.cpp: Use PassRefPtr<PositionOptions> (WebCore::JSGeolocation::getCurrentPosition): (WebCore::JSGeolocation::watchPosition):
  • page/Geolocation.cpp: Add a RefPtr<PositionOptions> so it can be used later when the timer is started. Change PositionOptions* to PassRefPtr<PositionOptions> where needed. (WebCore::Geolocation::GeoNotifier::GeoNotifier): (WebCore::Geolocation::GeoNotifier::startTimer): (WebCore::Geolocation::getCurrentPosition): (WebCore::Geolocation::watchPosition): (WebCore::Geolocation::setIsAllowed): Start the timer is the UA allows (WebCore::Geolocation::startTimer): (WebCore::Geolocation::startTimersForOneShots): (WebCore::Geolocation::startTimersForWatchers): (WebCore::Geolocation::startTimers):
  • page/Geolocation.h: (WebCore::Geolocation::GeoNotifier::create):
11:01 Changeset [42444] by pam@chromium.org

2009-04-13 Pamela Greene <pam@chromium.org>

Reviewed by Darin Fisher.

Fix Chromium (V8) build by renaming methods to match changes
in http://trac.webkit.org/changeset/42377.

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

  • bindings/v8/ScheduledAction.cpp:

(WebCore::ScheduledAction::execute): updateRendering() -> updateStyleIfNeeded()

  • bindings/v8/V8AbstractEventListener.cpp: (WebCore::V8AbstractEventListener::handleEvent): updateDocumentsRendering() -> updateStyleForAllDocuments()
10:52 Changeset [42443] by darin@apple.com

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

  • Scripts/make-js-test-wrappers: Added another exception.
10:47 Changeset [42442] by darin@chromium.org

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

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25136
CRASH in DocumentLoader::removeSubresourceLoader due to null m_frame

Test: fast/frames/frame-unload-crash.html

  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::updateLoading): Added null check of m_frame.
10:38 Changeset [42441] by weinig@apple.com

WebCore:

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

Reviewed by Tim Hatcher.

Put the MessagePort constructor back in ENABLE_CHANNEL_MESSAGING.

  • page/DOMWindow.idl:

LayoutTests:

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

Reviewed by Tim Hatcher.

Update test results after putting the MessagePort constructor
back in ENABLE_CHANNEL_MESSAGING.

  • fast/dom/Window/window-properties-expected.txt:
  • fast/js/global-constructors-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
10:24 Changeset [42440] by bolsinga@apple.com

2009-04-13 Greg Bolsinga <bolsinga@apple.com>

Fix GTK build break.

  • platform/gtk/GeolocationServiceGtk.cpp: (WebCore::GeolocationServiceGtk::updatePosition):
10:14 Changeset [42439] by hyatt@apple.com

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

Reviewed by Darin Adler and Dan Bernstein.

Assertion in updateStyleForAllDocuments. Make sure to unscheduleStyleRecalc when an object goes into
the page cache. Disallow scheduling of style recalcs on a document that is already in the page cache.
Schedule a style recalc if needed when an object comes out of the page cache.

  • dom/Document.cpp: (WebCore::Document::scheduleStyleRecalc): (WebCore::Document::setInPageCache):
10:11 Changeset [42438] by timothy@apple.com

Correctly sort (program) scripts in the Scripts panel popup menu.

Reviewed by Ada Chan.

  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Refactor the code and sort "(program)" options by the sourceID to maintain some order.
  • inspector/front-end/utilities.js: (indexOfObjectInListSortedByFunction): Fix a bug where identical objects would cause an incorrect return value that confuses insertionIndexForObjectInListSortedByFunction. Just set 'first' and break so the correct result will be returned.
10:07 Changeset [42437] by bolsinga@apple.com

2009-04-13 Greg Bolsinga <bolsinga@apple.com>

Reviewed by Darin Adler.

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


Add custom code for Coordinates that returns null when required by the
Geolocation spec.


http://dev.w3.org/geo/api/spec-source.html#coordinates

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCoordinatesCustom.cpp: Added. (WebCore::JSCoordinates::altitude): returns null if the value cannot be provided. (WebCore::JSCoordinates::altitudeAccuracy): Ditto (WebCore::JSCoordinates::heading): Ditto (WebCore::JSCoordinates::speed): Ditto
  • page/Coordinates.h: (WebCore::Coordinates::create): Add 'canProvide' parameters and values (WebCore::Coordinates::canProvideAltitude): (WebCore::Coordinates::canProvideAltitudeAccuracy): (WebCore::Coordinates::canProvideHeading): (WebCore::Coordinates::canProvideSpeed): (WebCore::Coordinates::Coordinates):
  • page/Coordinates.idl: specify custom getters
  • platform/mac/GeolocationServiceMac.mm: Set the values correctly if they cannot be provided. (-[WebCoreCoreLocationObserver locationManager:didUpdateToLocation:fromLocation:]):
09:27 Changeset [42436] by kov@webkit.org

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

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=22898
[GTK] need proper API for printing

Added simple printing unit tests.

  • tests/testwebframe.c: (print_requested_cb): (print_timeout): (test_webkit_web_frame_printing): (main):
09:26 Changeset [42435] by kov@webkit.org

2009-04-13 Gustavo Noronha Silva <gns@gnome.org>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=22898
[GTK] need proper API for printing

Implement proper printing API, using the GTK+ printing API.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::print):
  • webkit/webkitprivate.h:
  • webkit/webkitwebframe.cpp:
  • webkit/webkitwebframe.h:
  • webkit/webkitwebview.cpp:
09:15 Changeset [42434] by kov@webkit.org

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

Rubber-stamped by Holger Freyther.

Reworked the skipped tests listing so that it is easier to find
tests that are skipped but pass using diff. Enable all tests that
are passing, and disable failing tests except for a few crashers
and known regressions. This is an effort to make the build slave
output more useful when it is back.

  • platform/gtk/Skipped:
08:12 Changeset [42433] by adele@apple.com

WebCore:

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

Reviewed by Darin Adler.

Fix for <rdar://problem/5510537> Typing return at start of block quote yields empty quoted line

Test: editing/inserting/5510537.html

  • editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply): If the break insertion position is at the beginning of the topmost quote, then just insert the <br> before the blockquote. Otherwise, if the break insertion position is at the beginning of any quote, adjust the position so the break comes before the current quote level so we don't end up with an empty line in that quote in addition to the new line we're adding with the <br>.

LayoutTests:

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

Reviewed by Darin Adler.

Test for <rdar://problem/5510537> Typing return at start of block quote yields empty quoted line

  • editing/inserting/5510537.html: Added.
  • platform/mac/editing/inserting/5510537-expected.checksum: Added.
  • platform/mac/editing/inserting/5510537-expected.png: Added.
  • platform/mac/editing/inserting/5510537-expected.txt: Added.
07:46 Changeset [42432] by darin@apple.com

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

Reviewed by Dan Bernstein.

Fix problem when encoding history files with duplicate integer arrays near the end of the file.
This results in an assertion failure, and if assertions are turned off, corrupted output.

When writing an integer array it's important not to add an object reference to the
aggregate buffer. The writing of the array does not depend on the aggregate buffer. But,
more importantly, it's possible this instance integer array is a duplicate and won't be
written out. If so, there's no guarantee there's enough space in the aggregate buffer to
store the object references (the references will be ignored). In some cases the aggregate
buffer can then overrun the data being written; normally this is prevented by the fact that
the data being written will include a copy of the aggregate buffer.

Also removed a bit of unneeded dead code to handle the integer -1.

  • platform/cf/BinaryPropertyList.cpp: (WebCore::BinaryPropertyListPlan::BinaryPropertyListPlan): Removed unneeded m_integerNegativeOneObjectReference, since property lists support only non-negative integers. (WebCore::BinaryPropertyListPlan::writeInteger): Removed support for m_integerNegativeOneObjectReference. (WebCore::BinaryPropertyListPlan::integerObjectReference): Ditto. (WebCore::BinaryPropertyListSerializer::writeIntegerWithoutAddingAggregateObjectReference): Added. Factored out most of writeInteger, for use in writeIntegerArray, without calling addAggregateObjectReference. (WebCore::BinaryPropertyListSerializer::writeInteger): Changed to call the new writeIntegerWithoutAddingAggregateObjectReference function. (WebCore::BinaryPropertyListSerializer::writeIntegerArray): Call the new writeIntegerWithoutAddingAggregateObjectReference function and therefore remove the code to save and restore m_currentAggregateBufferByte, which is no longer needed.
04:31 Changeset [42431] by zecke@webkit.org

Unreviewed Qt build fix

04/12/09:

17:41 Changeset [42430] by weinig@apple.com

WebCore:

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

Reviewed by Mark Rowe.

Move the event and crypto attributes and the captureEvents and releaseEvents
functions out of JSDOMWindowBase by partially generating them.

  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::currentEvent): Make const.
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::crypto): Not implemented. (WebCore::JSDOMWindow::event): (WebCore::JSDOMWindow::captureEvents): Not implemented. (WebCore::JSDOMWindow::releaseEvents): Ditto.
  • page/DOMWindow.idl:

LayoutTests:

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

Reviewed by Mark Rowe.

Update test result for new nop window.crypto behavior.

  • http/tests/security/cross-frame-access-get-expected.txt:
16:42 Changeset [42429] by weinig@apple.com

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

Update results.

  • fast/dom/Window/window-properties-expected.txt:
  • fast/js/global-constructors-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
16:10 Changeset [42428] by weinig@apple.com

WebCore:

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

Reviewed by Mark Rowe.

Move more attributes out of JSDOMWindowBase by
partially generating them.

  • Expose the MessagePort constructor.
  • bindings/js/JSDOMGlobalObject.h: (WebCore::getDOMConstructor):
  • bindings/js/JSDOMWindowBase.cpp: (setJSDOMWindowBaseEvent):
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::image): (WebCore::JSDOMWindow::option): (WebCore::JSDOMWindow::audio): (WebCore::JSDOMWindow::webKitPoint): (WebCore::JSDOMWindow::webKitCSSMatrix): (WebCore::JSDOMWindow::xMLHttpRequest): (WebCore::JSDOMWindow::xSLTProcessor): (WebCore::JSDOMWindow::messageChannel): (WebCore::JSDOMWindow::worker):
  • page/DOMWindow.idl:

LayoutTests:

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

Reviewed by Mark Rowe.

Update tests after making MessageChannel completely missing when not
compiling with support for it (and removing it from the tests because
we never compile with support for it right now) and exposing the MessagePort
constructor.

  • fast/dom/constructors-cached-expected.txt:
  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
  • fast/dom/resources/constructors-cached.js:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
10:57 Changeset [42427] by timothy@apple.com

A resource's filename is not correct after a redirect in the Inspector.

Reviewed by Dan Bernstein.

  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::updateScriptObject): Fix a typo in the lastPathComponent property name.
09:24 Changeset [42426] by adele@apple.com

WebCore:

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

Reviewed by Darin Adler.

Test: editing/inserting/6609479-1.html

Follow-up to <rdar://problem/6609479>.

Before my last change, a Mail blockquote would've been broken up earlier, and you would've been guaranteed that the inserted content
was at the start of a paragraph. Now we need to check for that explicitly, and only merge the start of the inserted content if it is
at the start of a paragraph.

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::shouldMergeStart):

LayoutTests:

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

Reviewed by Darin Adler.

Another test for <rdar://problem/6609479>. This covers inserting HTML in a quoted table.

  • editing/inserting/6609479-1-expected.txt: Added.
  • editing/inserting/6609479-1.html: Added.

04/11/09:

22:49 Changeset [42425] by adele@apple.com

WebCore:

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

Reviewed by Dan Bernstein.

Fix for <rdar://problem/6609479> Pressing return inside a table cell that's inside quoted content will split the table

Test: editing/inserting/6609479.html

Don't break a blockquote if pasting or inserting into a table.

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):

LayoutTests:

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

Reviewed by Dan Bernstein.

Tests for <rdar://problem/6609479> Pressing return inside a table cell that's inside quoted content will split the table

  • editing/inserting/5418891.html: Changed test so it doesn't involve tables.
  • editing/inserting/6609479-expected.txt: Added.
  • editing/inserting/6609479.html: Added.
  • platform/mac/editing/inserting/5418891-expected.checksum:
  • platform/mac/editing/inserting/5418891-expected.png:
  • platform/mac/editing/inserting/5418891-expected.txt:
18:11 Changeset [42424] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/6643103> Unscaled values from body.scrollHeight

Test: fast/css/zoom-body-scroll.html

Adjust scroll{Left,Top,Width,Height} values for zoom in getters and
setters.

  • html/HTMLBodyElement.cpp: (WebCore::adjustForZoom): (WebCore::HTMLBodyElement::scrollLeft): (WebCore::HTMLBodyElement::setScrollLeft): (WebCore::HTMLBodyElement::scrollTop): (WebCore::HTMLBodyElement::setScrollTop): (WebCore::HTMLBodyElement::scrollHeight): (WebCore::HTMLBodyElement::scrollWidth):

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/6643103> Unscaled values from body.scrollHeight
  • fast/css/zoom-body-scroll-expected.txt: Added.
  • fast/css/zoom-body-scroll.html: Added.

04/10/09:

22:40 Changeset [42423] by mitz@apple.com

Reviewed by Jon Honeycutt.

  • fix <rdar://problem/6752340> Light blue-green background in content area in Mail
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Use device white, rather than calibrated white, as the default background color.
22:31 Changeset [42422] by timothy@apple.com

Allow page navigation and reload while stopped at a breakpoint.

<rdar://problem/6781108> Having a breakpoint active prevents page reload

Reviewed by Darin Adler.

  • inspector/InspectorController.cpp: (WebCore::InspectorController::didContinue): Call the resumedScript function.
  • inspector/InspectorController.h: Added didContinue.
  • inspector/JavaScriptDebugListener.h: Ditto.
  • inspector/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::pauseIfNeeded): Call didContinue on the listeners.
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.debuggerResumed): Update the interface and state.
  • inspector/front-end/inspector.js: (WebInspector.resumedScript): Call ScriptsPanel.debuggerResumed.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Call resumeDebugger.
19:18 Changeset [42421] by aroben@apple.com

Land corrected results for complex-character-based-fallback.html

  • platform/win/fast/text/international/complex-character-based-fallback-expected.txt:
17:56 Changeset [42420] by darin@apple.com

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

Rubber stamped by Adam Roben.

Disabled fast/dom/gc-8.html, which was using Timer in an unsafe way that now
triggers an assertion.

We'll reenable the test after fixing the problem. But this is a test-only problem.

  • fast/dom/gc-8.html: Removed.
  • fast/dom/gc-8.html-disabled: Copied from fast/dom/gc-8.html.
17:47 Changeset [42419] by sfalken@apple.com

<rdar://problem/6676024> REGRESSION (PB-40B1): Safari crashes on launch on tablet PC


r21436 changed the semantics of AXObjectCache::get() to not create
objects on demand. Changing this get() call into a getOrCreate() call
fixes the crash.


Rubber stamped by Jon Honeycutt.

  • AccessibleDocument.cpp: (AccessibleDocument::AccessibleDocument):
17:43 Changeset [42418] by weinig@apple.com

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

Reviewed by Adele Peterson.

Remove unused include for JSLock.

  • page/mac/FrameMac.mm:
17:41 Changeset [42417] by weinig@apple.com

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

Reviewed by Darin Adler.

Add back the keepAlive timer for after the script execution to
protect the callers of evaluate, as was part of the original intent
of timer.

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate):
  • page/mac/FrameMac.mm:
17:39 Changeset [42416] by mitz@apple.com

Reviewed by Anders Carlsson.

  • test and expected result updates following r42379
  • fast/text/offsetForPosition-cluster-at-zero-expected.txt: Updated results.
  • fast/text/offsetForPosition-cluster-at-zero.html: Removed font-dependent alert that was accidently left in this test.
  • platform/mac-tiger/fast/text/international/thai-line-breaks-expected.checksum:
  • platform/mac-tiger/fast/text/international/thai-line-breaks-expected.png:
  • platform/mac-tiger/fast/text/international/thai-line-breaks-expected.txt:
  • platform/mac-tiger/fast/text/monospace-width-cache-expected.checksum: Added.
  • platform/mac-tiger/fast/text/monospace-width-cache-expected.png: Added.
  • platform/mac-tiger/fast/text/monospace-width-cache-expected.txt: Added.
  • platform/win/Skipped:
17:26 Changeset [42415] by cmarrin@apple.com

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

If we reload, the animation controller sticks around and has
a stale animation time. So the needed delay is computed wrong.
I added a reset of the animation timer on load.

I did not do a test case because this only happens on reload so I
couldn't make an automated test. I tried using an iframe and using
reload() but that doesn't tickle the bug.

17:13 Changeset [42414] by aroben@apple.com

Add our new test font to the list that DRT knows about

Reviewed by Dan Bernstein.

  • DumpRenderTree/win/DumpRenderTree.cpp: (initialize): Added WebKit Layout Tests 2.ttf.
17:10 Changeset [42413] by darin@apple.com

2009-04-10 Grace Kloba <klobag@gmail.com>

Reviewed by Darin Adler.

Move WORKERS header files inside ENABLE(WORKERS).
So if WORKERS is not enabled and the generated files are not generated, the build is still working.

  • bindings/js/JSDOMGlobalObject.cpp:
  • bindings/js/JSMessageChannelConstructor.cpp:
  • bindings/js/ScheduledAction.cpp:
16:59 Changeset [42412] by darin@apple.com

WebCore:

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

Reviewed by Brady Eidson.

<rdar://problem/6773515> crash in push_heap inside WebCore when printing

The crash was due to manipulating a timer on a different thread than the one it was created on.
This adds some diagnostics so we'll catch that kind of mistake immediately.

  • platform/Timer.cpp: (WebCore::TimerBase::TimerBase): Store the thread identifier in debug versions. (WebCore::TimerBase::start): Assert it's the same thread the timer was created on. (WebCore::TimerBase::stop): Ditto. (WebCore::TimerBase::isActive): Ditto. (WebCore::TimerBase::setNextFireTime): Ditto.
  • platform/Timer.h: Added the thread identifier data member.

WebKit/mac:

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

Reviewed by Brady Eidson.

<rdar://problem/6773515> crash in push_heap inside WebCore when printing

The crash was due to manipulating a timer on a different thread than the one it was created on.

  • History/WebHistoryItem.mm: (-[WebWindowWatcher windowWillClose:]): Call later on main thread, if called on non-main thread.
  • WebView/WebHTMLView.mm: (-[WebHTMLView windowDidBecomeKey:]): Ditto. (-[WebHTMLView windowDidResignKey:]): Ditto. (-[WebHTMLView windowWillClose:]): Ditto. (-[WebHTMLView _updateControlTints]): Added. Factored out the non-thread-safe part of our override of _windowChangedKeyState. (-[WebHTMLView _windowChangedKeyState]): Call _updateControlTints later on main thread, if called on non-main thread.
  • WebView/WebPreferences.mm: (-[WebPreferences _postPreferencesChangesNotification]): Call later on main thread, if called on non-main thread
16:39 Changeset [42411] by aroben@apple.com

Add our invidual IDL files back to Interfaces.vcproj, but disable them

This allows the IDL files to be found in Solution Explorer.

Rubber-stamped in advance by Steve Falkenburg.

  • WebKit.vcproj/Interfaces.vcproj:
16:19 Changeset [42410] by simon.fraser@apple.com

2009-04-10 Chris Marrin <cmarrin@apple.com>

Reviewed by Dan Bernstein

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

If you remove a class with a transition while that transition is running
the animation timer will continue to fire after the transition is finished.
This has no visual indication, but it does drain the processor. And in some
cases it might even cause a glitch in future animations. Unfortunately there
is no way to test this without putting in printfs.

This happens because the animation logic is never traversed after a transition
is removed, so we never get a chance to cleanup. So I added cleanup in the logic
that fires the dispatch of the last style change when the animation finishes.

Test: transitions/remove-transition-style.html

  • page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired):
  • page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimation::updateTransitions): (WebCore::CompositeAnimation::animate): (WebCore::CompositeAnimation::cleanupFinishedAnimations):
  • page/animation/CompositeAnimation.h:
15:52 Changeset [42409] by weinig@apple.com

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

Reviewed by Geoffrey Garen.

Fix for <rdar://problem/6648858>
CrashTracer: [REGRESSION(Safari 4)] 60 crashes in Safari at com.apple.WebCore • WebCore::ScriptController::evaluate + 241

The Frame (and therefore ScriptController) were being destroyed
during JavaScript execution causing the JSDOMWindowShell to become
null.

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluate): Use a RefPtr to protect the Frame instead of the keep-alive timer, since a nested event loop used from with-in JavaScript execution could cause the timer to fire before returning.
15:30 ApplicationsGtk edited by evandrofisico@gmail.com
Correct claws-mail webkit plugin URL (diff)
15:27 Changeset [42408] by dglazkov@chromium.org

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

Reviewed by Timothy Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=25133
Fix an error in InspectorController's bindings, clean up a few header
includes, make empty object construction in ScriptObject less ambiguous.

  • bindings/js/JSInspectorControllerCustom.cpp: (WebCore::JSInspectorController::setSetting): Send correct argument from

the bindings.

  • bindings/js/ScriptObject.cpp: (WebCore::ScriptObject::createNew): Added.
  • bindings/js/ScriptObject.h: Removed constructor, added decl for createNew.
  • inspector/ConsoleMessage.cpp: Remove unused header.
  • inspector/ConsoleMessage.h: Ditto.
  • inspector/InspectorResource.cpp: (WebCore::createHeadersObject): Changed to use ScriptObject::createNew.
14:50 Changeset [42407] by mitz@apple.com

Reviewed by Adam Roben.

  • re-enable css2.1 tests that were disabled following r42379 and make them use a different fallback font for certain characters, to get the vertical metrics to match Mac
  • platform/win/Skipped:
  • platform/win/css2.1/resources/Mac-compatible-font-fallback.css:
14:44 Changeset [42406] by cmarrin@apple.com

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

This both fixes a bug where I was not sending in the right time
to continue the animation and was not recomputing current time
when coming out of suspend.

13:48 Changeset [42405] by eric.carlson@apple.com

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

WebKitSystemInterface changes for <rdar://problem/6646998>

  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
13:41 Changeset [42404] by timothy@apple.com

Revert an unintentional logic change in r42400.

13:17 Changeset [42403] by simon.fraser@apple.com

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

Fix the leopard build by updating WebKitSystemInterface.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
13:07 Changeset [42402] by timothy@apple.com

Remove DOMDocumentPrivate.h now that <rdar://problem/6730996> is fixed.

WebKit:

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

Remove DOMDocumentPrivate.h now that <rdar://problem/6730996> is fixed.

Rubber-stamped by Mark Rowe.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

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

Remove DOMDocumentPrivate.h now that <rdar://problem/6730996> is fixed.

Rubber-stamped by Mark Rowe.

  • Misc/DOMDocumentPrivate.h: Removed.
13:05 Changeset [42401] by aroben@apple.com

Give Windows's <select> popup menus drop shadows

Rubber-stamped by Steve Falkenburg.

No test possible.

  • platform/win/PopupMenuWin.cpp: (WebCore::registerPopup): Use the CS_DROPSHADOW window class style.
13:00 Changeset [42400] by timothy@apple.com

Fix a bug in the Web Inspector where it would show scripts
from previous pages when toggling the debugger off and back on.

https://bugs.webkit.org/show_bug.cgi?id=25095
rdar://problem/6769970

Reviewed by John Sullivan.

  • bindings/js/ScriptCachedFrameData.cpp: (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): Null out the debugger for the scriptController. This balances the attachDebugger that was already in ScriptCachedFrameData::restore. (WebCore::ScriptCachedFrameData::restore): Clean up an if statement.
  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::clearWindowShell): Clear the debugger from the current window before setting the new window.
  • inspector/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::recompileAllJSFunctions): Only accumulate source providers for code associated this as the debugger.
12:17 Changeset [42399] by eric.carlson@apple.com

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

Reviewed by Adele Peterson.

<rdar://problem/6646998> Avoid starting QTKitServer if possible

When possible avoid asking QTKit for the MIME types that require QTKitServer
when running 64-bit.

  • WebCore.base.exp: Added new entry point.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::addFileTypesToCache): Add an NSArray of types to the cache. (WebCore::mimeCommonTypesCache): Add all "common" QTKit types to the cache. (WebCore::mimeModernTypesCache): Add only "modern" QTKit types to the cache (this list does not start QTKitServer if it is not already running). (WebCore::MediaPlayerPrivate::getSupportedTypes): Refactored. (WebCore::MediaPlayerPrivate::supportsType): Look in list of "modern" types first to avoid starting QTKitServer if possible.
  • platform/mac/WebCoreSystemInterface.h: Add wkQTIncludeOnlyModernMediaFileTypes.
  • platform/mac/WebCoreSystemInterface.mm: Ditto.

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

Reviewed by Adele Peterson.

<rdar://problem/6646998> Avoid starting QTKitServer if possible

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Init QTIncludeOnlyModernMediaFileTypes.
11:55 Changeset [42398] by aroben@apple.com

Turn on window animations for <select> popup menus

We turned these off back when <select> popup menus were partially
transparent. Now that they're opaque, there's no reason not to
animate them.

Reviewed by Steve Falkenburg.

No test possible.

  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::show): Remove the #ifdef that was disabling the window animation.
11:39 Changeset [42397] by mitz@apple.com
  • skip failures following r42379 until they are addressed by code changes or test changes
  • platform/win/Skipped:
11:32 Changeset [42396] by mitz@apple.com

WebCore:

Reviewed by Sam Weinig.

  • fix a regression from r42379 which made zero-width characters affect line height

Test: fixes fast/text/wide-zero-width-space.html

  • platform/graphics/mac/FontMacATSUI.mm: (WebCore::overrideLayoutOperation): Add to the fallback font list set here, and only if the glyph is not zero-width... (WebCore::ATSULayoutParameters::initialize): ...instead of doing it here. This matches WidthIterator's behavior.

LayoutTests:

Reviewed by Sam Weinig.

  • revert broken test results that were checked in with r42379, now that the regression is fixed
  • platform/mac/fast/text/wide-zero-width-space-expected.checksum:
  • platform/mac/fast/text/wide-zero-width-space-expected.png:
  • platform/mac/fast/text/wide-zero-width-space-expected.txt:
11:31 Changeset [42395] by aroben@apple.com

Update Windows results for complex-character-based-fallback.html

Rubber-stamped by Dan Bernstein.

  • platform/win/fast/text/international/complex-character-based-fallback-expected.checksum:
  • platform/win/fast/text/international/complex-character-based-fallback-expected.png:
  • platform/win/fast/text/international/complex-character-based-fallback-expected.txt: Updated.
10:39 Changeset [42394] by darin@chromium.org

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

Fixing build bustage caused by warnings being treated as errors.
1- A local variable was only be used inside a debug assertion, which

caused grief for the release build.

2- Missing initializer for member 'DocumentMarker::activeMatch'

  • dom/Document.cpp: (WebCore::Document::addMarker): (WebCore::Document::setMarkersActive):
10:24 Changeset [42393] by darin@chromium.org

2009-04-10 Finnur Thorarinsson <finnur.webkit@gmail.com>

Reviewed by John Sullivan.

Fixing: https://bugs.webkit.org/show_bug.cgi?id=25117
(TextMatches don't have a concept of active match)

For the ports that use the DocumentMarker as highlighting for FindInPage it is
useful to have a flag that specifies which marker is active, so it can be drawn
in a different color.

This allows me to remove the hack to use the SelectionController to highlight
the active match (in the ChromiumWin port).

  • dom/Document.cpp: (WebCore::Document::setMarkersActive):
  • dom/Document.h:
  • dom/DocumentMarker.h:
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintTextMatchMarker):
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::platformActiveTextSearchHighlightColor): (WebCore::RenderTheme::platformInactiveTextSearchHighlightColor):
  • rendering/RenderTheme.h:
  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumWin::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeChromiumWin::platformActiveTextSearchHighlightColor): (WebCore::RenderThemeChromiumWin::platformInactiveTextSearchHighlightColor):
  • rendering/RenderThemeChromiumWin.h:
10:13 Changeset [42392] by pam@chromium.org

2009-04-10 Pamela Greene <pam@chromium.org>

Reviewed by Dimitri Glazkov.

Build fix for Chromium.
https://bugs.webkit.org/show_bug.cgi?id=12440

  • page/chromium/FrameChromium.cpp: (WebCore::computePageRectsForFrame): change docWidth() to overflowWidth()
05:03 Changeset [42391] by kov@webkit.org

WebKit/gtk/

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

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=25124
[GTK] many strings still missing translation calls

Mark the missing strings for translation.

  • webkit/webkitdownload.cpp: (_WebKitDownloadPrivate::webkit_download_cancel):
  • webkit/webkitsoupauthdialog.c: (show_auth_dialog):
  • webkit/webkitwebhistoryitem.cpp: (_WebKitWebHistoryItemPrivate::webkit_web_history_item_class_init):
  • webkit/webkitwebinspector.cpp: (_WebKitWebInspectorPrivate::webkit_web_inspector_class_init):
  • webkit/webkitwebnavigationaction.cpp: (_WebKitWebNavigationActionPrivate::webkit_web_navigation_action_class_init):
  • webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):
  • webkit/webkitwebview.cpp:

WebKit/gtk/po/

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

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=25124
[GTK] many strings still missing translation calls

Extracting translation for the files that got translation calls.

  • POTFILES:
  • de.po:
  • pt_BR.po:
  • webkit.pot:
Note: See TracTimeline for information about the timeline view.