WebKit-https.git
12 years agoFix "make x86_64" by adding x86_64 target to WebKitTools Makefile.
mrowe@apple.com [Thu, 22 May 2008 02:19:17 +0000 (02:19 +0000)]
Fix "make x86_64" by adding x86_64 target to WebKitTools Makefile.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33985 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Alp Toker <alp@nuanti.com>
alp@webkit.org [Thu, 22 May 2008 02:06:46 +0000 (02:06 +0000)]
2008-05-21  Alp Toker  <alp@nuanti.com>

        GTK+ port build fixes following squirrelfish merge r33979.

        * GNUmakefile.am:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33984 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 22 May 2008 02:03:39 +0000 (02:03 +0000)]
2008-05-21  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin.

        - save a hash lookup wne writing to global properties
        0.3% speedup on SunSpider, 7% on bitops-bitwise-and

        * VM/Machine.cpp:
        (KJS::resolveBase): Check for being a the end of the scope chain
        before hash lookup.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33983 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Alp Toker <alp@nuanti.com>
alp@webkit.org [Thu, 22 May 2008 01:31:29 +0000 (01:31 +0000)]
2008-05-21  Alp Toker  <alp@nuanti.com>

        Rubber-stamped by Maciej.

        Replace non-standard #pragma marks with comments to avoid compiler
        warnings.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33982 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Geoffrey Garen <ggaren@apple.com>
mrowe@apple.com [Thu, 22 May 2008 01:21:18 +0000 (01:21 +0000)]
2008-05-21  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Mark Rowe.

        Fix layout test failure in fast/dom/getter-on-window-object2 introduced in r33961.

        * JavaScriptCore.exp:
        * kjs/JSGlobalObject.cpp:
        (KJS::JSGlobalObject::defineGetter):
        (KJS::JSGlobalObject::defineSetter):
        * kjs/JSGlobalObject.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33980 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMerge squirrelfish branch into trunk.
mrowe@apple.com [Thu, 22 May 2008 01:20:45 +0000 (01:20 +0000)]
Merge squirrelfish branch into trunk.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33979 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Wed, 21 May 2008 23:18:09 +0000 (23:18 +0000)]
2008-05-21  Anders Carlsson  <andersca@apple.com>

        Reviewed by Mitz.

        Add IconFetcher implementation.

        * WebCore.base.exp:
        * WebCore.xcodeproj/project.pbxproj:
        * html/HTMLLinkElement.h:
        (WebCore::HTMLLinkElement::isIcon):
        * loader/icon/IconFetcher.cpp: Added.
        (WebCore::IconLinkEntry::):
        (WebCore::IconLinkEntry::IconLinkEntry):
        (WebCore::IconLinkEntry::type):
        (WebCore::IconLinkEntry::url):
        (WebCore::IconLinkEntry::buffer):
        (WebCore::parseIconLink):
        (WebCore::IconFetcher::create):
        (WebCore::IconFetcher::IconFetcher):
        (WebCore::IconFetcher::~IconFetcher):
        (WebCore::IconFetcher::cancel):
        (WebCore::IconFetcher::createIcon):
        (WebCore::IconFetcher::loadEntry):
        (WebCore::IconFetcher::loadFailed):
        (WebCore::IconFetcher::didReceiveResponse):
        (WebCore::IconFetcher::didReceiveData):
        (WebCore::IconFetcher::didFinishLoading):
        (WebCore::IconFetcher::didFail):
        * loader/icon/IconFetcher.h: Added.
        (WebCore::IconFetcherClient::~IconFetcherClient):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33978 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Dave Hyatt.
mitz@apple.com [Wed, 21 May 2008 21:50:52 +0000 (21:50 +0000)]
    Reviewed by Dave Hyatt.

        - fix https://bugs.webkit.org/show_bug.cgi?id=18352
          <rdar://problem/5854517> crash loading malicious font

        * platform/graphics/mac/SimpleFontDataMac.mm:
        (WebCore::SimpleFontData::platformInit): In the case of a custom font,
        there is no NSFont to base the fallback font on, so get a font based on
        fallback family name alone.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33977 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdds the files and line numbers to the Profile call tree.
timothy@apple.com [Wed, 21 May 2008 21:09:59 +0000 (21:09 +0000)]
Adds the files and line numbers to the Profile call tree.

<rdar://problem/5952924> Inspector needs to show file and line number
in the Profile call tree

Reviewed by Geoff Garen.

* page/JavaScriptProfileNode.cpp:
(WebCore::getFunctionName): Fixes a JSStringRef leak.
(WebCore::getURL): Call ProfileNode::url.
(WebCore::getLineNumber): Call ProfileNode::lineNumber.
(WebCore::ProfileNodeClass): Add the url and lineNumber properties.
* page/inspector/ProfileView.js:
(WebInspector.ProfileDataGridNode.prototype.createCell): Overload the
DataGridNode.createCell and add the file and lineNumber to the
cell if the column is the function column.
* page/inspector/inspector.css: New styles for the file and line.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33976 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Darin Adler <darin@apple.com>
darin@apple.com [Wed, 21 May 2008 19:25:03 +0000 (19:25 +0000)]
2008-05-21  Darin Adler  <darin@apple.com>

        * Scripts/make-js-test-wrappers: Added another exception.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33974 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Darin Adler <darin@apple.com>
darin@apple.com [Wed, 21 May 2008 19:16:47 +0000 (19:16 +0000)]
2008-05-21  Darin Adler  <darin@apple.com>

        - try to fix the Windows build

        * profiler/Profiler.cpp:
        (KJS::Profiler::stopProfiling): Use ptrdiff_t instead of the less-common but incredibly
        similar ssize_t type.
        * wtf/AVLTree.h:
        (KJS::AVLTree::search): Added a typename for a dependent name that's a type.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33973 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoJavaScriptCore:
darin@apple.com [Wed, 21 May 2008 19:15:01 +0000 (19:15 +0000)]
JavaScriptCore:

2008-05-21  Darin Adler  <darin@apple.com>

        Reviewed by Anders.

        - fix <rdar://problem/5952721> bug in JavaScript arguments object property lookup

        Test: fast/js/arguments-bad-index.html

        * kjs/function.cpp:
        (KJS::IndexToNameMap::IndexToNameMap): Use unsigned instead of int.
        (KJS::IndexToNameMap::isMapped): Use unsigned instead of int, and also use the
        strict version of the numeric conversion function, since we don't want to allow
        trailing junk.
        (KJS::IndexToNameMap::unMap): Ditto.
        (KJS::IndexToNameMap::operator[]): Ditto.
        * kjs/function.h: Changed IndexToNameMap::size type from int to unsigned.

LayoutTests:

2008-05-21  Darin Adler  <darin@apple.com>

        Reviewed by Anders.

        - test for <rdar://problem/5952721> bug in JavaScript arguments object property lookup

        * fast/js/arguments-bad-index-expected.txt: Added.
        * fast/js/arguments-bad-index.html: Added.
        * fast/js/resources/arguments-bad-index.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33972 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Darin Adler <darin@apple.com>
darin@apple.com [Wed, 21 May 2008 18:34:47 +0000 (18:34 +0000)]
2008-05-21  Darin Adler  <darin@apple.com>

        - fix build

        * WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later
        if we want, but if we do, we should probably make some refinements like checking _private->closed
        and applicationIsTerminating.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33971 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRestores logging of console calls to the STDOUT
timothy@apple.com [Wed, 21 May 2008 18:16:46 +0000 (18:16 +0000)]
Restores logging of console calls to the STDOUT
when Interpreter::shouldPrintExceptions() is true.

<rdar://problem/5636442> REGRESSION: Console.log no longer logs to
the system console or terminal

<rdar://problem/5146079> JavaScript exception logging should print
accurate file and line info when called from WebScriptObject

Reviewed by Adam Roben.

* bindings/js/JSCustomSQLStatementCallback.cpp:
(WebCore::JSCustomSQLStatementCallback::handleEvent): Remove existing
printf and check for Interpreter::shouldPrintExceptions() since there is
a call to Console::addMessage.
* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
(WebCore::JSCustomSQLStatementErrorCallback::handleEvent): Ditto.
* bindings/js/JSCustomSQLTransactionCallback.cpp:
(WebCore::JSCustomSQLTransactionCallback::handleEvent): Ditto.
* bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
(WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Ditto.
* bindings/js/JSCustomVoidCallback.cpp:
(WebCore::JSCustomVoidCallback::handleEvent): Ditto.
* bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): Ditto.
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::printErrorMessage): Ditto.
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute): Ditto.
* bindings/js/kjs_events.cpp:
(WebCore::JSAbstractEventListener::handleEvent): Ditto.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldAllowNavigation): Ditto.
* bindings/objc/WebScriptObject.mm:
(WebCore::addExceptionToConsole): Added helper static function that
calls Console::addMessage.
(-[WebScriptObject callWebScriptMethod:withArguments:]): Call addExceptionToConsole.
(-[WebScriptObject evaluateWebScript:]): Ditto.
(-[WebScriptObject setValue:forKey:]): Ditto.
(-[WebScriptObject valueForKey:]): Ditto.
(-[WebScriptObject removeWebScriptKey:]): Ditto.
(-[WebScriptObject webScriptValueAtIndex:]): Ditto.
(-[WebScriptObject setWebScriptValueAtIndex:value:]): Ditto.
* page/Console.cpp:
(WebCore::Console::addMessage): Print the level, message,
URL and line number to STDOUT.
(WebCore::printToStandardOut): Helper static function that
takes a prefix string, ExecState, an argument List and URL.
Prints the prefix and loops through the arguments calling
toString on each and printing the string. Finally printing
the URL and new line.
(WebCore::Console::error): Call printToStandardOut.
(WebCore::Console::info): Ditto.
(WebCore::Console::log): Ditto.
(WebCore::Console::assertCondition): Ditto.
(WebCore::Console::warn): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33970 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoChanges to the ownership of Profiles and allows multiple Profiles at a time
timothy@apple.com [Wed, 21 May 2008 18:16:18 +0000 (18:16 +0000)]
Changes to the ownership of Profiles and allows multiple Profiles at a time

JavaScriptCore:

        Change the Profiler to allow multiple profiles to be running at
        the same time. This can happen when you have nested console.profile()
        calls. This required two changes. First, the Profiler needed to keep a
        Vector of current profiles, instead of one. Second, a Profile needs
        to keep track of the global ExecState it started in and the page group
        identifier it is tracking.

        The stopProfiling call now takes the same arguments as startProfiling.
        This makes sure the correct profile is stopped. Passing a null UString
        as the title will stop the last profile for the matching ExecState.

        <rdar://problem/5951559> Multiple pages profiling can interfere with each other

        Reviewed by Kevin McCullough.

        * JavaScriptCore.exp: Added new exports. Removed old symbols.
        * profiler/Profile.cpp:
        (KJS::Profile::Profile): New constructor arguments for the
        originatingGlobalExec and pageGroupIdentifier.
        (KJS::Profile::stopProfiling): Set the m_originatingGlobalExec to null.
        * profiler/Profile.h:
        (KJS::Profile::create): Additional arguments.
        (KJS::Profile::originatingGlobalExec): Return m_originatingGlobalExec.
        (KJS::Profile::pageGroupIdentifier): Return m_pageGroupIdentifier.
        * profiler/Profiler.cpp:
        (KJS::Profiler::findProfile): Added. Finds a Profile that matches
        the ExecState and title.
        (KJS::Profiler::startProfiling): Return early if there is already
        a Profile with the ExecState and title. If not, create a new profile
        and append it to m_currentProfiles.
        (KJS::Profiler::stopProfiling): Loops through m_currentProfiles
        and find the one matching the ExecState and title. If one is found
        call stopProfiling and return the Profile after removing it
        from m_currentProfiles.
        (KJS::dispatchFunctionToProfiles): Helper inline function to loop through
        m_currentProfiles and call a Profile function.
        (KJS::Profiler::willExecute): Call dispatchFunctionToProfiles.
        (KJS::Profiler::didExecute): Ditto.
        * profiler/Profiler.h:

WebCore:

        Changes to work with the new Profiler API. The Profile is now
        stored by the InspectorController when Console.profileEnd is called.
        This solves three issues with the previous design. First, we don't
        keep profiles around unless the Inspector is enabled. Second, we
        only show Profiles initiated by the Page in it's Inspector, not every
        Profile for the whole process. Third, we now show Profiles in the
        Inspector when they are created.

        <rdar://problem/5951562> New profiles aren't added to the Inspector
        as they finish

        Reviewed by Kevin McCullough.

        * bindings/js/JSConsoleCustom.cpp:
        (WebCore::JSConsole::profileEnd): Added. Calls impl()->profileEnd()
        and passes the ExecState and arguments.
        * page/Console.cpp:
        (WebCore::Console::profile):
        (WebCore::Console::profileEnd): Accept the optional title argument
        and pass it to Profilier::stopProfiling along with the ExecState.
        Calls InspectorController::addProfile with the result Profile.
        * page/Console.h:
        * page/Console.idl: Made profileEnd Custom so we can get the ExecState.
        * page/InspectorController.cpp:
        (WebCore::profiles): Renamed from allProfiles. Uses the controller's
        profiles vector.
        (WebCore::InspectorController::addProfile): Appends to m_profiles.
        Calls addScriptProfile if the window is visible.
        (WebCore::InspectorController::windowScriptObjectAvailable): Renamed
        allProfiles to profiles.
        (WebCore::InspectorController::addScriptProfile): Calls addProfile on
        the JavaScript side.
        (WebCore::InspectorController::didCommitLoad): Clears m_profiles.
        * page/InspectorController.h:
        * page/inspector/ProfilesPanel.js: Populates the profiles sidebar the first
        time the panel is shown after a rest.
        * page/inspector/inspector.js: Added addProfile, calls ProfilesPanel's
        addProfile function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33969 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Darin Adler <darin@apple.com>
darin@apple.com [Wed, 21 May 2008 17:53:45 +0000 (17:53 +0000)]
2008-05-21  Darin Adler  <darin@apple.com>

        Reviewed by Anders and Kevin Decker.

        - fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session

        * WebView/WebView.mm:
        (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used.
        (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close.
        (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal.
        Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix).
        (-[WebView _close]): Changed for new method name and to use _closePluginDatabases.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33968 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap@webkit.org [Wed, 21 May 2008 17:17:37 +0000 (17:17 +0000)]
    Reviewed by Darin.

        <rdar://problem/5908520> REGRESSION (3.1.1-r33033): Crash in WebKit when opening or
        refreshing page on people.com

        The problem was that STL algorithms do not work with non-conformant comparators, and the
        site used sort(function() { return 0.5 - Math.random(); } to randomly shuffle an array.

        https://bugs.webkit.org/show_bug.cgi?id=18687
        REGRESSION(r32220): ecma/Array/15.4.4.5-3.js test now fails in GMT(BST)

        Besides relying on sort stability, this test was just broken, and kept failing with the
        new stable sort.

        Tests: fast/js/sort-randomly.html
               fast/js/sort-stability.html
               fast/js/comparefn-sort-stability.html

        * kjs/avl_tree.h: Added an AVL tree implementation.

        * JavaScriptCore.xcodeproj/project.pbxproj:
        * wtf/AVLTree.h: Added.
        Added an AVL tree implementation.

        * kjs/array_instance.cpp:
        (KJS::ArrayInstance::increaseVectorLength):
        (KJS::ArrayInstance::sort):
        (KJS::AVLTreeAbstractorForArrayCompare::get_less):
        (KJS::AVLTreeAbstractorForArrayCompare::set_less):
        (KJS::AVLTreeAbstractorForArrayCompare::get_greater):
        (KJS::AVLTreeAbstractorForArrayCompare::set_greater):
        (KJS::AVLTreeAbstractorForArrayCompare::get_balance_factor):
        (KJS::AVLTreeAbstractorForArrayCompare::set_balance_factor):
        (KJS::AVLTreeAbstractorForArrayCompare::compare_key_key):
        (KJS::AVLTreeAbstractorForArrayCompare::compare_key_node):
        (KJS::AVLTreeAbstractorForArrayCompare::compare_node_node):
        (KJS::AVLTreeAbstractorForArrayCompare::null):
        (KJS::ArrayInstance::compactForSorting):

        * kjs/array_instance.h: increaseVectorLength() now returns a bool to indicate whether it was
        successful.

        * wtf/Vector.h:
        (WTF::Vector::Vector):
        (WTF::::operator=):
        (WTF::::fill):
        Make these methods fail instead instead of crash when allocation fails, matching resize() and
        reserveCapacity(), which already had this behavior. Callers need to check for null buffer
        after making any Vector call that can try to allocate.

        * tests/mozilla/ecma/Array/15.4.4.5-3.js: Fixed the test to use a consistent sort function,
        as suggested in comments to a Mozilla bug filed about it (I'll keep tracking the bug to see
        what the final resolution is).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33967 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap@webkit.org [Wed, 21 May 2008 17:00:20 +0000 (17:00 +0000)]
    Reviewed by Darin.

        https://bugs.webkit.org/show_bug.cgi?id=19169
        <rdar://5952342> REGRESSION: nakarte.ru searches don't work

        Test: http/tests/xmlhttprequest/encode-request-url.html

        * platform/KURL.cpp: (WebCore::KURL::init): Don't allow UTF-8 encoded data to be implicitly
        converted to String, as it will be encoded again by parse().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33966 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Wed, 21 May 2008 16:59:35 +0000 (16:59 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a
        profile node.
        - Implements focus by adding the idea of a profileNode being visible and
        adding the ability to reset all of the visible flags.

        * profiler/Profile.h:
        (KJS::Profile::focus):
        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::ProfileNode): Initialize the visible flag.
        (KJS::ProfileNode::setTreeVisible): Set the visibility of this node and
        all of its descendents.
        (KJS::ProfileNode::focus): Determine if this node should be visible when
        focusing, if the functionName matches this node's function name or if any
        of this node's children are visible.
        (KJS::ProfileNode::restoreAll): Restore all nodes' visible flag.
        (KJS::ProfileNode::debugPrintData):
        * profiler/ProfileNode.h:
        (KJS::ProfileNode::visible):
        (KJS::ProfileNode::setVisible):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33965 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Ariya Hidayat <ariya.hidayat@trolltech.com>
hausmann@webkit.org [Wed, 21 May 2008 14:38:56 +0000 (14:38 +0000)]
2008-05-21  Ariya Hidayat  <ariya.hidayat@trolltech.com>

        Reviewed by Simon.

        For the Qt port, fix building with Qt for Embedded Linux.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33964 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-21 Ariya Hidayat <ariya.hidayat@trolltech.com>
hausmann@webkit.org [Wed, 21 May 2008 14:35:00 +0000 (14:35 +0000)]
2008-05-21  Ariya Hidayat  <ariya.hidayat@trolltech.com>

        Reviewed by Simon.

        For the Qt port, allow building without NPAPI plugin support.

        * WebCore.pro:
        * plugins/PluginView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33963 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoReviewed by Darin Adler.
kevino@webkit.org [Wed, 21 May 2008 05:47:44 +0000 (05:47 +0000)]
Reviewed by Darin Adler.

Rename wxWebFrame -> wxWebBrowserShell in preparation to introduce a WebFrame counterpart in wx port. (Frame typically means 'top level window' in wx terms.)

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

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33957 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Wed, 21 May 2008 04:14:11 +0000 (04:14 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        Added all of my personal manual tests for the profiler.

        * manual-tests/inspector/profiler-test-anonymous-event-handler.html: Added.
        * manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Added.
        * manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Added.
        * manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Added.
        * manual-tests/inspector/profiler-test-apply.html: Added.
        * manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Added.
        * manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Added.
        * manual-tests/inspector/profiler-test-call.html: Added.
        * manual-tests/inspector/profiler-test-dead-time.html: Added.
        * manual-tests/inspector/profiler-test-event-handler.html: Added.
        * manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Added.
        * manual-tests/inspector/profiler-test-inline-event-handler.html: Added.
        * manual-tests/inspector/profiler-test-many-calls-in-the-same-scope.html: Added.
        * manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Added.
        * manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Added.
        * manual-tests/inspector/profiler-test-multiple-frames.html: Added.
        * manual-tests/inspector/profiler-test-multiple-windows.html: Added.
        * manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Added.
        * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Added.
        * manual-tests/inspector/profiler-test-no-execution-context.html: Added.
        * manual-tests/inspector/profiler-test-one-execution-context.html: Added.
        * manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Added.
        * manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Added.
        * manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Added.
        * manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Added.
        * manual-tests/inspector/profiler-test-two-execution-contexts.html: Added.
        * manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Added.
        * manual-tests/inspector/resources: Added.
        * manual-tests/inspector/resources/other-frame.html: Added.
        * manual-tests/inspector/resources/other-window.html: Added.
        * manual-tests/inspector/resources/profiler-test-JS-resources.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33955 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFixes a couple performance issues with the profiler. Also fixes
timothy@apple.com [Wed, 21 May 2008 01:48:31 +0000 (01:48 +0000)]
Fixes a couple performance issues with the profiler. Also fixes
a regression where some nodes wouldn't be added to the tree.

Reviewed by Kevin McCullough.

* profiler/ProfileNode.cpp:
(KJS::ProfileNode::addChild): Compare callIdentifier instead
of functionName.
* profiler/ProfileNode.h:
(CallIdentifier.operator==): Compare the CallIdentifiers in
an order that fails sooner for non-matches.
(CallIdentifier.callIdentifier): Return the CallIdentifier by
reference to prevent making a new copy each time.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>
alp@webkit.org [Wed, 21 May 2008 00:51:24 +0000 (00:51 +0000)]
2008-05-20  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Alp Toker.

        Fix for previous autotools change.

        * configure.ac:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33951 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Use KJS::List::getSlice instead of reimplementing it
aroben@apple.com [Wed, 21 May 2008 00:23:58 +0000 (00:23 +0000)]
    Use KJS::List::getSlice instead of reimplementing it

        Rubberstamped and suggested by Sam Weinig.

        * bindings/js/JSConsoleCustom.cpp:
        (WebCore::JSConsole::assertCondition):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33949 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin Calhoun <kcalhoun@apple.com>
adele@apple.com [Tue, 20 May 2008 23:38:44 +0000 (23:38 +0000)]
2008-05-20  Kevin Calhoun  <kcalhoun@apple.com>

        Reviewed by Darin.

        Fix <rdar://problem/5929010> Adopt new QTKit methods for <video> implementation

        If the class QTVideoRendererWebKitOnly is present use it to render video,
        otherwise fall back to existing use of QTMovieView/QTMovieContentView.

        * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
        (WebCore::MediaPlayerPrivate::createQTMovie):
        (WebCore::QTVideoRendererClass):
        (WebCore::MediaPlayerPrivate::detachQTMovieView):
        (WebCore::MediaPlayerPrivate::createQTVideoRenderer):
        (WebCore::MediaPlayerPrivate::destroyQTVideoRenderer):
        (WebCore::MediaPlayerPrivate::setUpVideoRendering):
        (WebCore::MediaPlayerPrivate::tearDownVideoRendering):
        (WebCore::MediaPlayerPrivate::load):
        (WebCore::MediaPlayerPrivate::cancelLoad):
        (WebCore::MediaPlayerPrivate::setVisible):
        (WebCore::MediaPlayerPrivate::paint):
        (-[WebCoreMovieObserver newImageAvailable:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33948 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 23:32:49 +0000 (23:32 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Darin.

        <rdar://problem/5950796> JSProfiler: dump functions are in the code
        Removed dump and logging functions from the Release version of the code
        and renamed them to be obviously for debugging only.

        * JavaScriptCore.exp:
        * profiler/Profile.cpp:
        (KJS::Profile::debugPrintData):
        (KJS::Profile::debugPrintDataSampleStyle):
        * profiler/Profile.h:
        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::debugPrintData):
        (KJS::ProfileNode::debugPrintDataSampleStyle):
        * profiler/ProfileNode.h:
        * profiler/Profiler.cpp:
        * profiler/Profiler.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33947 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Fix Bug 19134: Inspector should support console.assert
aroben@apple.com [Tue, 20 May 2008 23:05:51 +0000 (23:05 +0000)]
    Fix Bug 19134: Inspector should support console.assert

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

        Reviewed by Tim Hatcher.

        Test: manual-tests/inspector/console-assert.html

        * bindings/js/JSConsoleCustom.cpp:
        (WebCore::JSConsole::assertCondition): Added.
        * bindings/scripts/CodeGeneratorJS.pm: Added parsing of the
        ImplementationFunction extended attribute, which allows you to
        override the name of the C++ function used to implement this method.
        * manual-tests/inspector/console-assert.html: Added.
        * page/Console.cpp:
        (WebCore::Console::assertCondition): Added.
        * page/Console.h:
        * page/Console.idl: Added assert().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33946 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 23:05:21 +0000 (23:05 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Adam.

        <rdar://problem/5950538> JSProfiler: Keep track of non-JS execution time
        We now have an extra node that represents the excess non-JS time.
        - Also changed "SCRIPT" and "anonymous function" to be more consistent
        with the debugger.

        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::stopProfiling): If this ProfileNode is the head node
        create a new child that has the excess execution time.
        (KJS::ProfileNode::calculatePercentages): Moved calculation of the
        percentages into a function since it's called from multiple places.
        * profiler/ProfileNode.h: Add the newly needed functions used above.
        (KJS::ProfileNode::setTotalTime):
        (KJS::ProfileNode::setSelfTime):
        (KJS::ProfileNode::setNumberOfCalls):
        * profiler/Profiler.cpp: renamed "SCRIPT" and "anonymous function" to be
        consistent with the debugger and use constants that can be localized
        more easily.
        (KJS::getCallIdentifiers):
        (KJS::getCallIdentifierFromFunctionImp):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33945 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 21:29:08 +0000 (21:29 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/5770054> JavaScript profiler (10928)
        Removed only profiler-internal use of currentProfile since that concept
        is changing.

        * profiler/Profile.h: Now stopProfiling takes a time and bool as
        arguments.  The time is used to calculate %s from and the bool tells
        if this node is the head node and should be the one calculating the time.
        (KJS::Profile::stopProfiling):
        * profiler/ProfileNode.cpp: Ditto.
        (KJS::ProfileNode::stopProfiling):
        * profiler/ProfileNode.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33943 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 21:02:41 +0000 (21:02 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Accidentally turned on the profiler.

        * kjs/config.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33942 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 20:59:16 +0000 (20:59 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/5770054> JavaScript profiler (10928)
        Split function name into 3 parts so that the Web Inspector can link it to
        the resource location from whence it came.

        * kjs/ustring.cpp: Implemented operator> for UStrings
        (KJS::operator>):
        * kjs/ustring.h:
        * profiler/Profile.cpp:
        (KJS::Profile::Profile): Initialize all 3 values.
        (KJS::Profile::willExecute): Use CallIdentifier struct.
        (KJS::Profile::didExecute): Ditto.
        * profiler/Profile.h: Ditto and remove unused function.
        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::ProfileNode): Use CallIdentifier struct.
        (KJS::ProfileNode::willExecute): Ditto and fix an issue where we
        restarted the m_startTime even though it was already started.
        (KJS::ProfileNode::didExecute): Ditto.
        (KJS::ProfileNode::findChild): Ditto.
        (KJS::functionNameDescendingComparator): Ditto and use new comparator.
        (KJS::functionNameAscendingComparator): Ditto.
        (KJS::ProfileNode::printDataInspectorStyle): Use CallIdentifier struct.
        (KJS::ProfileNode::printDataSampleStyle): Ditto.
        * profiler/ProfileNode.h:
        (KJS::CallIdentifier::CallIdentifier): Describe the CallIdentifier struct
        (KJS::CallIdentifier::operator== ):
        (KJS::ProfileNode::create): Use the CallIdentifier struct.
        (KJS::ProfileNode::callIdentifier):
        (KJS::ProfileNode::functionName): Now only return the function name, not
        the url and line number too.
        (KJS::ProfileNode::url):
        (KJS::ProfileNode::lineNumber):
        * profiler/Profiler.cpp: Use the CallIdentifier struct.
        (KJS::Profiler::startProfiling):
        (KJS::Profiler::willExecute):
        (KJS::Profiler::didExecute):
        (KJS::getCallIdentifiers):
        (KJS::getCallIdentifierFromFunctionImp):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33941 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Alice Liu <alice.liu@apple.com>
alice.liu@apple.com [Tue, 20 May 2008 20:51:21 +0000 (20:51 +0000)]
2008-05-20  Alice Liu  <alice.liu@apple.com>

        Reviewed by Brady.

        fix <rdar://problem/5908580> 10A58: Dictionary Panel hangs in WebCore::Cache::pruneDeadResources()

        * loader/Cache.cpp:
        (WebCore::Cache::requestUserCSSStyleSheet):
        Add a call to resourceAccessed() to more closely mirror what is done in requestResource()
        (WebCore::Cache::insertInLRUList):
        Assert that any resource in the LRU list has been accessed.  This is early detection of a
        potential hang later when pruning resources, and also agrees with the early return in
        removeFromLRUList().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33940 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
mitz@apple.com [Tue, 20 May 2008 19:15:09 +0000 (19:15 +0000)]
WebCore:

        Reviewed by Darin Adler.

        - fix https://bugs.webkit.org/show_bug.cgi?id=17655
          <rdar://problem/5778077> REGRESSION (3.1.1-TOT): Reproducible crash calling querySelector on viewless Document

        Test: fast/dom/SelectorAPI/viewless-document.html

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::CSSStyleSelector): Updated to initialize the
        selector checker.
        (WebCore::CSSStyleSelector::init): Removed initialization of
        m_collectRulesOnly, which is now part of the selector checker.
        (WebCore::CSSStyleSelector::matchRules): Updated for renames and data
        moved into the selector checker.
        (WebCore::CSSStyleSelector::matchRulesForList): Ditto.
        (WebCore::CSSStyleSelector::initForStyleResolve): Added a PseudoId
        argument, which is used to initialize a data member of the selector
        checker. Updated for renames. Removed initialization of m_isXMLDoc
        because this bit is now initialized only once in the selector checker's
        constructor.
        (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker): Added.
        (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Changed
        into a SelectorChecker method.
        (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): Added. Used
        by querySelector() and querySelectorAll().
        (WebCore::CSSStyleSelector::canShareStyleWithElement): Updated for data
        moved into the selector checker.
        (WebCore::CSSStyleSelector::matchUARules): Ditto.
        (WebCore::CSSStyleSelector::styleForElement):
        (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. Also removed
        code that set the parentStyle variable after the last place it is
        accessed, and changed to ensure that m_style is set early in this
        function.
        (WebCore::CSSStyleSelector::adjustRenderStyle): Updated for data moved
        into the selector checker.
        (WebCore::CSSStyleSelector::styleRulesForElement): Ditto.
        (WebCore::CSSStyleSelector::checkSelector): Ditto. Also changed to pass
        the element's style and the parent style to the selector checker, as
        well as the dynamic pseudo variable and the selector attributes vector.
        (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added
        arguments for the style of the base element and its parent. When the
        elementStyle argument is 0, the style is fetched from the element
        and its parent as needed. Also changed to take a reference to the
        dynamic pseudo ID and a pointer to the vector of attributes affecting
        the match.
        (WebCore::CSSStyleSelector::applyProperty): Updated for data moved
        into the selector checker.
        (WebCore::CSSStyleSelector::checkForGenericFamilyChange): Ditto.
        (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto.
        (WebCore::CSSStyleSelector::fontSizeForKeyword): Ditto.
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Ditto.
        (WebCore::CSSStyleSelector::SelectorChecker::allVisitedStateChanged):
        Changed into a SelectorChecker method.
        (WebCore::CSSStyleSelector::SelectorChecker::visitedStateChanged):
        Ditto.

        * css/CSSStyleSelector.h:
        Added a SelectorChecker class and moved data and methods used in
        checking selectors into it.
        (WebCore::CSSStyleSelector::allVisitedStateChanged): Changed to call the
        SelectorChecker method.
        (WebCore::CSSStyleSelector::visitedStateChanged): Ditto.
        * dom/Node.cpp:
        (WebCore::Node::querySelector): Changed to use a SelectorChecker instead
        of the document's style selector.
        * dom/SelectorNodeList.cpp:
        (WebCore::SelectorNodeList::SelectorNodeList): Ditto.

LayoutTests:

        Reviewed by Darin Adler.

        - test for https://bugs.webkit.org/show_bug.cgi?id=17655
          <rdar://problem/5778077> REGRESSION (3.1.1-TOT): Reproducible crash calling querySelector on viewless Document

        * fast/dom/SelectorAPI/resources/viewless-document.js: Added.
        * fast/dom/SelectorAPI/viewless-document-expected.txt: Added.
        * fast/dom/SelectorAPI/viewless-document.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoImplements the Profiles panel and Profile view.
timothy@apple.com [Tue, 20 May 2008 19:04:57 +0000 (19:04 +0000)]
Implements the Profiles panel and Profile view.

Reviewed by Kevin McCullough.

* English.lproj/localizedStrings.js: Added new strings.
* page/inspector/Images/profileIcon.png: Added.
* page/inspector/Images/profilesIcon.png: Changed. New icon design
that fits in with the other toolbar icons.
* page/inspector/ProfileView.js:
(WebInspector.ProfileView): Remove custom table elements
and create a DataGrid. Sorts the profile by descending total time,
since the profiles aren't sorted by default.
(WebInspector.ProfileView.prototype.refresh): Clears the DataGrid
and recreates all the nodes. The selection is preserved.
(WebInspector.ProfileView.prototype.refreshShowAsPercents): Traverse
all the children and change showTotalTimeAsPercent and showSelfTimeAsPercent
to match the ProfileView values. Then call refresh on the child.
(WebInspector.ProfileView.prototype._sortData): Determine the sort
function to call on the head profile node. Call it and then call
refresh to rebuild the DataGrid.
(WebInspector.ProfileView.prototype._mouseDownInDataGrid): Return early
if the event is not a double-click. When it is a double-click, determine
the column that was targeted and if it was total or self toggle the
show as percent property. Call refreshShowAsPercents.
(WebInspector.ProfileDataGridNode):
(WebInspector.ProfileDataGridNode.prototype.get data):
(WebInspector.ProfileDataGridNode.prototype.expand):
(WebInspector.ProfileDataGridNode.prototype.collapse):
(WebInspector.ProfileDataGridNode.prototype._populate):
* page/inspector/ProfilesPanel.js:
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype.show): Populate the sidebar
with all profiles. This is a workaround until the Inspector
is told about new profiles.
(WebInspector.ProfilesPanel.prototype.reset): Clear the sidebar and
profile views.
(WebInspector.ProfilesPanel.prototype.handleKeyEvent): Pass the key
event to the sidebar.
(WebInspector.ProfilesPanel.prototype.addProfile): Create a
ProfileSidebarTreeElement object and add it to the sidebar.
(WebInspector.ProfilesPanel.prototype.showProfile): Create a ProfileView
and show it.
(WebInspector.ProfilesPanel.prototype.closeVisibleView): Hide the
visible view.
(WebInspector.ProfilesPanel.prototype._startSidebarDragging): Call
WebInspector.elementDragStart.
(WebInspector.ProfilesPanel.prototype._sidebarDragging): Call _updateSidebarWidth.
(WebInspector.ProfilesPanel.prototype._endSidebarDragging):
Call WebInspector.elementDragEnd.
(WebInspector.ProfilesPanel.prototype._updateSidebarWidth): Update the
sidebar width based on the passed in value.
(WebInspector.ProfileSidebarTreeElement): Subclass WebInspector.SidebarTreeElement.
(WebInspector.ProfileSidebarTreeElement.prototype.onselect): Call ProfilesPanel.showProfile.
(WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): Return profile.title.
(WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle): Do nothing.
(WebInspector.ProfileSidebarTreeElement.prototype.get subtitle): Ditto.
(WebInspector.ProfileSidebarTreeElement.prototype.set subtitle): Ditto.
* page/inspector/inspector.css: New styles for the profile sidebar
item and profile data grid columns.
* page/inspector/inspector.js:
* page/inspector/utilities.js:
(Number.secondsToString): Added a higherResolution argument
that returns fractional milliseconds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33938 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5060458> Elements without AXActions should not return kAXErrorFailure
cfleizach@apple.com [Tue, 20 May 2008 18:39:05 +0000 (18:39 +0000)]
<rdar://problem/5060458> Elements without AXActions should not return kAXErrorFailure
<rdar://problem/3438014> Might need accessibility solution for context menus in web pages

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33937 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoExpose the ProfileNode functionName sorting functions on
timothy@apple.com [Tue, 20 May 2008 17:12:40 +0000 (17:12 +0000)]
Expose the ProfileNode functionName sorting functions on
JavaScriptProfileNode.

Reviewed by Kevin McCullough.

* page/JavaScriptProfileNode.cpp:
(WebCore::sortFunctionNameDescending): Call ProfileNode.
(WebCore::sortFunctionNameAscending): Ditto.
(WebCore::ProfileNodeClass): Add static functions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33936 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRename sortFileName{Ascending,Descending} to
timothy@apple.com [Tue, 20 May 2008 17:12:10 +0000 (17:12 +0000)]
Rename sortFileName{Ascending,Descending} to
sortFunctionName{Ascending,Descending}.

Reviewed by Kevin McCullough.

* JavaScriptCore.exp:
* kjs/config.h:
* profiler/Profile.h:
* profiler/ProfileNode.cpp:
(KJS::functionNameDescendingComparator):
(KJS::ProfileNode::sortFunctionNameDescending):
(KJS::functionNameAscendingComparator):
(KJS::ProfileNode::sortFunctionNameAscending):
* profiler/ProfileNode.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33935 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 20 May 2008 16:41:43 +0000 (16:41 +0000)]
2008-05-20  Darin Adler  <darin@apple.com>

        Reviewed by Mitz.

        - a first small step of CSS DOM refactoring -- the eventual goal is to
          reduce StyleBase and possibly eliminate it, since it has multiple
          purposes and unneccessarily ties many classes together

        * css/CSSCursorImageValue.cpp:
        (WebCore::isSVGCursorIdentifier): Mark static so it has internal linkage.
        (WebCore::resourceReferencedByCursorElement): Ditto.
        (WebCore::CSSCursorImageValue::CSSCursorImageValue): Removed unused style
        argument.
        (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Removed code to
        check if X and Y changed before changing them -- there's no reason to do
        that. Removed code that depended on the internals of CSSImageValue. The
        new code uses only protected functions rather than going right at the
        fields and uing internal knowledge of the base class.
        * css/CSSCursorImageValue.h: Added a create function, made constructor
        private, removed unused style argument.

        * css/CSSImageValue.cpp:
        (WebCore::CSSImageValue::CSSImageValue): Removed unused style argument.
        (WebCore::CSSImageValue::cachedImageURL): Added. A protected function for
        use by CSSCursorImageValue that gives the URL.
        (WebCore::CSSImageValue::clearCachedImage): Added. A protected function for
        use by CSSCursorImageValue that clears the CachedImage.
        * css/CSSImageValue.h: Added create functions, made constructors protected
        and private, removed unused style argument, made data members private, added
        some protected functions for use by CSSCursorImageValue.

        * css/CSSImportRule.cpp:
        (WebCore::CSSImportRule::setCSSStyleSheet): Changed to call checkLoaded on
        the parent. This is part of preparation to move the checkLoaded function from
        StyleBase to StyleSheet.
        (WebCore::CSSImportRule::insertedIntoParent): Changed code to check the URL
        of the style sheet to use the href function of the style sheet rather than
        the baseURL function. This eliminates an O(n^2) algorithm here and reduces
        the use of baseURL, part of preparation to move it from StyleBase
        to CSSStyleSheet.

        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::setImageProperty): Changed to use create
        function instead of a direct call to new for the CSSImageValue classes.
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue): Ditto.
        (WebCore::CSSParser::parseContent): Ditto.
        (WebCore::CSSParser::parseFillImage): Ditto.
        (WebCore::CSSParser::parseBorderImage): Ditto.

        * css/CSSStyleSelector.cpp: Removed unneeded include of CSSImageValue.h.
        * rendering/style/RenderStyle.h: Removed unneeded include of
        CSSCursorImageValue.h, which was causing us to rebuild the world way too often.

        * xml/XSLImportRule.cpp:
        (WebCore::XSLImportRule::setXSLStyleSheet): See change to CSSImportRule above.
        (WebCore::XSLImportRule::loadSheet): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33934 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 15:55:23 +0000 (15:55 +0000)]
2008-05-20  Kevin McCullough  <kmccullough@apple.com>

        Rubber stamped by Adam.

        -Minor fix. Should not use a reference since the original may disappear.

        * page/Console.cpp:
        (WebCore::Console::profile):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33933 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agowx build fixes for PluginViewWx.cpp and WebKit/wx/WebView.cpp
kevino@webkit.org [Tue, 20 May 2008 15:40:56 +0000 (15:40 +0000)]
wx build fixes for PluginViewWx.cpp and WebKit/wx/WebView.cpp

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33932 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoExpose the ProfileNode sorting functions on JavaScriptProfileNode.
timothy@apple.com [Tue, 20 May 2008 13:58:27 +0000 (13:58 +0000)]
Expose the ProfileNode sorting functions on JavaScriptProfileNode.

Reviewed by Kevin McCullough.

* page/JavaScriptProfileNode.cpp:
(WebCore::sortTotalTimeDescending): Call ProfileNode.
(WebCore::sortTotalTimeAscending): Ditto.
(WebCore::sortSelfTimeDescending): Ditto.
(WebCore::sortSelfTimeAscending): Ditto.
(WebCore::sortCallsDescending): Ditto.
(WebCore::sortCallsAscending): Ditto.
(WebCore::ProfileNodeClass): Add static static functions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33931 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake the profiler use higher than millisecond resolution time-stamps.
timothy@apple.com [Tue, 20 May 2008 13:58:12 +0000 (13:58 +0000)]
Make the profiler use higher than millisecond resolution time-stamps.

Reviewed by Kevin McCullough.

* kjs/DateMath.cpp:
(KJS::getCurrentUTCTime): Call getCurrentUTCTimeWithMicroseconds and
floor the result.
(KJS::getCurrentUTCTimeWithMicroseconds): Copied from the previous
implementation of getCurrentUTCTime without the floor call.
* kjs/DateMath.h: Addded getCurrentUTCTimeWithMicroseconds.
* profiler/ProfileNode.cpp:
(KJS::ProfileNode::ProfileNode): Use getCurrentUTCTimeWithMicroseconds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33930 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago* page/InspectorController.cpp: Change the include for
timothy@apple.com [Tue, 20 May 2008 13:57:58 +0000 (13:57 +0000)]
* page/InspectorController.cpp: Change the include for
JavaScriptProfile.h to sue double quotes instead of backets.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33929 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFixes a bug in the profiler where call and apply would show up
timothy@apple.com [Tue, 20 May 2008 13:57:41 +0000 (13:57 +0000)]
Fixes a bug in the profiler where call and apply would show up
and double the time spent in a function. We don't want to show call
and apply at all in the profiles. This change excludes them.

Reviewed by Kevin McCullough.

* profiler/ProfileNode.cpp:
(KJS::ProfileNode::stopProfiling): Remove a second for loop and
calculate self time in the existing loop.
* profiler/Profiler.cpp:
(KJS::shouldExcludeFunction): Helper inline function that returns
true in the current function in an InternalFunctionImp and it is
has the functionName call or apply.
(KJS::Profiler::willExecute): Call shouldExcludeFunction and return
early if if returns true.
(KJS::Profiler::didExecute): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33928 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdds a DataGrid object that is used for multi-column data
timothy@apple.com [Tue, 20 May 2008 13:57:27 +0000 (13:57 +0000)]
Adds a DataGrid object that is used for multi-column data
and can contain hierarchical content with disclosure arrows.
A lot of DataGrid was copied from treeoutline.js. This change
makes the database views use the DataGrid. It will later be
used by the ProfileView.

Reviewed by Adam Roben.

* page/inspector/DataGrid.js: Added. Most copied from treeoutline.js
and modified to work with table elements.
* page/inspector/DatabaseQueryView.js:
(WebInspector.DatabaseQueryView.prototype._queryFinished):
Call DatabasesPanel.dataGridForResult and adds the inline style to
the DataGrid element.
* page/inspector/DatabaseTableView.js:
(WebInspector.DatabaseTableView.prototype._queryFinished):
Call DatabasesPanel.dataGridForResult.
* page/inspector/DatabasesPanel.js:
(WebInspector.DatabasesPanel.prototype._tableForResult): Removed.
(WebInspector.DatabasesPanel.prototype.dataGridForResult): Added.
Similar to the previous _tableForResult function, but makes a DataGrid.
* page/inspector/inspector.css: Changes to the data-grid
style rules.
* WebCore.vcproj/WebCore.vcproj: Add DataGrid.js.
* page/inspector/WebKit.qrc: Ditto.
* page/inspector/inspector.html: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33927 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Tue, 20 May 2008 11:52:08 +0000 (11:52 +0000)]
2008-05-20  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Alp.

        http://bugs.webkit.org/show_bug.cgi?id=18483
        [Gtk] Autotools should match build-webkit default flags

        * configure.ac:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33926 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agofix changelog
slewis@apple.com [Tue, 20 May 2008 07:29:40 +0000 (07:29 +0000)]
fix changelog

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33921 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Tue, 20 May 2008 06:49:46 +0000 (06:49 +0000)]
2008-05-19  Stephanie Lewis  <slewis@apple.com>

        Explicitly set run mode to 32bit unless overridden to avoid
        confusion when running tests

        * Scripts/build-dumprendertree:
        * Scripts/gdb-safari:
        * Scripts/run-webkit-tests:
        * Scripts/webkitdirs.pm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33750 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Make WebKit.idl rebuild whenever any of its included interfaces are changed
aroben@apple.com [Tue, 20 May 2008 04:00:31 +0000 (04:00 +0000)]
    Make WebKit.idl rebuild whenever any of its included interfaces are changed

        Reviewed by Tim Hatcher.

        * WebKit.vcproj/DerivedSources.make: Touch WebKit.idl whenever any
        other IDL file is changed. This will force VS to rebuild WebKit.idl.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33598 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Adam Roben.
mitz@apple.com [Tue, 20 May 2008 03:42:50 +0000 (03:42 +0000)]
    Reviewed by Adam Roben.

        - update test results following <http://trac.webkit.org/changeset/33395>

        * platform/mac/fast/frames/viewsource-attribute-expected.checksum:
        * platform/mac/fast/frames/viewsource-attribute-expected.png:
        * platform/mac/fast/frames/viewsource-attribute-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33597 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 03:31:28 +0000 (03:31 +0000)]
2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/5770054> JavaScript profiler (10928)
        - Implement sorting by function name.

        * JavaScriptCore.exp:
        * profiler/Profile.h:
        (KJS::Profile::sortFileNameDescending):
        (KJS::Profile::sortFileNameAscending):
        * profiler/ProfileNode.cpp:
        (KJS::fileNameDescendingComparator):
        (KJS::ProfileNode::sortFileNameDescending):
        (KJS::fileNameAscendingComparator):
        (KJS::ProfileNode::sortFileNameAscending):
        * profiler/ProfileNode.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33596 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 03:23:34 +0000 (03:23 +0000)]
2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Adam.

        -build fix.

        * bindings/js/JSConsoleCustom.cpp:
        (WebCore::JSConsole::profile):
        * page/Console.cpp:
        (WebCore::Console::profile):
        * page/Console.h:
        * page/Console.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33595 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Alp Toker <alp@nuanti.com>
alp@webkit.org [Tue, 20 May 2008 03:19:04 +0000 (03:19 +0000)]
2008-05-19  Alp Toker  <alp@nuanti.com>

        Reviewed by Maciej.

        GTK+/soup fixes:

        Remove the fragment part of the URL since the file backend doesn't
        deal with it.

        Fix a typo in the cleanup function.

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::cleanupGioOperation):
        (WebCore::ResourceHandle::startGio):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33594 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoJavaScriptCore:
kmccullough@apple.com [Tue, 20 May 2008 02:03:14 +0000 (02:03 +0000)]
JavaScriptCore:

2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Adam.

        <rdar://problem/5770054> JavaScript profiler (10928)
        - Pass the exec state to profiler when calling startProfiling so that if
        profiling is started within an execution context that location is
        recorded correctly.

        * JavaScriptCore.exp:
        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::printDataInspectorStyle): Dump more info for debugging
        purposes.
        * profiler/Profiler.cpp:
        (KJS::Profiler::startProfiling):
        * profiler/Profiler.h:

WebCore:

2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Adam.

        <rdar://problem/5770054> JavaScript profiler (10928)
        - Send the executing context to the profiler so it can attribute time
        correctly to parent functions when calling profile() and profileEnd()
        while nested.

        * page/Console.cpp:
        (WebCore::Console::profile):
        (WebCore::Console::profileEnd):
        * page/Console.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33593 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 20 May 2008 01:14:28 +0000 (01:14 +0000)]
2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Rubberstamped by Geoff.

        Turn off the profiler because it is a performance regression.

        * kjs/config.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33592 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Alp Toker <alp@nuanti.com>
alp@webkit.org [Tue, 20 May 2008 01:12:20 +0000 (01:12 +0000)]
2008-05-19  Alp Toker  <alp@nuanti.com>

        Reviewed by Anders and Beth.

        http://bugs.webkit.org/show_bug.cgi?id=16495
        [GTK] Accessibility support with ATK/AT-SPI

        Initial ATK/AT-SPI accessibility support for the GTK+ port.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33591 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
andersca@apple.com [Tue, 20 May 2008 00:46:32 +0000 (00:46 +0000)]
WebCore:

2008-05-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Adam.

        <rdar://problem/5946454>
        Support navigator.onLine from HTML5.

        Add Windows NetworkStateNotifier implementation using the IP Helper API.

        * WebCore.vcproj/WebCore.vcproj:
        * platform/network/NetworkStateNotifier.h:
        (WebCore::updateState):
        * platform/network/win/NetworkStateNotifierWin.cpp: Added.
        (WebCore::NetworkStateNotifier::updateState):
        (WebCore::NetworkStateNotifier::addressChanged):
        (WebCore::NetworkStateNotifier::callAddressChanged):
        (WebCore::NetworkStateNotifier::addrChangeCallback):
        (WebCore::NetworkStateNotifier::registerForAddressChange):
        (WebCore::NetworkStateNotifier::NetworkStateNotifier):

WebKit/win:

2008-05-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Adam.

        <rdar://problem/5946454>
        Support navigator.onLine from HTML5.

        Link with iphlpapi.lib, and make iphlpapi.dll a delay loaded library.

        * WebKit.vcproj/WebKit.vcproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33590 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Disable C4273, C4565 for CSSGrammar.cpp, XPathGrammar.cpp to fix build.
sfalken@apple.com [Tue, 20 May 2008 00:00:46 +0000 (00:00 +0000)]
    Disable C4273, C4565 for CSSGrammar.cpp, XPathGrammar.cpp to fix build.

        Reviewed by Adam Roben.

        * WebCore.vcproj/WebCore.vcproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33587 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Fix Bug 19065: Resources with a space in their URL don't get error/warning...
aroben@apple.com [Mon, 19 May 2008 23:52:33 +0000 (23:52 +0000)]
    Fix Bug 19065: Resources with a space in their URL don't get error/warning bubbles

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

        Reviewed by Dan Bernstein.

        Test: manual-tests/inspector/errors-with-space in-url.html

        * manual-tests/inspector/errors-with-space in-url.html: Added.
        * page/Console.cpp:
        (WebCore::Console::error):
        (WebCore::Console::info):
        (WebCore::Console::log):
        (WebCore::Console::warn):
        Pass the raw URL to the Inspector, not the pretty URL, to match the
        URL that was used when initially telling the Inspector about this
        resource. We continue to pass the pretty URL to the ChromeClient for
        backwards compatibility.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33586 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Mon, 19 May 2008 23:22:08 +0000 (23:22 +0000)]
2008-05-19  Stephanie Lewis  <slewis@apple.com>

        Reviewed by Darin.

        more fast teardown performance work

        * Misc/WebDownload.m:
        (-[WebDownloadInternal downloadDidBegin:]):
        (-[WebDownloadInternal downloadDidFinish:]):
        (-[WebDownloadInternal download:didFailWithError:]):
        * WebCoreSupport/WebChromeClient.h:
        * WebCoreSupport/WebChromeClient.mm:
        (WebChromeClient::disableSuddenTermination):
        (WebChromeClient::enableSuddenTermination):

        more fast teardown performance work, WebCore plumbing

        * page/Chrome.cpp:
        (WebCore::Chrome::disableSuddenTermination):
        (WebCore::Chrome::enableSuddenTermination):
        (WebCore::ChromeClient::disableSuddenTermination):
        (WebCore::ChromeClient::enableSuddenTermination):
        * page/Chrome.h:
        * page/ChromeClient.h:
        * page/Page.cpp:
        (WebCore::Page::changePendingUnloadEventCount):
        (WebCore::Page::changePendingBeforeUnloadEventCount):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33585 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Alp Toker <alp@nuanti.com>
alp@webkit.org [Mon, 19 May 2008 23:06:49 +0000 (23:06 +0000)]
2008-05-19  Alp Toker  <alp@nuanti.com>

        GTK+ build fix for Mac/Win. Don't check for FreeType/FontConfig when
        the Pango font backend is selected.

        * GNUmakefile.am:
        * configure.ac:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33584 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Kuchhal <kuchal@yahoo.com>
justin.garcia@apple.com [Mon, 19 May 2008 22:44:45 +0000 (22:44 +0000)]
2008-05-19  Kuchhal  <kuchal@yahoo.com>

        Reviewed by Justin.

        <rdar://problem/5863412> Crash when Ctrl C is pressed after a series of specific mouse events (18506)

        * editing/markup.cpp:
        (WebCore::createMarkup): Null check.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33583 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5912195> CrashTracer: [USER] 1 crash in Mail at -[AccessibilityObject...
cfleizach@apple.com [Mon, 19 May 2008 22:17:09 +0000 (22:17 +0000)]
<rdar://problem/5912195> CrashTracer: [USER] 1 crash in Mail at -[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33582 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Mon, 19 May 2008 22:15:30 +0000 (22:15 +0000)]
2008-05-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/5770054> JavaScript profiler (10928)
        -In an effort to make the profiler as efficient as possible instead of
        prepending to a vector we keep the vector in reverse order and operate
        over it backwards.

        * profiler/Profile.cpp:
        (KJS::Profile::willExecute):
        (KJS::Profile::didExecute):
        * profiler/ProfileNode.cpp:
        (KJS::ProfileNode::didExecute):
        (KJS::ProfileNode::endAndRecordCall):
        * profiler/ProfileNode.h:
        * profiler/Profiler.cpp:
        (KJS::getStackNames):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33581 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Mon, 19 May 2008 20:44:20 +0000 (20:44 +0000)]
2008-05-19  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin, Alexey, Jess and Brady.

        Set the application cache path.

        * WebView.cpp:
        (WebKitSetApplicationCachePathIfNecessary):
        New function that sets the cache path.

        (WebView::initWithFrame):
        Set the application cache path.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33580 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdded methods to get/set current cookie storage.
adachan@apple.com [Mon, 19 May 2008 19:55:56 +0000 (19:55 +0000)]
Added methods to get/set current cookie storage.

WebCore:
        Added CookieStorageWin.h/cpp, introducing methods to get/set the current CFHTTPCookieStorageRef.
        When setting cookies-related attributes in CFURLRequest, make sure we get them from the
        current CFHTTPCookieStorageRef.  Also, set the cookie storage in CFURLRequest.

        Reviewed by Steve Falkenburg.

        * WebCore.vcproj/WebCore.vcproj:
        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::makeFinalRequest):
        * platform/network/cf/ResourceRequestCFNet.cpp:
        (WebCore::ResourceRequest::doUpdatePlatformRequest):
        * platform/network/win/CookieJarCFNetWin.cpp:
        (WebCore::setCookies):
        (WebCore::cookies):
        (WebCore::cookiesEnabled):
        * platform/network/win/CookieStorageWin.cpp: Added.
        (WebCore::currentCookieStorage):
        (WebCore::setCurrentCookieStorage):
        * platform/network/win/CookieStorageWin.h: Added.

WebKit/win:
        Added IWebCookieManager interface which allows client to set the
        CFHTTPCookieStorageRef that WebCore should use.

        Implement IWebCookieManager interface in WebCookieManager.

        Update the cookie accept policy in the current cookie storage.

        Reviewed by Steve Falkenburg.

        * ForEachCoClass.h:
        * Interfaces/IWebCookieManager.idl: Added.
        * Interfaces/WebKit.idl:
        * WebCookieManager.cpp: Added.
        (WebCookieManager::createInstance):
        (WebCookieManager::WebCookieManager):
        (WebCookieManager::~WebCookieManager):
        (WebCookieManager::QueryInterface):
        (WebCookieManager::AddRef):
        (WebCookieManager::Release):
        (WebCookieManager::cookieStorage):
        (WebCookieManager::setCookieStorage):
        * WebCookieManager.h: Added.
        * WebKit.vcproj/WebKit.vcproj:
        * WebKitClassFactory.cpp:
        * WebView.cpp:
        (updateSharedSettingsFromPreferencesIfNeeded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33579 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap@webkit.org [Mon, 19 May 2008 19:21:51 +0000 (19:21 +0000)]
    Reviewed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=18308
        SVG Encoding error with fill attribute

        This is caused by problems with data: URL loading. Besides what is fixed by this patch,
        I filed <rdar://problem/5845875> for CFNetwork.

        While at it, fixed a related javascript: URL issue.

        Tests: fast/loader/data-url-encoding-html.html
               fast/loader/data-url-encoding-svg.html
               fast/loader/javascript-url-encoding.html

        * platform/KURL.cpp:
        (WebCore::KURL::parse): Fix a FIXME, use UTF-8 instead of dropping high bytes. This fixes
        javascript: URL handling.
        (WebCore::encodeRelativeString): Like mailto: URLs, data: ones are all UTF-8. Restructured
        the code to not search for "#" if both parts are to be encoded as UTF-8 anyway.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33578 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Darin.
ap@webkit.org [Mon, 19 May 2008 19:12:55 +0000 (19:12 +0000)]
    Reviewed by Darin.

        https://bugs.webkit.org/show_bug.cgi?id=18421
        <rdar://problem/5857369> XMLHttpRequest does not properly encode & and < in outgoing messages

        Test: http/tests/xmlhttprequest/serialize-document.html

        * bindings/js/JSXMLHttpRequestCustom.cpp:
        (WebCore::JSXMLHttpRequest::send): Use createMarkup() instead of Document::toString().

        * dom/Attr.cpp:
        * dom/Attr.h:
        * dom/Document.cpp:
        * dom/Document.h:
        * dom/DocumentFragment.cpp:
        * dom/DocumentFragment.h:
        * dom/Element.cpp:
        * dom/Element.h:
        * dom/Entity.cpp:
        * dom/Entity.h:
        * dom/EntityReference.cpp:
        * dom/EntityReference.h:
        * dom/Node.h:
        * dom/Text.cpp:
        * dom/Text.h:
        * html/HTMLElement.cpp:
        * html/HTMLElement.h:
        Removed most Node::toString() methods, which were massively wrong, and only used for
        XMLHttpRequest::send(). The remanining ones are still used in markup.cpp, but should probably
        be folded into it for consistency.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33577 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Mon, 19 May 2008 18:33:30 +0000 (18:33 +0000)]
2008-05-19  Anders Carlsson  <andersca@apple.com>

        Fix Windows build.

        * plugins/win/PluginViewWin.cpp:
        (WebCore::PluginView::userAgentStatic):
        (WebCore::PluginView::getValueStatic):
        (WebCore::PluginView::getValue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33576 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5935694> AX: crash in text marker range
cfleizach@apple.com [Mon, 19 May 2008 18:22:11 +0000 (18:22 +0000)]
<rdar://problem/5935694> AX: crash in text marker range

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33575 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 19 May 2008 17:43:16 +0000 (17:43 +0000)]
2008-05-19  Darin Adler  <darin@apple.com>

        - fix WebKit build

        * WebCore.xcodeproj/project.pbxproj: Make CSSReflectionDirection.h "private" instead of "project".

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33574 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5700830> VO: VoiceOver should fall back to title attr if form element...
cfleizach@apple.com [Mon, 19 May 2008 16:56:46 +0000 (16:56 +0000)]
<rdar://problem/5700830> VO: VoiceOver should fall back to title attr if form element is not labeled

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33573 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 19 May 2008 16:42:26 +0000 (16:42 +0000)]
2008-05-19  Darin Adler  <darin@apple.com>

        Reviewed by Mitz.

        - tweak CSSReflectValue, possibly fixing the leaks seen on the buildbot

        * WebCore.vcproj/WebCore.vcproj: Added CSSReflectionDirection.h.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * css/CSSReflectionDirection.h: Added.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::valueForReflection): Changed to use CSSReflectValue::create.
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseReflect): Ditto.

        * css/CSSReflectValue.h: Added a create function. Got rid of the setter
        functions, which had const PassRefPtr& arguments -- those probably caused
        the leaks although I'm not exactly sure why. Made the contructor and all
        the data members private.

        * rendering/style/RenderStyle.h: Changed to include CSSReflectionDirection.h
        instead of CSSReflectValue.h so we can tweak CSSReflectValue without
        recompiling the world.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33572 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Mon, 19 May 2008 10:17:17 +0000 (10:17 +0000)]
2008-05-19  Holger Hans Peter Freyther  <zecke@selfish.org>

        Rubber Stamped by Simon.

        Enforce the WebKit Coding Style.

        * plugins/PluginView.cpp:
        (WebCore::PluginView::load):
        (WebCore::PluginView::setValue):
        * plugins/gtk/PluginViewGtk.cpp:
        (WebCore::PluginView::setFocus):
        (WebCore::PluginView::show):
        (WebCore::PluginView::hide):
        (WebCore::PluginView::attachToWindow):
        (WebCore::PluginView::detachFromWindow):
        (WebCore::PluginView::getValueStatic):
        (WebCore::PluginView::getValue):
        * plugins/qt/PluginViewQt.cpp:
        (WebCore::PluginView::updateWindow):
        (WebCore::PluginView::detachFromWindow):
        (WebCore::PluginView::handlePostReadFile):
        (WebCore::PluginView::getValueStatic):
        (WebCore::PluginView::getValue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33571 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-14 Marc Ordinas i Llopis <marc.ordinasillopis@collabora.co.uk>
zecke@webkit.org [Mon, 19 May 2008 10:09:38 +0000 (10:09 +0000)]
2008-05-14  Marc Ordinas i Llopis  <marc.ordinasillopis@collabora.co.uk>

        Reviewed by Holger.

        https://bugs.webkit.org/show_bug.cgi?id=18882
        https://bugs.webkit.org/show_bug.cgi?id=18892
        Based also on work by Chris Lord.

        Provides support for NPAPI plugins that pass NULL as their instance
        info. There are two kinds:
        - Some call NPN_UserAgent and NPN_GetValue before a PluginView has
        been created. For those we provide static versions of those functions.
        - Others call NPN_* functions with a NULL instance inside NPP_*
        calls, for those we've added extra currentPluginView guards.

        * plugins/PluginView.cpp: Add additional currentPluginView guards and
        some small style changes.
        (WebCore::PluginView::start):
        (WebCore::PluginView::performRequest):
        (WebCore::PluginView::bindingInstance):
        (WebCore::PluginView::handlePost):
        * plugins/PluginView.h: Added static versions of NPN_UserAgent and
        NPN_GetValue.
        * plugins/gtk/PluginViewGtk.cpp: Add additional currentPluginView
        guards and some small style changes.
        (WebCore::PluginView::setNPWindowRect):
        (WebCore::PluginView::stop):
        (WebCore::PluginView::userAgentStatic): Added to deal with plugins
        that query this before having a PluginView.
        (WebCore::PluginView::getValueStatic): Added to deal with plugins
        that call this before we have created a PluginView.
        (WebCore::PluginView::getValue): Moved some code to getValueStatic.
        (WebCore::PluginView::init):
        * plugins/npapi.cpp: Call PluginView::userAgentStatic
        and PluginView::getValueStatic if no PluginView is
        present.
        (NPN_UserAgent):
        (NPN_GetValue):
        * plugins/qt/PluginPackageQt.cpp:
        (WebCore::PluginPackage::fetchInfo): Corrected split args because ignoring
        empty entries crashed.
        (WebCore::PluginPackage::load): Resolve all symbols when loading plugins
        to protect against XPCOM dependencies.
        * plugins/qt/PluginViewQt.cpp: Add additional currentPluginView guards and
        some small style changes.
        (WebCore::PluginView::updateWindow):
        (WebCore::PluginView::setNPWindowRect):
        (WebCore::PluginView::stop):
        (WebCore::PluginView::userAgentStatic): Added to deal with plugins
        that query this before having a PluginView.
        (WebCore::PluginView::handlePostReadFile):
        (WebCore::PluginView::getValueStatic): Added to deal with plugins
        that call this before we have created a PluginView.
        (WebCore::PluginView::getValue): Moved some code to getValueStatic.
        (WebCore::PluginView::init): m_needsXEmbed init was moved to constructor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33570 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-19 Alp Toker <alp@nuanti.com>
alp@webkit.org [Mon, 19 May 2008 08:59:07 +0000 (08:59 +0000)]
2008-05-19  Alp Toker  <alp@nuanti.com>

        GTK+ build fix on Mac. Conditionalize XP_UNIX use.

        * plugins/gtk/PluginPackageGtk.cpp:
        (WebCore::PluginPackage::fetchInfo):
        (WebCore::PluginPackage::load):
        * plugins/gtk/PluginViewGtk.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33569 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5942076> WebKit can no longer find URL links with VoiceOVer-U command...
cfleizach@apple.com [Mon, 19 May 2008 03:58:08 +0000 (03:58 +0000)]
<rdar://problem/5942076> WebKit can no longer find URL links with VoiceOVer-U command (19100)

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33568 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
darin@apple.com [Mon, 19 May 2008 00:42:59 +0000 (00:42 +0000)]
WebCore:

2008-05-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam.

        - fix <rdar://problem/5943569> crash due to stale ownerNode pointer

        Test: fast/dom/StyleSheet/ownerNode-lifetime.html

        * bindings/js/JSStyleSheetCustom.cpp:
        (WebCore::JSStyleSheet::mark): Added code to mark ownerNode. Includes a comment about how
        it would be even better to solve this in the DOM rather than just in the JavaScript binding.

        * css/StyleSheet.idl: Added CustomMarkFunction attribute.

LayoutTests:

2008-05-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam.

        - test for <rdar://problem/5943569> crash due to stale ownerNode pointer

        * fast/dom/StyleSheet: Added.
        * fast/dom/StyleSheet/ownerNode-lifetime-expected.txt: Added.
        * fast/dom/StyleSheet/ownerNode-lifetime.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33567 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
beidson@apple.com [Sun, 18 May 2008 23:51:54 +0000 (23:51 +0000)]
WebCore:

2008-05-18  Brady Eidson  <beidson@apple.com>

        Reviewed by Sam Weinig

        Fix for https://bugs.webkit.org/show_bug.cgi?id=19111
        Allow `delete storage.itemName` syntax as an alias for `storage.removeItem("itemName")`

        Tests: storage/domstorage/localstorage/delete-removal.html
               storage/domstorage/sessionstorage/delete-removal.html

        * bindings/js/JSStorageCustom.cpp:
        (WebCore::JSStorage::deleteProperty): Only do the delete for non-built in properties
        * storage/Storage.idl:

LayoutTests:

2008-05-18  Brady Eidson  <beidson@apple.com>

        Reviewed by Sam Weinig

        Fix for https://bugs.webkit.org/show_bug.cgi?id=19111
        Allow `delete storage.itemName` syntax as an alias for `storage.removeItem("itemName")`

        * storage/domstorage/localstorage/delete-removal-expected.txt: Added.
        * storage/domstorage/localstorage/delete-removal.html: Added.
        * storage/domstorage/sessionstorage/delete-removal-expected.txt: Added.
        * storage/domstorage/sessionstorage/delete-removal.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33565 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Sam Weinig.
mitz@apple.com [Sun, 18 May 2008 19:08:50 +0000 (19:08 +0000)]
    Reviewed by Sam Weinig.

        - fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel

        * Panels/WebAuthenticationPanel.m:
        (-[WebAuthenticationPanel setUpForChallenge:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-17 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sun, 18 May 2008 03:41:53 +0000 (03:41 +0000)]
2008-05-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Re-factor core setRequestHeader logic into setRequestHeaderInternal.

        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::sameOriginRequest):
        (WebCore::XMLHttpRequest::setRequestHeader):
        (WebCore::XMLHttpRequest::setRequestHeaderInternal):
        * xml/XMLHttpRequest.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33561 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
weinig@apple.com [Sun, 18 May 2008 01:21:20 +0000 (01:21 +0000)]
WebCore:

2008-05-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Differentiate between cancelation errors and generic network error in XHR.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::requestFromDelegate):
        (WebCore::FrameLoader::cancelledError):
        * platform/network/ResourceErrorBase.h:
        (WebCore::ResourceErrorBase::setIsCancelation):
        (WebCore::ResourceErrorBase::isCancelation):
        (WebCore::ResourceErrorBase::ResourceErrorBase):
        Add state that differentiates between errors created by cancelation and those made
        by all other generic network errors as this differentiation is needed by some specs.

        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::open):
        (WebCore::XMLHttpRequest::loadRequestSynchronously):
        (WebCore::XMLHttpRequest::clearResponseEntityBody):
        (WebCore::XMLHttpRequest::genericError):
        (WebCore::XMLHttpRequest::networkError):
        (WebCore::XMLHttpRequest::abortError):
        (WebCore::XMLHttpRequest::didFail):
        * xml/XMLHttpRequest.h:
        * xml/XMLHttpRequestException.h:
        (WebCore::XMLHttpRequestException::):
        * xml/XMLHttpRequestException.idl:
        Add ABORT_ERR. This error cannot be raised with the current WebKit architecture
        as it requires the ability to cancel a synchronous XHR, which we cannot currently
        do.  It may be possible in the future though.

LayoutTests:

2008-05-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Update expected results for new ABORT_ERR.

        * fast/dom/Window/window-properties-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33559 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-17 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Sun, 18 May 2008 00:08:02 +0000 (00:08 +0000)]
2008-05-17  Mark Rowe  <mrowe@apple.com>

        Reviewed by Sam Weinig.

        Including wtf/Platform.h or using any of the macros it defines in headers that may be
        included from outside of the WebKit project causes any project using those headers to
        fail to build.

        * page/mac/WebDashboardRegion.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33555 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-17 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 17 May 2008 22:45:11 +0000 (22:45 +0000)]
2008-05-17  Sam Weinig  <sam@webkit.org>

        Reviewed by Brady Eidson.

        Re-factor send() logic a little to make adding cross-site requests easier.

        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::send):
        (WebCore::XMLHttpRequest::sameOriginRequest):
        (WebCore::XMLHttpRequest::loadRequestSynchronously):
        (WebCore::XMLHttpRequest::loadRequestAsynchronously):
        * xml/XMLHttpRequest.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33554 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Sat, 17 May 2008 06:43:12 +0000 (06:43 +0000)]
2008-05-16 Stephanie Lewis <slewis@apple.com>

Reviewed by Steve.

Get pending unload event count from WebCore.

 * Interfaces/IWebFramePrivate.idl:
 * WebFrame.cpp:
 (WebFrame::pendingFrameUnloadEventCount):
 * WebFrame.h:

Print out pending unload event count. Also print out main framename to match Mac. +
* DumpRenderTree/win/FrameLoadDelegate.cpp:
(descriptionSuitableForTestResult):
(FrameLoadDelegate::didFinishDocumentLoadForFrame):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Sat, 17 May 2008 05:34:09 +0000 (05:34 +0000)]
2008-05-16  Matt Lilek  <webkit@mattlilek.com>

        Rubber stamped by Oliver.

        Remove the Drosera sub-project.

        * WebKit.vcproj/WebKit.sln:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33548 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove the Drosera project, code and resources since it has been
timothy@apple.com [Sat, 17 May 2008 04:21:22 +0000 (04:21 +0000)]
Remove the Drosera project, code and resources since it has been
replaced with the Web Inspector's debugger. Removes references to
Drosera in various scripts and makefiles.

Rubber-stamped by Mark Rowe.

* BuildSlaveSupport/build-launcher-app:
* Drosera/DebuggerDocument.cpp: Removed.
* Drosera/DebuggerDocument.h: Removed.
* Drosera/Drosera.icns: Removed.
* Drosera/DroseraWin.make: Removed.
* Drosera/English.lproj/Debugger.nib/classes.nib: Removed.
* Drosera/English.lproj/Debugger.nib/info.nib: Removed.
* Drosera/English.lproj/Debugger.nib/keyedobjects.nib: Removed.
* Drosera/English.lproj/MainMenu.nib/classes.nib: Removed.
* Drosera/English.lproj/MainMenu.nib/info.nib: Removed.
* Drosera/English.lproj/MainMenu.nib/keyedobjects.nib: Removed.
* Drosera/ForwardingHeaders/wtf/Assertions.h: Removed.
* Drosera/ForwardingHeaders/wtf/HashTraits.h: Removed.
* Drosera/ForwardingHeaders/wtf/Noncopyable.h: Removed.
* Drosera/ForwardingHeaders/wtf/OwnPtr.h: Removed.
* Drosera/ForwardingHeaders/wtf/Platform.h: Removed.
* Drosera/ForwardingHeaders/wtf/RetainPtr.h: Removed.
* Drosera/Images/Drosera.ico: Removed.
* Drosera/Images/SourceArrow.png: Removed.
* Drosera/Images/SourceArrowBlank.png: Removed.
* Drosera/Images/SourceArrowOpen.png: Removed.
* Drosera/Images/background_stripe.png: Removed.
* Drosera/Images/breakPoint.tif: Removed.
* Drosera/Images/breakPointDisabled.tif: Removed.
* Drosera/Images/breakpointeditor.png: Removed.
* Drosera/Images/close.tif: Removed.
* Drosera/Images/close_active.tif: Removed.
* Drosera/Images/close_hover.tif: Removed.
* Drosera/Images/console.png: Removed.
* Drosera/Images/continue.tif: Removed.
* Drosera/Images/fileIcon.jpg: Removed.
* Drosera/Images/finishFunction.tif: Removed.
* Drosera/Images/glossyFooterFill.tif: Removed.
* Drosera/Images/glossyHeader.png: Removed.
* Drosera/Images/glossyHeaderPressed.png: Removed.
* Drosera/Images/gradientBackground.png: Removed.
* Drosera/Images/gutter.png: Removed.
* Drosera/Images/navLeftDisabled.png: Removed.
* Drosera/Images/navLeftNormal.png: Removed.
* Drosera/Images/navLeftPressed.png: Removed.
* Drosera/Images/navRightDisabled.png: Removed.
* Drosera/Images/navRightNormal.png: Removed.
* Drosera/Images/navRightPressed.png: Removed.
* Drosera/Images/pause.tif: Removed.
* Drosera/Images/popUpArrows.png: Removed.
* Drosera/Images/programCounter.tif: Removed.
* Drosera/Images/programCounterBreakPoint.tif: Removed.
* Drosera/Images/programCounterBreakPointDisabled.tif: Removed.
* Drosera/Images/run.tif: Removed.
* Drosera/Images/siteCollapsed.tif: Removed.
* Drosera/Images/siteExpanded.tif: Removed.
* Drosera/Images/siteIcon.tif: Removed.
* Drosera/Images/small.ico: Removed.
* Drosera/Images/splitterBar.tif: Removed.
* Drosera/Images/splitterDimple.tif: Removed.
* Drosera/Images/step.tif: Removed.
* Drosera/Images/stepOut.tif: Removed.
* Drosera/Images/stepOver.tif: Removed.
* Drosera/Images/stop.tif: Removed.
* Drosera/Images/toolbarBackground.png: Removed.
* Drosera/Images/verticalSplitterBar.tiff: Removed.
* Drosera/Images/verticalSplitterDimple.tiff: Removed.
* Drosera/Makefile: Removed.
* Drosera/breakpointEditor.html: Removed.
* Drosera/config.h: Removed.
* Drosera/console.css: Removed.
* Drosera/console.html: Removed.
* Drosera/console.js: Removed.
* Drosera/debugger.css: Removed.
* Drosera/debugger.html: Removed.
* Drosera/debugger.js: Removed.
* Drosera/mac/DebuggerApplication.h: Removed.
* Drosera/mac/DebuggerApplication.mm: Removed.
* Drosera/mac/DebuggerClient.h: Removed.
* Drosera/mac/DebuggerClient.mm: Removed.
* Drosera/mac/DebuggerDocumentPlatform.mm: Removed.
* Drosera/mac/Drosera.xcodeproj/project.pbxproj: Removed.
* Drosera/mac/Info.plist: Removed.
* Drosera/mac/LauncherInfo.plist: Removed.
* Drosera/mac/Makefile: Removed.
* Drosera/mac/ServerConnection.h: Removed.
* Drosera/mac/ServerConnection.mm: Removed.
* Drosera/mac/launcher.m: Removed.
* Drosera/mac/main.m: Removed.
* Drosera/viewer.css: Removed.
* Drosera/viewer.html: Removed.
* Drosera/win/BaseDelegate.h: Removed.
* Drosera/win/DebuggerClient.cpp: Removed.
* Drosera/win/DebuggerClient.h: Removed.
* Drosera/win/DebuggerDocumentPlatform.cpp: Removed.
* Drosera/win/Drosera.cpp: Removed.
* Drosera/win/Drosera.h: Removed.
* Drosera/win/Drosera.vcproj/Drosera.rc: Removed.
* Drosera/win/Drosera.vcproj/Drosera.vcproj: Removed.
* Drosera/win/DroseraPrefix.cpp: Removed.
* Drosera/win/DroseraPrefix.h: Removed.
* Drosera/win/Info.plist: Removed.
* Drosera/win/ServerConnection.cpp: Removed.
* Drosera/win/ServerConnection.h: Removed.
* Drosera/win/resource.h: Removed.
* Makefile:
* Scripts/build-drosera: Removed.
* Scripts/gdb-drosera: Removed.
* Scripts/run-drosera: Removed.
* Scripts/run-drosera-nightly.cmd: Removed.
* Scripts/run-drosera.cmd: Removed.
* Scripts/webkitdirs.pm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33547 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Brady Eidson <beidson@apple.com>
beidson@apple.com [Sat, 17 May 2008 01:46:18 +0000 (01:46 +0000)]
2008-05-16  Brady Eidson  <beidson@apple.com>

        Reviewed by Steve Falkenburg

        <rdar://problem/5942624> - Get LocalStorage persistence working on Windows

        * WebPreferenceKeysPrivate.h: Add the LocalStorageDirectory defaults key

        * WebPreferences.cpp:
        (WebPreferences::initializeDefaultSettings):
        (WebPreferences::localStorageDatabasePath):
        (WebPreferences::setLocalStorageDatabasePath):
        * WebPreferences.h:
        * Interfaces/IWebPreferencesPrivate.idl:

        * WebView.cpp:
        (WebView::initWithFrame): Set the path in the WebCore::Settings after new Page creation

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 17 May 2008 01:16:38 +0000 (01:16 +0000)]
2008-05-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Mitz.

        Copy appcache headers.

        * WebCore.vcproj/WebCore.vcproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33545 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
antti@apple.com [Sat, 17 May 2008 00:50:42 +0000 (00:50 +0000)]
WebCore:

2008-05-16  Antti Koivisto  <antti@apple.com>

        Reviewed by Anders.

        Fix <rdar://problem/5934400>
        Movie controller does not update on first load of http://www.apple.com/getamac/ads/

        The issue is that we execute scripts while there are still pending stylesheet loads.
        If the script depends on a stylesheet having been applied it may fail.

        This will make external script execution block on external stylesheet loads. A full
        fix (as discussed with Hyatt) will also need to block inline script execution.

        Test: http/tests/local/stylesheet-and-script-load-order-http.html

        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::notifyFinished):

LayoutTests:

2008-05-16  Antti Koivisto  <antti@apple.com>

        Reviewed by Anders.

        Test for <rdar://problem/5934400>
        Movie controller does not update on first load of http://www.apple.com/getamac/ads/

        * http/tests/local/stylesheet-and-script-load-order-http-expected.txt: Added.
        * http/tests/local/stylesheet-and-script-load-order-http.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33544 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/5582483> Mail compose area needs to allow AXValue to be settable
cfleizach@apple.com [Sat, 17 May 2008 00:28:11 +0000 (00:28 +0000)]
<rdar://problem/5582483> Mail compose area needs to allow AXValue to be settable

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33542 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoVersioning.
mrowe@apple.com [Sat, 17 May 2008 00:23:34 +0000 (00:23 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33540 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Sat, 17 May 2008 00:18:32 +0000 (00:18 +0000)]
2008-05-16  Stephanie Lewis  <slewis@apple.com>

        Reviewed by Maciej.

        track onbeforeunlaod event counts. Pretty much identical to unload event tracking.
        Also rename methods from onunload tracking to be more clear.

        increment/decrement event counts when onunload and onbeforeunload events are added/removed
        * dom/Document.cpp:
        (WebCore::Document::removeHTMLWindowEventListener):
        (WebCore::Document::addWindowEventListener):
        (WebCore::Document::removeWindowEventListener):
        (WebCore::Document::addPendingFrameUnloadEventCount):
        (WebCore::Document::removePendingFrameUnloadEventCount):
        (WebCore::Document::addPendingFrameBeforeUnloadEventCount):
        (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
        * dom/Document.h:

        clear onunload count after unload events are dispatched
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::stopLoading):

        track onunload and onbeforeunload event counts for each frame
        * page/EventHandler.cpp:
        (WebCore::EventHandler::EventHandler):
        (WebCore::EventHandler::addPendingFrameUnloadEventCount):
        (WebCore::EventHandler::removePendingFrameUnloadEventCount):
        (WebCore::EventHandler::clearPendingFrameUnloadEventCount):
        (WebCore::EventHandler::pendingFrameBeforeUnloadEventCount):
        (WebCore::EventHandler::addPendingFrameBeforeUnloadEventCount):
        (WebCore::EventHandler::removePendingFrameBeforeUnloadEventCount):
        (WebCore::EventHandler::clearPendingFrameBeforeUnloadEventCount):
        * page/EventHandler.h:

        clear unbeforeunload count after unbeforeunload events are detached
        * page/Frame.cpp:
        (WebCore::Frame::shouldClose):

        track total event count at page level
        * page/Page.cpp:
        (WebCore::Page::Page):
        (WebCore::Page::changePendingUnloadEventCount):
        (WebCore::Page::pendingBeforeUnloadEventCount):
        (WebCore::Page::changePendingBeforeUnloadEventCount):
        * page/Page.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33538 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
andersca@apple.com [Sat, 17 May 2008 00:07:15 +0000 (00:07 +0000)]
WebCore:

2008-05-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Mitz.

        <rdar://problem/5787788>
        REGRESSION: fast/loader/xmlhttprequest-missing-file-exception.html fails on Windows.

        Replicate the Mac behavior when a sync load fails.

        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::ResourceHandle::loadResourceSynchronously):

LayoutTests:

2008-05-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Mitz.

        <rdar://problem/5787788>
        REGRESSION: fast/loader/xmlhttprequest-missing-file-exception.html fails on Windows.

        Remove test from skipped list.

        * platform/win/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33537 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 16 May 2008 23:26:20 +0000 (23:26 +0000)]
2008-05-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Brady.

        Parse and set the headers on the response.

        * loader/appcache/ApplicationCacheStorage.cpp:
        (WebCore::ApplicationCacheStorage::store):
        (WebCore::parseHeader):
        (WebCore::parseHeaders):
        (WebCore::ApplicationCacheStorage::loadCache):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33536 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemoves WebScriptDebugServer files and related calls. This removes
timothy@apple.com [Fri, 16 May 2008 22:53:38 +0000 (22:53 +0000)]
Removes WebScriptDebugServer files and related calls. This removes
the hooks that Drosera uses for debugging. Now that the Web Inspector
has a better debugger, we don't need these anymore.

Reviewed by Sam Weinig.

* DefaultDelegates/WebScriptDebugServer.h: Removed.
* DefaultDelegates/WebScriptDebugServer.m: Removed.
* DefaultDelegates/WebScriptDebugServerPrivate.h: Removed.
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebKit.exp:
* WebView/WebScriptDebugDelegate.mm:
* WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed):
(WebScriptDebugger::callEvent):
(WebScriptDebugger::atStatement):
(WebScriptDebugger::returnEvent):
(WebScriptDebugger::exception):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
* WebView/WebViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33535 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdds the "this" object to the Local scope section of the
timothy@apple.com [Fri, 16 May 2008 22:30:12 +0000 (22:30 +0000)]
Adds the "this" object to the Local scope section of the
Scope Variables pane.

<rdar://problem/5774773> Web Inspector doesn't show the "this"
object in its variables list (10438)

Reviewed by Oliver Hunt.

* bindings/js/JSJavaScriptCallFrameCustom.cpp:
(WebCore::JSJavaScriptCallFrame::thisObject): Returns the thisObject
of the JavaScriptCallFrame impl. Returns jsNull if the impl is invalid.
* page/JavaScriptCallFrame.cpp:
(WebCore::JavaScriptCallFrame::thisObject): Return the thisValue from
the ExecState. Return 0 if m_exec is null.
* page/JavaScriptCallFrame.h:
* page/JavaScriptCallFrame.idl: Add thisObject.
* page/inspector/ObjectPropertiesSection.js:
(WebInspector.ObjectPropertiesSection): Adds two new arguments.
The ignoreHasOwnProperty tells the section to show all properties,
including inherited ones. And extraProperties is an object of
additional properties to show.
(WebInspector.ObjectPropertiesSection.prototype): Honor the
extraProperties and ignoreHasOwnProperty properties.
* page/inspector/ScopeChainSidebarPane.js:
(WebInspector.ScopeChainSidebarPane.prototype.update): Add a this
property to an extra object that is passed to the ObjectPropertiesSection.
Also pass true for ignoreHasOwnProperty since we want to show all properties.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33534 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-05-16 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 16 May 2008 22:26:58 +0000 (22:26 +0000)]
2008-05-16  Anders Carlsson  <andersca@apple.com>

        Reviewed by Brady.

        Add mimeType and textEncodingName to the resource table.

        * loader/appcache/ApplicationCacheStorage.cpp:
        (WebCore::ApplicationCacheStorage::openDatabase):
        (WebCore::ApplicationCacheStorage::store):
        (WebCore::ApplicationCacheStorage::loadCache):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@33533 268f45cc-cd09-0410-ab3c-d52691b4dbfc