Timeline



May 17, 2008:

9:53 PM Changeset in webkit [33562] by cwzwarich@webkit.org
  • 6 edits in branches/squirrelfish

2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>

Fix the last remaining blocking cases of this bug.

JavaScriptCore:

  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::ReadModifyResolveNode::emitCode):

LayoutTests:

  • fast/js/codegen-temporaries-expected.txt:
  • fast/js/resources/codegen-temporaries.js:
8:41 PM Changeset in webkit [33561] by weinig@apple.com
  • 3 edits in trunk/WebCore

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:
8:00 PM Changeset in webkit [33560] by oliver@apple.com
  • 22 edits
    2 deletes in branches/squirrelfish

Reverting r33553 as the patch is incomplete so breaks the build

6:21 PM Changeset in webkit [33559] by weinig@apple.com
  • 10 edits in trunk

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:
5:47 PM Changeset in webkit [33558] by mrowe@apple.com
  • 4 edits in tags/Safari-6526.6.1

Versioning.

5:46 PM Changeset in webkit [33557] by mrowe@apple.com
  • 2 edits in tags/Safari-6526.6.1/WebCore

Merge r33555.

5:12 PM Changeset in webkit [33556] by mrowe@apple.com
  • 1 copy in tags/Safari-6526.6.1

New tag.

5:08 PM Changeset in webkit [33555] by mrowe@apple.com
  • 2 edits in trunk/WebCore

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:
3:45 PM Changeset in webkit [33554] by weinig@apple.com
  • 3 edits in trunk/WebCore

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:
11:58 AM Changeset in webkit [33553] by ggaren@apple.com
  • 22 edits
    2 copies in branches/squirrelfish

JavaScriptCore:

2008-05-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

Behold: debugging.


SunSpider reports no change.

  • JavaScriptCore.xcodeproj/project.pbxproj: Added DebuggerCallFrame.h/.cpp, and created a debugger folder.
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): If the debugger is attached, always generate full scope chains for its sake.
  • VM/Machine.cpp: (KJS::Machine::unwindCallFrame): Notify the debugger when unwinding due to an exception, so it doesn't keep stale call frames around.

(KJS::Machine::execute): Set Callee to 0 in eval frames, so the
debugger can distinguish them from function call frames.

(KJS::Machine::debug): Simplified this function, since the debugger
doesn't actually need all the information we used to provide.

(KJS::Machine::privateExecute): Treat debugging hooks like other function
calls, so the code we hook into (the debugger UI) can be optimized.

  • kjs/debugger.cpp: Nixed these default callback implementations and made the callbacks pure virtual instead, so the compiler could tell me if I made a mistake in one of the subclasses.
  • kjs/debugger.h: Removed a bunch of irrelevent data from the debugger callbacks. Changed from passing an ExecState* to passing a DebuggerCallFrame*, since an ExecState* doesn't contain sufficient information anymore.
  • kjs/function.cpp: (KJS::globalFuncEval): Easiest bug fix evar!

WebCore:

2008-05-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

Updated for API changes in KJS::Debugger.

WebKit/mac:

2008-05-17 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Re-enabled previously disabled debugging functionality.


There are two major changes from how the WebKit debugger used to work:


(1) All the interesting bits are implemented down in JavaScriptCore. The
debugger just calls through to KJS::DebuggerCallFrame for everything.


(2) Instead of copyihng a pointer to an ExecState once, the debugger
copies the DebuggerCallFrame passed to it in each callback. This is
because the VM no longer maintains a fully transparent execution state
to which you can hold a pointer, and the DebuggerCallFrames it vends
are temporaries.


Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
from its function. This is safer than the old method, which was to
hold a stale ExecState* and hope for the best.

4:00 AM Changeset in webkit [33552] by cwzwarich@webkit.org
  • 10 edits in branches/squirrelfish

2008-05-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 18991: SquirrelFish: Major codegen issue in a.b=expr, a[b]=expr
<https://bugs.webkit.org/show_bug.cgi?id=18991>

Ensure that the code generated for assignments uses temporaries whenever
necessary. This patch covers the vast majority of situations, but there
are still a few left.

This patch also adds some missing cases to CodeBlock::dump().

JavaScriptCore:

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.h: (KJS::CodeGenerator::destinationForAssignResult): (KJS::CodeGenerator::leftHandSideNeedsCopy): (KJS::CodeGenerator::emitNodeForLeftHandSide):
  • kjs/NodeInfo.h:
  • kjs/grammar.y:
  • kjs/nodes.cpp: (KJS::AssignDotNode::emitCode): (KJS::ReadModifyDotNode::emitCode): (KJS::AssignBracketNode::emitCode): (KJS::ReadModifyBracketNode::emitCode): (KJS::ForInNode::ForInNode):
  • kjs/nodes.h: (KJS::ReadModifyResolveNode::): (KJS::AssignResolveNode::): (KJS::ReadModifyBracketNode::): (KJS::AssignBracketNode::): (KJS::AssignDotNode::): (KJS::ReadModifyDotNode::):

LayoutTests:

  • fast/js/codegen-temporaries-expected.txt:
  • fast/js/resources/codegen-temporaries.js:
1:37 AM Changeset in webkit [33551] by oliver@apple.com
  • 1 edit
    2 adds in branches/squirrelfish/LayoutTests

Forgot to check in the results to the activation gc tests

12:22 AM Changeset in webkit [33550] by oliver@apple.com
  • 3 edits
    4 adds in branches/squirrelfish

Bug 19106: SquirrelFish: Activation is not marked correctly
<https://bugs.webkit.org/show_bug.cgi?id=19106>

Reviewed by Maciej

We can't rely on the symbol table for a count of the number of globals
we need to mark as that misses duplicate parameters and 'this'. Now we
use the actual local register count from the codeBlock.

May 16, 2008:

11:43 PM Changeset in webkit [33549] by Stephanie Lewis
  • 6 edits in trunk

2008-05-16 Stephanie Lewis <Stephanie Lewis>

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):

10:34 PM Changeset in webkit [33548] by pewtermoose@webkit.org
  • 2 edits in trunk/WebKit/win

2008-05-16 Matt Lilek <webkit@mattlilek.com>

Rubber stamped by Oliver.

Remove the Drosera sub-project.

  • WebKit.vcproj/WebKit.sln:
9:21 PM Changeset in webkit [33547] by timothy@apple.com
  • 4 edits
    104 deletes in trunk/WebKitTools

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:
6:46 PM SquirrelFish edited by ggaren@apple.com
(diff)
6:46 PM Changeset in webkit [33546] by beidson@apple.com
  • 6 edits in trunk/WebKit/win

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
6:16 PM Changeset in webkit [33545] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Mitz.

Copy appcache headers.


  • WebCore.vcproj/WebCore.vcproj:
5:50 PM Changeset in webkit [33544] by Antti Koivisto
  • 3 edits
    2 adds in trunk

WebCore:

2008-05-16 Antti Koivisto <Antti Koivisto>

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 Koivisto>

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.
5:36 PM Changeset in webkit [33543] by mrowe@apple.com
  • 2 edits in tags/Safari-6526.6/WebCore

Merge r33497.

5:28 PM Changeset in webkit [33542] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/5582483> Mail compose area needs to allow AXValue to be settable

5:27 PM Changeset in webkit [33541] by oliver@apple.com
  • 9 edits
    2 adds in branches/squirrelfish

Bug 19076: SquirrelFish: RegisterFile can be corrupted if implictly reenter global scope with no declared vars
<https://bugs.webkit.org/show_bug.cgi?id=19076>

Reviewed by Geoff

Don't delay allocation of initial global RegisterFile, as we can't guarantee we will be able
to allocate the global 'this' register safely at any point after initialisation of the Global
Object.

Unfortunately this initial allocation caused a regression of 0.2-0.3%, however this patch adds
support for the static slot optimisation for the global Math object which brings it to a 0.3%
progression.

5:23 PM Changeset in webkit [33540] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

5:21 PM Changeset in webkit [33539] by mrowe@apple.com
  • 1 copy in tags/Safari-6526.6

New tag.

5:18 PM Changeset in webkit [33538] by Stephanie Lewis
  • 9 edits in trunk/WebCore

2008-05-16 Stephanie Lewis <Stephanie Lewis>

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:
5:07 PM Changeset in webkit [33537] by andersca@apple.com
  • 4 edits in trunk

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:
5:02 PM SquirrelFish edited by ggaren@apple.com
(diff)
4:26 PM Changeset in webkit [33536] by andersca@apple.com
  • 2 edits in trunk/WebCore

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):
3:53 PM Changeset in webkit [33535] by timothy@apple.com
  • 10 edits
    3 deletes in trunk/WebKit

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:
3:30 PM Changeset in webkit [33534] by timothy@apple.com
  • 7 edits in trunk/WebCore

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.

3:26 PM Changeset in webkit [33533] by andersca@apple.com
  • 2 edits in trunk/WebCore

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):
3:23 PM Changeset in webkit [33532] by kmccullough@apple.com
  • 9 edits in trunk

JavaScriptCore:

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)
Implement sorting for the profiler.
I chose to sort the profileNodes in place since there is no reason they
need to retain their original order.

  • JavaScriptCore.exp: Export the symbols.
  • profiler/Profile.h: Add the different ways a profile can be sorted. (KJS::Profile::sortTotalTimeDescending): (KJS::Profile::sortTotalTimeAscending): (KJS::Profile::sortSelfTimeDescending): (KJS::Profile::sortSelfTimeAscending): (KJS::Profile::sortCallsDescending): (KJS::Profile::sortCallsAscending):
  • profiler/ProfileNode.cpp: Implement those ways. (KJS::totalTimeDescendingComparator): (KJS::ProfileNode::sortTotalTimeDescending): (KJS::totalTimeAscendingComparator): (KJS::ProfileNode::sortTotalTimeAscending): (KJS::selfTimeDescendingComparator): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::selfTimeAscendingComparator): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::callsDescendingComparator): (KJS::ProfileNode::sortCallsDescending): (KJS::callsAscendingComparator): (KJS::ProfileNode::sortCallsAscending):
  • profiler/ProfileNode.h: No longer use a Deque since it cannot be sorted by std::sort and there was no reason not to use a Vector. I previously had though I would do prepending but am not. (KJS::ProfileNode::selfTime): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent): (KJS::ProfileNode::children):
  • profiler/Profiler.cpp: Removed these functions as they can be called directoy on the Profile object after getting the Vector of them. (KJS::getStackNames):
  • profiler/Profiler.h:

WebCore:

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)
Use a Vector instead of a Deque since we don't use the extra capabilities
of the Deque.

  • page/JavaScriptProfileNode.cpp: (WebCore::getChildren): (WebCore::toJS):
3:19 PM Changeset in webkit [33531] by beidson@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Anders

<rdar://problem/5942616> - Need to standardize LocalStorage persistence path

Took the opportunity to touch up another pref that needs the same standardization.
That pref is currently not in use on Mac.

  • WebView/WebPreferences.m: (-[WebPreferences _setFTPDirectoryTemplatePath:]): (-[WebPreferences _localStorageDatabasePath]): (-[WebPreferences _setLocalStorageDatabasePath:]): (-[WebPreferences _ftpDirectoryTemplatePath]):
2:30 PM Changeset in webkit [33530] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fix the build.

2:24 PM Changeset in webkit [33529] by andersca@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Brady.

Add a version table to the database.

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): (WebCore::ApplicationCacheStorage::openDatabase):
  • loader/appcache/ApplicationCacheStorage.h:
2:10 PM Changeset in webkit [33528] by timothy@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Restore some ChangeLog entries I nuked in the previous commits.

1:47 PM Changeset in webkit [33527] by timothy@apple.com
  • 7 edits in trunk

Adds the ability to evaluate expressions in the local scope
of the selected call frame.

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

Reviewed by Geoff Garen.

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::evaluate): Pass the exception
from evaluate to the calling ExecState.

  • page/JavaScriptCallFrame.cpp:

(WebCore::JavaScriptCallFrame::evaluate): Added an exception out
argument. Simplified the code by calling KJS:eval directly.

  • page/JavaScriptCallFrame.h: Change evalutate to take an exception

out argument.

  • page/inspector/Console.js: Check if the debugger is paused and

call evaluateInSelectedCallFrame on the Scripts panel.

  • page/inspector/ScriptsPanel.js: Added a paused getter and

evaluateInSelectedCallFrame which does the evaluation and updates
the scope variables pane afterwards.

1:47 PM Changeset in webkit [33526] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fixed the bug where the Inspector node highlight would not show
in the correct place for nodes in frames.

<rdar://problem/5712834> Elements in iframes are highlighted incorrectly (14408)

Reviewed by John Sullivan.

  • page/InspectorController.cpp:

(WebCore::convertFromFrameToMainFrame): Helper function to convert
IntRect coordinates from one frame to the main frame.
(WebCore::InspectorController::drawNodeHighlight): Call the
convertFromFrameToMainFrame helper for all the rects we get from
the node since they are in the owner frame's coordinate space.

1:46 PM Changeset in webkit [33525] by timothy@apple.com
  • 8 edits
    1 add in trunk/WebCore

Adds an error and warning count indicator at the bottom right in the
Inspector's status bar.

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

Initial implementation by Adam Roben.
Reviewed by Sam Weinig.

Test: manual-tests/inspector/error-warning-count.html

  • English.lproj/localizedStrings.js: Added new strings.
  • manual-tests/inspector/error-warning-count.html: Added.
  • page/inspector/Console.js:

(WebInspector.Console.prototype.show): Don't do anything if visible.
(WebInspector.Console.prototype.hide): Don't do anything if hidden.
Temporally set properties and classes to mimic the post-animation
values so panels like Elements in their updateStatusBarItems call will
size things to fit the final location.

  • page/inspector/ElementsPanel.js:

(WebInspector.ElementsPanel.prototype.updateBreadcrumbSizes):
Account for the #error-warning-count width when sizing breadcrumbs.

  • page/inspector/Resource.js:

(WebInspector.Resource.prototype.set errors): Update the global error count.
(WebInspector.Resource.prototype.set warnings): Update the global warning count.

  • page/inspector/inspector.css: Make .hidden's display property

!important to ensure things really hide, and added styling for the new

  • page/inspector/inspector.html: Added an #error-warning-count div

in the #anchored-status-bar-items div.

  • page/inspector/inspector.js:

(WebInspector.get errors): Added.
(WebInspector.set errors): Added. Calls _updateErrorAndWarningCounts.
(WebInspector.get warnings): Added.
(WebInspector.set warnings): Added. Calls _updateErrorAndWarningCounts.
(WebInspector._updateErrorAndWarningCounts): Added. Update the
(WebInspector.loaded): Add a click event listener to the
_updateErrorAndWarningCounts to display the initial error/warning counts.

1:38 PM Changeset in webkit [33524] by jchaffraix@webkit.org
  • 9 edits in trunk

WebCore:

2008-05-16 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Preparatory work for bug 9191: JS*ElementWrapperFactory should be autogenerated

Make video tags use a header guard so that make_names.pl for factory generation.

  • Add video tag guard in HTMLTagNames.in & give an extraDefines parameter to make_names.pl when generating HTMLNames.
  • Modify the different build systems to accomodate the new parameter.
  • Small make_names.pl clean up (mainly code generated coding style issue).
  • DerivedSources.make: Add HTML_FLAGS and pass it to make_names.pl if it is defined (similar to SVG)
  • GNUmakefile.am: Add HTML_FEATURES & HTML_FLAGS and pass it to make_names.pl if HTML_FLAGS is defined.
  • WebCore.pro: Pass $${DEFINES} to make_names.pl.
  • dom/make_names.pl:
  • html/HTMLElement.cpp: (WebCore::inlineTagList): Add ENABLE(VIDEO) guard.
  • html/HTMLTagNames.in: Ditto.

2008-05-16 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Preparatory work for bug 9191: JS*ElementWrapperFactory should be autogenerated

  • configure.ac: Add HTML_FLAGS and set it when video is enabled.
12:17 PM UsingGitWithWebKit edited by ddkilzer@apple.com
(diff)
11:47 AM Changeset in webkit [33523] by andersca@apple.com
  • 2 edits in trunk/WebCore

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

Reviewed by Mitz.

Fire progress events.


  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::startLoadingEntry):
10:28 AM Changeset in webkit [33522] by andersca@apple.com
  • 2 edits in trunk/WebKitSite

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

Reviewed by Jess.

Add manifest MIME type.


  • .htaccess:
10:27 AM Changeset in webkit [33521] by andersca@apple.com
  • 4 edits in trunk/WebCore

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

Reviewed by John.

Handle the case where the main resource load is cancelled while the cache attempt is in progress.


  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::mainReceivedError): Tell the group that the main resource failed to load.


  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::failedLoadingMainResource): Call cacheUpdateFailed.


(WebCore::ApplicationCacheGroup::cacheUpdateFailed):
Stop loading if the update failed.


  • loader/appcache/ApplicationCacheGroup.h:
10:26 AM Changeset in webkit [33520] by Chris Fleizach
  • 10 edits in trunk

<rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)

Adds support to select text ranges when enhanced accessibility is turned on

10:25 AM Changeset in webkit [33519] by andersca@apple.com
  • 2 edits in trunk/LayoutTests

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

Update test results now that navigator.onLine exists.


  • fast/dom/Window/window-properties-expected.txt:
7:25 AM Changeset in webkit [33518] by Simon Hausmann
  • 8 edits in trunk

2008-05-15 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Since WebKitGtk is fully using autotools now, clean-up the .pro/.pri files
from gtk-port.

5:06 AM Changeset in webkit [33517] by oliver@apple.com
  • 3 edits
    3 adds in branches/squirrelfish

Bug 19098: SquirrelFish: Ref'd temporaries can be clobbered
<https://bugs.webkit.org/show_bug.cgi?id=19098>

Patch from Cameron Zwarich
Reviewed by Oliver

When doing code generation for a statement list, increase the reference
count on a register that might eventually be returned, so that it doesn't
get clobbered by a request for a new temporary.

2:51 AM Changeset in webkit [33516] by mjs@apple.com
  • 3 edits
    6 adds in branches/squirrelfish

JavaScriptCore:

2008-05-16 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • kjs/JSActivation.cpp: (KJS::JSActivation::copyRegisters): Use numLocals from the code block rather than the size of the symbol table for the number of registers to copy, to account for duplicate parameters and vars with the same name as parameters (we still have potentially suboptimal codegen in that we allocate a local register for the var in the latter case but it is never used).

LayoutTests:

2008-05-16 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.

  • fast/js/duplicate-param-crash-expected.txt: Added.
  • fast/js/duplicate-param-crash.html: Added.
  • fast/js/resources/duplicate-param-crash.js: Added.
  • fast/js/resources/var-shadows-arg-crash.js: Added.
  • fast/js/var-shadows-arg-crash-expected.txt: Added.
  • fast/js/var-shadows-arg-crash.html: Added.
12:22 AM Changeset in webkit [33515] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Gtk build.

12:12 AM Changeset in webkit [33514] by Simon Hausmann
  • 3 edits in trunk/WebCore

Fix the Qt build.

12:10 AM Changeset in webkit [33513] by rwlbuis@webkit.org
  • 3 edits
    2 adds in trunk

Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=17433
getComputedStyle() -> clip returns empty string

Make getComputedStyle return a shape value for clip
if it is set.

Tests: fast/css/getPropertyValue-clip.html

May 15, 2008:

10:53 PM Changeset in webkit [33512] by kevino@webkit.org
  • 4 edits in trunk

wx build fix. Add rendering/style to includes dir.

10:10 PM Changeset in webkit [33511] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

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

  • Build fix.
8:27 PM Changeset in webkit [33510] by alice.liu@apple.com
  • 15 edits in trunk/WebCore

2008-05-15 Alice Liu <alice.liu@apple.com>

Reviewed by Beth Dakin.

Fixed <rdar://problem/5882283> Implement ARIA aria-activedescendant
Also added support for aria roles listbox and option, and aria-selected,
and aria-multiselectable for listboxes

  • dom/Element.cpp: (WebCore::Element::attributeChanged):
  • dom/Element.h:
  • dom/StyledElement.cpp: (WebCore::StyledElement::attributeChanged):
  • html/HTMLAttributeNames.in:
  • page/AXObjectCache.cpp: (WebCore::AXObjectCache::handleActiveDescendantChanged):
  • page/AXObjectCache.h: (WebCore::AXObjectCache::accessibilityEnabled): (WebCore::AXObjectCache::handleActiveDescendantChanged):
  • page/AccessibilityListBox.cpp: (WebCore::AccessibilityListBox::selectedChildren): (WebCore::AccessibilityListBox::visibleChildren):
  • page/AccessibilityListBox.h:
  • page/AccessibilityListBoxOption.h: (WebCore::AccessibilityListBoxOption::selectedChildren): (WebCore::AccessibilityListBoxOption::visibleChildren):
  • page/AccessibilityObject.cpp:
  • page/AccessibilityObject.h: (WebCore::AccessibilityObject::isListBox): (WebCore::AccessibilityObject::shouldFocusActiveDescendant): (WebCore::AccessibilityObject::activeDescendant): (WebCore::AccessibilityObject::handleActiveDescendantChanged):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::title): (WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId): (WebCore::AccessibilityRenderObject::focusedUIElement): (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant): (WebCore::AccessibilityRenderObject::activeDescendant): (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged): (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::ariaRoleAttribute): (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren): (WebCore::AccessibilityRenderObject::selectedChildren): (WebCore::AccessibilityRenderObject::ariaListboxVisibleChildren): (WebCore::AccessibilityRenderObject::visibleChildren):
  • page/AccessibilityRenderObject.h: (WebCore::AccessibilityRenderObject::isDetached):
  • page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
8:20 PM Changeset in webkit [33509] by timothy@apple.com
  • 3 edits
    3 adds in trunk

Fixes a bug in the view source parsing of text within <script>,
<style>, <xmp>, <textarea> and other special tags. The text was
being parsed as HTML and would be syntax highlighted if a "<"
was encountered.

<rdar://problem/5790805> Inspector's source view missing some words,
doubles others in JS source in <script> tag (17752)

Reviewed by Dave Hyatt.

Added test: fast/frames/viewsource-plain-text-tags.html

  • html/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::scriptHandler): Set scriptCodeSize and
scriptCodeResync to zero before an early return in view source mode.
This was causing text from a previous script tag to show up in
then next style tag.
(WebCore::HTMLTokenizer::parseTag): Enter an if block in view source
mode even if n is null. The n is property guarded in other places
and not used by view source mode. Removes a redundant null check on n.
Add a new null check of n before setting scriptSrcCharset. Other code
in HTMLTokenizer is already guarded for this code path.

8:20 PM Changeset in webkit [33508] by timothy@apple.com
  • 3 edits in trunk/WebCore

Changes the Web Inspector node highlight to be less aggressive
and only highlight when hovering over the selected node in the DOM
tree or breadcrumbs. You can highlight on hover for any node if
you hold down the Alt/Option key while hovering.

Reviewed by Kevin McCullough.

  • page/inspector/ElementsPanel.js:
  • page/inspector/inspector.js:
7:51 PM Changeset in webkit [33507] by kmccullough@apple.com
  • 5 edits in trunk/JavaScriptCore

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Cache some values to save on computing them repetitively. This will be a big savings when we sort since we won't have to walk the tree for every comparison!
  • We cache these values when we end profiling because otherwise we won't know which profile to get the totalTime for the whole profile from without retaining a reference to the head profile or looking up the profile from the list of all profiles.
  • Also it's safe to assume we won't be asked for these values while we are still profiling since the WebInspector only get's profileNodes from profiles that are in the allProfiles() list and a profile is only added to that list after it has finished and these values will no longer change.
  • JavaScriptCore.exp:
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::printDataInspectorStyle): (KJS::ProfileNode::printDataSampleStyle): (KJS::ProfileNode::endAndRecordCall):
  • profiler/ProfileNode.h: (KJS::ProfileNode::totalTime): (KJS::ProfileNode::selfTime): (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent):
  • profiler/Profiler.cpp: (KJS::Profiler::stopProfiling):
7:37 PM Changeset in webkit [33506] by Stephanie Lewis
  • 2 edits in trunk/WebKit/mac

2008-05-15 Stephanie Lewis <Stephanie Lewis>

fix mac build

  • WebView/WebView.mm: (-[WebView closeWithFastTeardown]):
7:31 PM Changeset in webkit [33505] by Stephanie Lewis
  • 2 edits in trunk/WebCore

2008-05-15 Stephanie Lewis <Stephanie Lewis>

Fix windows build

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading):
6:07 PM Changeset in webkit [33504] by Stephanie Lewis
  • 8 edits in trunk

2008-05-15 Stephanie Lewis <Stephanie Lewis>

Reviewed by Anders.

Turn on fast teardown. I added a preference for using full teardown because
the LEAKS output will be useless without a full teardown.

preference for fullteardown

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.m: (-[WebPreferences setFullDocumentTeardownEnabled:]): (-[WebPreferences fullDocumentTeardownEnabled]):
  • WebView/WebPreferencesPrivate.h:


on application quit dispatch unload events and destroy plugins then exit

  • WebView/WebView.mm: (-[WebView closeWithFastTeardown]): (-[WebView _close]):
  • WebView/WebViewPrivate.h:

export a symbol needed for fast teardown

  • WebCore.base.exp:
5:51 PM Changeset in webkit [33503] by Stephanie Lewis
  • 25 edits in trunk

2008-05-15 Stephanie Lewis <Stephanie Lewis>

Reviewed by Anders.

Keep track on pending unload event counts

No change in behavior so no new tests, but I am dumping the
unload event count to track the new variable.

  • WebCore.base.exp:

increment/decrement the count when an event is added/removed

  • dom/Document.cpp: (WebCore::Document::removeHTMLWindowEventListener): (WebCore::Document::addWindowEventListener): (WebCore::Document::removeWindowEventListener): (WebCore::Document::setPendingFrameUnloadEventCount):
  • dom/Document.h:

set the count to 0 for each frame after the unload event has been dispatched

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading):

keep track of the number of pending unload events for the eventHandler's frame

  • page/EventHandler.cpp: (WebCore::EventHandler::EventHandler):

(WebCore::EventHandler::pendingFrameUnloadEventCount):

(WebCore::EventHandler::setPendingFrameUnloadEventCount):

  • page/EventHandler.h:

keep track of the total number of pending unload events for all of the frames

  • page/Page.cpp: (WebCore::Page::Page): (WebCore::Page::pendingUnloadEventCount): (WebCore::Page::setPendingUnloadEventCount):

age/Page.h:

get the pending frame unload count from WebCore

  • WebView/WebFrame.mm: (-[WebFrame _pendingFrameUnloadEventCount]):
  • WebView/WebFramePrivate.h:

Dump the unload count for a frame after parsing is finished.

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didFinishDocumentLoadForFrame:]):

Dump unload event counts for frames.

  • fast/dom/Window/get-set-properties-expected.txt:
  • fast/events/onunload-expected.txt:
  • fast/events/onunload-not-on-body-expected.txt:
  • fast/events/onunload-window-property-expected.txt:
  • fast/forms/button-state-restore-expected.txt:
  • fast/history/history_reload-expected.txt:
  • fast/loader/onunload-form-submit-crash-2-expected.txt:
  • fast/loader/onunload-form-submit-crash-expected.txt:
  • http/tests/xmlhttprequest/xhr-onunload-expected.txt:
  • platform/mac/fast/loader/start-load-in-unload-expected.txt:
4:40 PM Changeset in webkit [33502] by sfalken@apple.com
  • 2 edits in trunk/WebCore

2008-05-15 Steve Falkenburg <sfalken@apple.com>

Fix build.

  • WebCore.vcproj/WebCore.vcproj:
4:39 PM Changeset in webkit [33501] by sullivan@apple.com
  • 2 edits in trunk/WebKit/mac

2008-05-15 John Sullivan <sullivan@apple.com>

Reviewed by Kevin Decker


  • fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of screen when new tab appears


The highlight should go away entirely, but this simple patch just makes it not jump away.
The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306>

  • WebInspector/WebNodeHighlight.m: (-[WebNodeHighlight _repositionHighlightWindow]): Bail out if target view isn't in a window
4:37 PM Changeset in webkit [33500] by Stephanie Lewis
  • 10 edits in trunk/WebKit/mac

2008-05-15 Stephanie Lewis <Stephanie Lewis>

Reviewed by Anders.

Track views that contain plugin instances so that they can be destroyed at application
quit without walking the entire document tree.

Add/Remove Netscape plugin views from instance list. Start/stop are when netscape
plugins are created and destroyed

  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView start]): (-[WebBaseNetscapePluginView stop]):


Add/remove WebKit plugin views from instance list

  • Plugins/WebPluginController.mm: (-[WebPluginController addPlugin:]): (-[WebPluginController destroyPlugin:]): (-[WebPluginController destroyAllPlugins]):

Add a set of views with plugin instances to the WebPluginDatabase

  • Plugins/WebPluginDatabase.h:
  • Plugins/WebPluginDatabase.mm: (-[WebPluginDatabase init]): (-[WebPluginDatabase dealloc]): (-[WebPluginDatabase addPluginInstanceView:]): (-[WebPluginDatabase removePluginInstanceView:]): (-[WebPluginDatabase removePluginInstanceViewsFor:]): (-[WebPluginDatabase destroyAllPluginInstanceViews]):


Handle cases where plugin views are detached before the plugin is destroyed.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::detachedFromParent2): (WebFrameLoaderClient::transitionToCommittedFromCachedPage): (WebFrameLoaderClient::transitionToCommittedForNewPage):

Add plugin instances to the set in the WebPluginDatabase by way of the WebView

  • WebView/WebHTMLView.mm:


  • WebView/WebHTMLViewInternal.h:
  • WebView/WebView.mm: (-[WebView addPluginInstanceView:]): (-[WebView removePluginInstanceView:]): (-[WebView removePluginInstanceViewsFor:]):
  • WebView/WebViewInternal.h:
4:10 PM Changeset in webkit [33499] by beidson@apple.com
  • 4 edits in trunk/WebKit

WebKit/mac:

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

Reviewed by Tim Hatcher

Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
before setting the page group of the new page.


  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path immediately after creating the page so it is in place for initializing the LocalStorageThread

WebKit/win:

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

Reviewed by Tim Hatcher

Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
before setting the page group of the new page.

Since I still need to add the local storage path to WebPreferences on Windows, mark this with a FIXME for now.

  • WebView.cpp: (WebView::initWithFrame): Mark an important FIXME for setting the LocalStorage path as appropriate. Until this FIXME is handled, Windows will have no persistent LocalStorage
4:03 PM Changeset in webkit [33498] by sfalken@apple.com
  • 2 edits in trunk/WebCore

2008-05-15 Steve Falkenburg <sfalken@apple.com>

Fix build.

  • WebCore.vcproj/WebCore.vcproj:
3:25 PM Changeset in webkit [33497] by sfalken@apple.com
  • 2 edits in trunk/WebCore

2008-05-15 Steve Falkenburg <sfalken@apple.com>

Fix build.

  • WebCore.vcproj/WebCore.vcproj:
2:08 PM Changeset in webkit [33496] by ddkilzer@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Bug 19085: font-family: initial sets font-family differently than font: initial

<https://bugs.webkit.org/show_bug.cgi?id=19085>
<rdar://problem/5939391>

Reviewed by David Hyatt.

Test: fast/css/font-family-initial.html

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): Don't set family if first family of initial font description is empty.

LayoutTests:

Bug 19085: font-family: initial sets font-family differently than font: initial

<https://bugs.webkit.org/show_bug.cgi?id=19085>
<rdar://problem/5939391>

Reviewed by David Hyatt.

  • fast/css/font-family-initial-expected.txt: Added.
  • fast/css/font-family-initial.html: Added.
2:00 PM Changeset in webkit [33495] by hyatt@apple.com
  • 6 edits
    2 moves
    1 add in trunk/WebCore

2008-05-15 David Hyatt <hyatt@apple.com>

Move RenderStyle into a new subdirectory, rendering/style/, in preparation for breaking it up into
a bunch of smaller files.

Reviewed by Dan Bernstein

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • rendering/RenderStyle.cpp: Removed.
  • rendering/RenderStyle.h: Removed.
  • rendering/style: Added.
  • rendering/style/RenderStyle.cpp: Copied from rendering/RenderStyle.cpp.
  • rendering/style/RenderStyle.h: Copied from rendering/RenderStyle.h.
1:42 PM Changeset in webkit [33494] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Fix leaks when stopping a page from loading

Patch suggested by Antti. Reviewed by Antti.

  • loader/DocLoader.cpp: (WebCore::DocLoader::clearPreloads): If a resource is in m_preloads but never made it to the cache, delete it to prevent it from leaking.
12:58 PM Changeset in webkit [33493] by timothy@apple.com
  • 2 edits in trunk/WebKit/mac

Fixes the bug where the Web Inspector would flash white while resizing.
This was cause by deferring the window creation.

<rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979)

Reviewed by Darin Adler.

  • WebCoreSupport/WebInspectorClient.mm:

(-[WebInspectorWindowController window]): Don't defer the window creation.

12:49 PM Changeset in webkit [33492] by jchaffraix@webkit.org
  • 3 edits
    2 adds in trunk

WebCore:

2008-05-15 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=13942
ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/

In HTML, when an attribute was null (for example when we parse '="somevalue"'
(attribute forgotten or there is a space between the attribute and the '=')),
the fallback was to assign the value to the attribute. However if the value was
a url or did contain a '/', we would trigger the assertion.

To avoid that, we check the value before assigning it now and do not assign it
if it means adding a '/'.

Test: fast/parser/assertion-empty-attribute.html

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Add check for '/' in value before assigning it to an attribute when the attribute is null.

LayoutTests:

2008-05-15 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Test case for https://bugs.webkit.org/show_bug.cgi?id=13942
ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/

  • fast/parser/assertion-empty-attribute-expected.txt: Added.
  • fast/parser/assertion-empty-attribute.html: Added.
10:22 AM Changeset in webkit [33491] by ap@webkit.org
  • 9 edits in trunk

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=10707
DumpRenderTree should not be able to access non-local resources

  • DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]): Block them, and complain.
10:02 AM Changeset in webkit [33490] by ap@webkit.org
  • 2 edits in trunk/WebKit/mac

Tiger build fix.

  • Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger.
9:18 AM Changeset in webkit [33489] by kevino@webkit.org
  • 2 edits in trunk/WebKitTools

wx build fix. Update the version of libpng to download and instsall.

8:52 AM Changeset in webkit [33488] by kevino@webkit.org
  • 4 edits
    6 adds in trunk/WebCore

wx build fix for recent breakages. Add EventLoopWx.cpp, update the Bakefiles, and add stubs for new Plugins functions. Also move plugin functions outside of TemporaryLinkStubs.cpp so that they are more noticeable.

7:51 AM Changeset in webkit [33487] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-05-15 Adam Treat <treat@kde.org>

Reviewed by Simon.

Don't try to setCompositionMode for devices that do not support PorterDuff

6:45 AM Changeset in webkit [33486] by ap@webkit.org
  • 7 edits in trunk

2008-05-15 Adele Peterson <adele@apple.com>

Reviewed and landed by Alexey.

Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].

6:25 AM Changeset in webkit [33485] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

Simon Hausmann <shausman@trolltech.com>

Fix compilation when compiling with MSVC and wchar_t support.

5:45 AM Changeset in webkit [33484] by oliver@apple.com
  • 11 edits in branches/squirrelfish/JavaScriptCore

Revert "Bug 18626: SQUIRRELFISH: support the "slow script" dialog"

This seems to cause a significant perf regression on some systems

2:31 AM Changeset in webkit [33483] by oliver@apple.com
  • 11 edits in branches/squirrelfish/JavaScriptCore

Bug 18626: SQUIRRELFISH: support the "slow script" dialog
<https://bugs.webkit.org/show_bug.cgi?id=18626>

Reviewed by Maciej

Support the slow script dialog for for(;;), while, and do..while
loops.

12:26 AM Changeset in webkit [33482] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-05-15 Simon Hausmann <Simon Hausmann>

Fix the Qt build by adding NetworkStateNotifier.cpp to the build.

12:14 AM Changeset in webkit [33481] by ggaren@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-05-15 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


We regret to inform you that your program is crashing because you were
stupid.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Math is hard.

May 14, 2008:

11:50 PM Changeset in webkit [33480] by ggaren@apple.com
  • 10 edits in branches/squirrelfish/JavaScriptCore

2008-05-14 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

A little more debugger action: filled in op_debug. All debugger control
flow works now, but variable inspection and backtraces still don't.


SunSpider reports no change.

  • VM/CodeGenerator.cpp: Changed op_debug to accept line number parameters.
  • VM/Machine.cpp: (KJS::Machine::getFunctionAndArguments): Moved op_debug into a NEVER_INLINE function to avoid a stunning 10% performance regression. Also factored out a common function for retrieving the function and arguments from a call frame.
  • kjs/JSActivation.cpp: (KJS::JSActivation::createArgumentsObject): Use the new factored out function mentioned above.
  • kjs/Parser.cpp: (KJS::Parser::parse): Increment m_sourceId before assigning it, so the sourceId we send to the debugger matches the sourceId recorded in the node.
  • kjs/nodes.cpp: Emit debugging hooks.
11:06 PM Changeset in webkit [33479] by mrowe@apple.com
  • 9 edits in tags/Safari-6526.5

Merge r33017.

10:52 PM Changeset in webkit [33478] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

10:49 PM Changeset in webkit [33477] by mrowe@apple.com
  • 1 copy in tags/Safari-6526.5

New tag.

10:49 PM Changeset in webkit [33476] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Mark Rowe.

  • fix <rdar://problem/5907633> Memory corruption after closing a document that uses box-reflect

Test: fast/reflections/teardown-crash.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::~RenderLayer): Changed to not call removeLayers() on the reflection if the document is being destroyed, because in that case the layer tree is not being maintained.

LayoutTests:

Reviewed by Mark Rowe.

  • test for <rdar://problem/5907633> Memory corruption after closing a document that uses box-reflect
  • fast/reflections/teardown-crash-expected.txt: Added.
  • fast/reflections/teardown-crash.html: Added.
7:36 PM Changeset in webkit [33475] by kmccullough@apple.com
  • 2 edits in trunk/JavaScriptCore

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Turn on the profiler.
  • kjs/config.h:
7:06 PM Changeset in webkit [33474] by kmccullough@apple.com
  • 4 edits in trunk

JavaScriptCore:

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)

WebCore:

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

Reviewed by Tim.

<rdar://problem/5770054> JavaScript profiler (10928)

  • page/JavaScriptProfileNode.cpp: (WebCore::getTotalPercent): (WebCore::getSelfPercent): (WebCore::ProfileNodeClass):
6:59 PM Changeset in webkit [33473] by timothy@apple.com
  • 2 edits
    1 add in trunk/WebCore

Fixes a crash in JavaScriptDebugServer::returnEvent when debugging
code that contains an eval. This change makes stepping into eval
code work as expected.

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

Reviewed by Kevin McCullough.

Tested with: manual-tests/inspector/returnEvent-crash.html

  • manual-tests/inspector/returnEvent-crash.html: Added.
  • page/JavaScriptDebugServer.cpp:

(WebCore::JavaScriptDebugServer::sourceParsed): Adds #ifdefed
debugging code to prevent the sourceID and URL.
(WebCore::updateCurrentCallFrame): Added. A helper function that
is called from all 4 of the debugger hooks below. This function will
update and/or create JavaScriptCallFrames to match the exec state,
sourceID and lineNumber passed into it. Contains #ifdefed debugging
code that was helpful while fixing this bug.
(WebCore::JavaScriptDebugServer::callEvent): Call updateCurrentCallFrame
before pauseIfNeeded.
(WebCore::JavaScriptDebugServer::atStatement): Ditto.
(WebCore::JavaScriptDebugServer::returnEvent): Ditto.
(WebCore::JavaScriptDebugServer::exception): Ditto.

6:31 PM Changeset in webkit [33472] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-05-14 Alp Toker <alp@nuanti.com>

GTK+ build fix for r33457. Add NetworkStateNotifier.cpp to the build.

  • GNUmakefile.am:
6:10 PM Changeset in webkit [33471] by kmccullough@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

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

Giving credit where credit is due.

  • ChangeLog:
6:09 PM Changeset in webkit [33470] by kmccullough@apple.com
  • 5 edits in trunk/JavaScriptCore

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

Reviewed by Geoff and Sam.

<rdar://problem/5770054> JavaScript profiler (10928)
Add the ability to get percentages of total and self time for displaying
in the WebInspector.

  • profiler/Profile.h: (KJS::Profile::totalProfileTime):
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::totalPercent): (KJS::ProfileNode::selfPercent):
  • profiler/ProfileNode.h:
  • profiler/Profiler.h: (KJS::Profiler::currentProfile):
6:06 PM Changeset in webkit [33469] by andersca@apple.com
  • 2 edits
    1 add in trunk/WebKitSite

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

Reviewed by Mitz.

Make our Sticky notes example an offline web app.

  • misc/DatabaseExample.html:
  • misc/DatabaseExample.manifest: Added.
6:02 PM Changeset in webkit [33468] by alp@webkit.org
  • 3 edits in trunk/WebCore

2008-05-14 Alp Toker <alp@nuanti.com>

GTK+ build fix. Include value.h from kjs, not JavaScriptCore.

  • page/JavaScriptProfile.cpp:
  • page/JavaScriptProfileNode.cpp:
5:43 PM Changeset in webkit [33467] by Adam Roben
  • 2 edits in trunk/WebCore

Windows release build fix

  • WebCore.vcproj/WebCore.vcproj: Make sure the warnings we disable on XPathGrammar.cpp are disabled for all configurations, not just Debug_Internal.
5:25 PM Changeset in webkit [33466] by kmccullough@apple.com
  • 17 edits
    5 moves in trunk

JavaScriptCore:

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

Reviewed by Sam.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Rename FunctionCallProfile to ProfileNode.
  • GNUmakefile.am:
  • JavaScriptCore.exp:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • profiler/FunctionCallProfile.cpp: Removed.
  • profiler/FunctionCallProfile.h: Removed.
  • profiler/Profile.cpp: (KJS::Profile::Profile): (KJS::Profile::willExecute):
  • profiler/Profile.h: (KJS::Profile::callTree):
  • profiler/ProfileNode.cpp: Copied from profiler/FunctionCallProfile.cpp. (KJS::ProfileNode::ProfileNode): (KJS::ProfileNode::willExecute): (KJS::ProfileNode::didExecute): (KJS::ProfileNode::addChild): (KJS::ProfileNode::findChild): (KJS::ProfileNode::stopProfiling): (KJS::ProfileNode::selfTime): (KJS::ProfileNode::printDataInspectorStyle): (KJS::ProfileNode::printDataSampleStyle): (KJS::ProfileNode::endAndRecordCall):
  • profiler/ProfileNode.h: Copied from profiler/FunctionCallProfile.h. (KJS::ProfileNode::create): (KJS::ProfileNode::children):
  • profiler/Profiler.cpp:

WebCore:

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

Reviewed by Sam.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Rename FunctionCallProfile to ProfileNode
  • ForwardingHeaders/profiler/FunctionCallProfile.h: Removed.
  • ForwardingHeaders/profiler/ProfileNode.h: Copied from ForwardingHeaders/profiler/FunctionCallProfile.h.
  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • page/JavaScriptFunctionCallProfile.cpp: Removed.
  • page/JavaScriptFunctionCallProfile.h: Removed.
  • page/JavaScriptProfile.cpp:
  • page/JavaScriptProfileNode.cpp: Copied from page/JavaScriptFunctionCallProfile.cpp. (WebCore::ProfileNodeCache): (WebCore::getFunctionName): (WebCore::getTotalTime): (WebCore::getSelfTime): (WebCore::getNumberOfCalls): (WebCore::getChildren): (WebCore::finalize): (WebCore::ProfileNodeClass): (WebCore::toJS):
  • page/JavaScriptProfileNode.h: Copied from page/JavaScriptFunctionCallProfile.h.
5:02 PM Changeset in webkit [33465] by Beth Dakin
  • 6 edits in trunk/WebCore

2008-05-13 Beth Dakin <Beth Dakin>

Reviewed by Brady.

This patch adds support for the ARIA progressbar role and the
following ARIA states (ie HTML attributes): aria-checked, aria-
level, aria-pressed, aria-valuenow, aria-valuemin, and aria-
valuemax.

  • html/HTMLAttributeNames.in:
  • page/AccessibilityObject.h: (WebCore::AccessibilityObject::isProgressIndicator): (WebCore::AccessibilityObject::valueForRange): (WebCore::AccessibilityObject::maxValueForRange): (WebCore::AccessibilityObject::minValueForRange):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isProgressIndicator): (WebCore::AccessibilityRenderObject::isPressed): Check the aria- pressed attribute if this is an ARIA button. (WebCore::AccessibilityRenderObject::headingLevel): Check the aria- level attribute if this is an ARIA heading. (WebCore::AccessibilityRenderObject::intValue): Check the aria- checked attribute if this is an ARIA radio button or checkbox. (WebCore::AccessibilityRenderObject::valueForRange): (WebCore::AccessibilityRenderObject::maxValueForRange): (WebCore::AccessibilityRenderObject::minValueForRange): (WebCore::RoleEntry::): (WebCore::AccessibilityRenderObject::canSetValueAttribute):
  • page/AccessibilityRenderObject.h:
  • page/mac/AccessibilityObjectWrapper.mm: (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
4:02 PM Changeset in webkit [33464] by kmccullough@apple.com
  • 6 edits in trunk

JavaScriptCore:

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

Reviewed by John.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Have each FunctionCallProfile be able to return it's total and self time.
  • JavaScriptCore.exp:
  • profiler/FunctionCallProfile.cpp: (KJS::FunctionCallProfile::selfTime):
  • profiler/FunctionCallProfile.h: (KJS::FunctionCallProfile::totalTime):

WebCore:

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

Reviewed by John.

-<rdar://problem/5770054> JavaScript profiler (10928)
Use the FunctionCallProfile's new total and self time functions.

  • page/JavaScriptFunctionCallProfile.cpp: (WebCore::getTotalTime): (WebCore::getSelfTime):
3:50 PM Changeset in webkit [33463] by andersca@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

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

Check in the test result.


  • http/tests/appcache/manifest-with-empty-file-expected.txt: Added.
3:44 PM Changeset in webkit [33462] by andersca@apple.com
  • 3 edits
    3 adds in trunk

WebCore:

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

Reviewed by Adam.

Don't try to store the resource data if it's empty.


  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store):

LayoutTests:

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

Reviewed by Adam.

Add test where a manifest references an empty file.


  • http/tests/appcache/manifest-with-empty-file.html: Added.
  • http/tests/appcache/resources/empty.txt: Added.
  • http/tests/appcache/resources/manifest-with-empty-file.manifest: Added.
3:35 PM Changeset in webkit [33461] by Adam Roben
  • 3 edits in trunk/WebCore

Windows build fix

  • platform/network/NetworkStateNotifier.cpp: Added a missing #include.
  • platform/network/NetworkStateNotifier.h: (WebCore::NetworkStateNotifier::NetworkStateNotifier): Removed 'void' return type from the constructor, and fixed the spelling of a member variable.
3:26 PM Changeset in webkit [33460] by kmccullough@apple.com
  • 7 edits
    6 adds in trunk/WebCore

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

Reviewed by Adam.

<rdar://problem/5770054> JavaScript profiler (10928)

  • ForwardingHeaders/profiler/FunctionCallProfile.h: Added.
  • ForwardingHeaders/profiler/Profile.h: Added.
  • GNUmakefile.am: Add the new files to all the projects.
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • page/InspectorController.cpp: Add the ability to retrieve all of the profiles in JavaScript from the InspectorController. (WebCore::allProfiles): (WebCore::InspectorController::windowScriptObjectAvailable):
  • page/JavaScriptFunctionCallProfile.cpp: Added. Wrapper around the JSC FunctionCallProfile. (WebCore::functionCallProfileCache): This cache makes sure we don't needlessly create duplicate wrappers around the same FunctionCallProfile*. (WebCore::getFunctionName): Callback to return the name of the function. (WebCore::getTotalTime): Callback to return the total time spent in the function. (WebCore::getSelfTime): Callback to return the time spent in self (total
  • time in children) in the function. (WebCore::getNumberOfCalls): Callback to return the number of times this function was called. (WebCore::getChildren): Callback to return the children of this function where the children are the functions this function called. (WebCore::finalize): Cleanup. (WebCore::functionCallProfileClass): Define the JSClassRef for this object. (WebCore::toJS): Create a conversion function to make a usable JSValue to wrap the FunctionCallProfile in JSC.
  • page/JavaScriptFunctionCallProfile.h: Added.
  • page/JavaScriptProfile.cpp: Added. Wrapper around the JSC Profile. (WebCore::profileCache): This cache makes sure we don't needlessly create duplicate wrappers aroudn the same Profile*. (WebCore::getHeadCallback): Callback to return the head of the graph of the functions profiled durring this profile's run. (WebCore::finalize): (WebCore::profileClass): Define the JSClassRef for this object. (WebCore::toJS): Create a conversion function to make a usable JSValue to wrap the Profile from JSC.
  • page/JavaScriptProfile.h: Added.
3:20 PM Changeset in webkit [33459] by Adam Roben
  • 2 edits in trunk/WebKit/win

Fix Bug 18767: Inspector is currently pretty much useless on Windows

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

Reviewed by Tim Hatcher.

  • WebCoreSupport/WebInspectorClient.cpp: (WebInspectorClient::highlight): Only move the highlight behind the Inspector window when first creating the highlight, not every time we update it.
3:07 PM Changeset in webkit [33458] by hyatt@apple.com
  • 2 edits
    2 adds in trunk

2008-05-14 David Hyatt <hyatt@apple.com>

Fix for bug https://bugs.webkit.org/show_bug.cgi?id=16130.

Opacity, transforms, reflections and masks should not honor z-index unless the element is also
positioned. Always reset to auto if the element is not positioned (and then the following code will
adjust auto to 0 as needed).

Reviewed by Dan Bernstein

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle):
2:30 PM Changeset in webkit [33457] by andersca@apple.com
  • 8 edits
    3 adds in trunk/WebCore

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

Reviewed by Brady.

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


  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj: Add NetworkStateNotifier files.


  • dom/EventNames.h: Add offline and online events.


  • page/Navigator.cpp: (WebCore::Navigator::onLine):
  • page/Navigator.h:
  • page/Navigator.idl: Add navigator.onLine.


  • page/Page.cpp: (WebCore::networkStateChanged): Dispatch offline/online events to all frames.


(WebCore::Page::Page):
Set state change callback.


  • platform/network/NetworkStateNotifier.cpp: Added.
  • platform/network/NetworkStateNotifier.h: Added.
  • platform/network/mac/NetworkStateNotifierMac.cpp: Added. Mac network state notifier.
2:26 PM Changeset in webkit [33456] by eric@webkit.org
  • 2 edits in trunk/WebKit/mac

Reviewed by Oliver.

Add missing NULL check to match rest of file, this was found by the editing fuzzer.

  • WebView/WebResource.mm: (-[WebResource data]):
2:17 PM Changeset in webkit [33455] by Adam Roben
  • 1 edit in trunk/WebCore/ChangeLog

Add some Bugzilla URLs

2:14 PM Changeset in webkit [33454] by Adam Roben
  • 2 edits in trunk/WebCore

Fix Bug 18888: REGRESSION (r32731): console.log always prints "undefined"

Reviewed by Tim Hatcher.

Tested by pre-existing
manual-tests/inspector/console-log-formatting.html.

  • page/inspector/Console.js: (WebInspector.ConsoleMessage.prototype._format): Changed to explicitly wrap Console._format instead of using bind to do it. Using bind was causing us to pass plainText in as the first parameter instead of as the second.
1:59 PM Changeset in webkit [33453] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fixes the bug where stepping out of a function would show the wrong
call stack (would look like it stepped out twice.)

Reviewed by Adam Roben.

  • page/JavaScriptDebugServer.cpp:

(WebCore::JavaScriptDebugServer::returnEvent):
Call pauseIfNeeded before setting m_currentCallFrame to the caller.

1:40 PM Changeset in webkit [33452] by Stephanie Lewis
  • 2 edits in trunk/WebCore

2008-05-14 Stephanie Lewis <Stephanie Lewis>

Fix 64bit build

  • plugins/PluginView.h:
1:36 PM Changeset in webkit [33451] by ddkilzer@apple.com
  • 6 edits in trunk

WebCore:

REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)

<https://bugs.webkit.org/show_bug.cgi?id=18976>
<rdar://problem/5924793>

Reviewed by Darin.

Tests: fast/dom/dom-parse-serialize-expected.txt:

fast/xsl/xslt-processor-expected.txt:
fast/xsl/xslt-text-expected.txt:

Commit r26474 removed escaping of '>' characters to '&gt;' in serialized
HTML content, which broke one jQuery test. This change restores that
serialization behavior to both attributes and content for consistency.

  • editing/markup.cpp: (WebCore::appendAttributeValue): Escape '>' as '&gt;'. (WebCore::escapeContentText): Ditto. (WebCore::appendEscapedContent): Ditto. This is the bug fix for the jQuery test.

LayoutTests:

REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)

<https://bugs.webkit.org/show_bug.cgi?id=18976>
<rdar://problem/5924793>

Reviewed by Darin.

Updated test results now that '>' is escaped to '&gt;' in both
attributes and content.

  • fast/xsl/xslt-processor-expected.txt:
  • fast/xsl/xslt-text-expected.txt:
  • platform/mac/fast/dom/dom-parse-serialize-expected.txt:
1:04 PM Changeset in webkit [33450] by Adam Roben
  • 3 edits in trunk/WebCore

Fix Bug 19051: REGRESSION (r33447): Assertion in JSDebugServer::removeListener closing tab with Inspector open

m_inspectedPage is now cleared when the Page is destroyed, which never
used to happen. Some of InspectorController's code was not prepared
for this.

Reviewed by Dave Hyatt.

  • page/InspectorController.cpp: (WebCore::InspectorController::~InspectorController): Removed a call to stopDebugging and added an assertion. Debugging should have already been stopped by this point. (WebCore::InspectorController::inspectedPageDestroyed): Moved here from the header file. Added a call to stopDebugging. (WebCore::InspectorController::enabled): Return false if our inspected Page has already been destroyed, since we can't really do much at this point anyway. (WebCore::InspectorController::didCommitLoad): (WebCore::InspectorController::didLoadResourceFromMemoryCache): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::startDebuggingAndReloadInspectedPage): (WebCore::InspectorController::stopDebugging): (WebCore::InspectorController::drawNodeHighlight): Assert that m_inspectedPage hasn't been cleared.
  • page/InspectorController.h:
12:30 PM Changeset in webkit [33449] by justin.garcia@apple.com
  • 10 edits in trunk

WebCore:

2008-05-14 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin.

<rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition

  • editing/Editor.cpp: (WebCore::Editor::confirmComposition): Remove the previous composition when we insert the new one, not with a separate, slower, delete operation. (WebCore::Editor::setComposition): Ditto.
  • editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::performTrivialReplace): Remove the selected text with a low level operation that doesn't perform a layout and insert the new text in a way that won't trigger a layout from the removal. (WebCore::InsertTextCommand::input): Call the optimized replace.
  • editing/InsertTextCommand.h:
  • editing/htmlediting.cpp: (WebCore::isTabSpanNode): Check to see if the node is a span, to avoid the expense of getAttribute in the common case.
  • page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Selection::start() and end() will already be at VisiblePosition deepEquivalents. Selection::validate() ensures this.

LayoutTests:

2008-05-14 Justin Garcia <justin.garcia@apple.com>

Reviewed by Darin.

<rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition


Replacing all the text in a node is now much less likely to remove it
and cause selection changes.

  • platform/mac/editing/input/text-input-controller-expected.txt:
  • platform/mac/editing/inserting/4959067-expected.txt:
  • platform/mac/editing/style/style-3681552-fix-001-expected.txt:
12:01 PM Changeset in webkit [33448] by ap@webkit.org
  • 2 edits in trunk/WebKit/mac

Reviewed by Dan Bernstein.

NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.

  • Plugins/nptextinput.h:
11:33 AM Changeset in webkit [33447] by Adam Roben
  • 4 edits in trunk/WebCore

Make the Inspector able to handle being reloaded

When Reload was selected from the context menu in the Inspector, the
Inspector window would close and never be openable again. Now it
closes, then reopens when the page finishes loading.

Reviewed by Tim Hatcher.

  • page/InspectorController.cpp: (WebCore::InspectorController::close): Removed code that cleared out m_page. This is now handled by pageDestroyed.
  • page/InspectorController.h: (WebCore::InspectorController::inspectedPageDestroyed): Added.
  • page/Page.cpp: (WebCore::Page::~Page): Fixed a bug and added a call to the new inspectedPageDestroyed. If we have a parent InspectorController, that means that we are the Page in the Inspector's window (i.e., we are the Inspector's UI), so when we are destroyed we should call InspectorController::pageDestroyed. We also need to call inspectedPageDestroyed on our own InspectorController so that it won't try to call into us.
11:21 AM Changeset in webkit [33446] by jchaffraix@webkit.org
  • 3 edits in trunk/WebKitTools

2008-05-14 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.


  • isDarwin() and isCygwin() returned an empty string if the platform equality check fails. We now force the return value to be numeric.
  • Removed platform checks as it was a work around the previous issue.
  • Replaced isDarwin() by isOSX() as they have now the same behaviour.
  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm:
10:55 AM Changeset in webkit [33445] by timothy@apple.com
  • 8 edits
    1 add in trunk/WebCore

Add pause on exception support to the Inspector debugger
with a toggle buttons to enable or disable it.

Reviewed by Adam Roben.

  • page/InspectorController.cpp:

(WebCore::pauseOnExceptions): Call the InspectorController.
(WebCore::setPauseOnExceptions): Ditto.
(WebCore::InspectorController::windowScriptObjectAvailable): Add the new
setPauseOnExceptions and pauseOnExceptions functions to the JS class.
(WebCore::InspectorController::pauseOnExceptions): Call JavaScriptDebugServer.
(WebCore::InspectorController::setPauseOnExceptions): Ditto.

  • page/InspectorController.h:
  • page/JavaScriptDebugServer.cpp:

(WebCore::JavaScriptDebugServer::setPauseOnExceptions): Set m_pauseOnExceptions.
(WebCore::JavaScriptDebugServer::exception): Check m_pauseOnExceptions
and set m_pauseOnNextStatement to true before calling pauseIfNeeded.

  • page/JavaScriptDebugServer.h:
  • page/inspector/Images/pauseOnExceptionButtons.png: Added.
  • page/inspector/ScriptsPanel.js: Adds a status bar button that calls

the new InspectorController functions.

  • page/inspector/inspector.css: New styles.
10:55 AM Changeset in webkit [33444] by timothy@apple.com
  • 4 edits in trunk/WebCore

Rename the Scope Chain pane to Scope Variables. Name the global
object Global. Name objects before the locals "With Block".
Name colsure scopes "Closure". Name any element or document
after Local, "Event Target" and "Event Document", respectfully.

Reviewed by Adam Roben.

  • English.lproj/localizedStrings.js: Add new strings.
  • page/inspector/ObjectPropertiesSection.js:

(WebInspector.ObjectPropertiesSection): Add a new argument that is used
for the empty placeholder text.
(WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use the
empty placeholder text.

  • page/inspector/ScopeChainSidebarPane.js:

(WebInspector.ScopeChainSidebarPane): Rename Scope Chain to Scope Variables.
(WebInspector.ScopeChainSidebarPane.prototype.update): Use the object name as
the subtitle. Use "Global" for the global object title. Use "With Block" for
the title of objects before the locals. Use "No Variables" for the empty
placeholder text for locals.

9:34 AM Changeset in webkit [33443] by ap@webkit.org
  • 3 edits
    3 adds in trunk

Reviewed by Darin.

<rdar://problem/5934376> REGRESSION: A script fails because of a straw BOM character in it.

<https://bugs.webkit.org/show_bug.cgi?id=4931>
Unicode format characters (Cf) should be removed from JavaScript source

Of all Cf characters, we are only removing BOM, because this is what Firefox trunk has
settled upon, after extensive discussion and investigation.

Based on Darin's work on this bug.

Test: fast/js/removing-Cf-characters.html

  • kjs/lexer.cpp: (KJS::Lexer::setCode): Tweak formatting. Use a call to shift(4) to read in the first characters, instead of having special case code here. (KJS::Lexer::shift): Add a loop when reading a character to skip BOM characters.
9:18 AM Changeset in webkit [33442] by ap@webkit.org
  • 3 edits
    2 adds in trunk

2008-05-14 Michael A. Puls II <shadow2531@gmail.com>

Reviewed by Alexey.

Fix for https://bugs.webkit.org/show_bug.cgi?id=16923
Attr nodes with a value of "" should not have any childNodes


In Opera, Firefox and IE, when an attribute node has a value
of "", the attribute node doesn't have any childNodes. This
is true in WebKit also, but not when you assign "" to the
Attr's value when the existing value is non-empty.


Test: fast/dom/attribute-empty-value-no-children.html

  • dom/Attr.cpp: (WebCore::Attr::setValue): Use createTextChild(), which only appends a child text node if the value being assigned is not empty.
8:50 AM Changeset in webkit [33441] by jchaffraix@webkit.org
  • 10 edits in trunk/WebCore

2008-05-14 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

GCC 4.3 build fix.
Removes some compiler warnings.

  • dom/Document.h: (WebCore::FormElementKey::hashTableDeletedValue): GCC complained about the const keyword so remove it as it is only used inside FormElementKey.
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Correct coding style (removes a warning too).
  • loader/appcache/ApplicationCacheResource.cpp: Include stdio.h for gcc4.3 build.
  • plugins/PluginPackage.cpp: (WebCore::PluginPackage::PluginPackage): Changed initialization order in the constructor.
  • plugins/PluginView.cpp: (WebCore::PluginView::PluginView): Ditto.
  • plugins/PluginView.h:
  • xml/AccessControlList.cpp: Include stdio.h
  • xml/AccessItem.cpp: Ditto.
  • xml/AccessItemRule.cpp: Ditto.
7:31 AM Changeset in webkit [33440] by Simon Hausmann
  • 2 edits
    1 add in trunk/WebCore

2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Qt build fix. Add JSJavaScriptCallFrameCustom.cpp to the build
and implemented EventLoopQt.

5:53 AM Changeset in webkit [33439] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-05-14 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

Qt build fix. Add JavaScriptCallFrame.{idl,cpp} to the build.

5:14 AM Changeset in webkit [33438] by oliver@apple.com
  • 6 edits
    2 adds in branches/squirrelfish

Bug 19024: SQUIRRELFISH: ASSERTION FAILED: activation->isActivationObject() in Machine::unwindCallFrame
<https://bugs.webkit.org/show_bug.cgi?id=19024>

Reviewed by Maciej

This fixes a number of issues. The most important is that we now check every register
file for tainting rather than just looking for function register files as that was
insufficient. Additionally guarded against implicit re-entry into Eval code.

Also added a few additional assertions to reduce the amout of time between something
going wrong and us seeing the error.

1:45 AM Changeset in webkit [33437] by ggaren@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-05-14 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


A little more debugger action: emit opcodes for debugger hooks. Right
now, the opcode implementation is just a stub.


SunSpider reports no change.


Some example codegen for "function f() { 1; }":

[ 0] dbg DidEnterCallFrame
[ 2] dbg WillExecuteStatement
[ 4] load tr0, 1(@k0)
[ 7] load tr0, undefined(@k1)
[ 10] dbg WillLeaveCallFrame
[ 12] ret tr0

12:25 AM Changeset in webkit [33436] by oliver@apple.com
  • 3 edits
    2 adds in branches/squirrelfish

Bug 19025: SQUIRRELFISH: malformed syntax in onload handler causes crash
<https://bugs.webkit.org/show_bug.cgi?id=19025>

Reviewed by Geoff

Simple fix -- move the use of functionBodyNode to after the null check.

12:24 AM Changeset in webkit [33435] by oliver@apple.com
  • 3 edits
    1 copy
    2 adds in branches/squirrelfish/LayoutTests

Split the binops tests up a bit more

RS=Geoff

May 13, 2008:

11:32 PM Changeset in webkit [33434] by ggaren@apple.com
  • 4 edits
    2 adds in branches/squirrelfish

JavaScriptCore:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Fixed a codegen crash with run-time parse errors.


SunSpider reports no change.


emitThrowError needs to return the temporary holding the error, not dst,
since dst may be NULL. In fact, emitThrowError shouldn't take a dst
parameter at all, since exceptions should not modify the destination
register.

LayoutTests:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Added layout test for a codegen crash with run-time parse errors.

  • fast/js/exception-codegen-crash-expected.txt: Added.
  • fast/js/exception-codegen-crash.html: Added.
10:48 PM Changeset in webkit [33433] by oliver@apple.com
  • 3 edits
    1 copy
    1 add in branches/squirrelfish/LayoutTests

Splitting exception sequencing test as it was too long and made DRT unhappy
on non-MacPros.

RS=Geoff

10:25 PM Changeset in webkit [33432] by oliver@apple.com
  • 10 edits in branches/squirrelfish

Bug 19027: SquirrelFish: Incorrect codegen for pre-increment
<https://bugs.webkit.org/show_bug.cgi?id=19027>

Reviewed by Geoff

This fixes the codegen issues for the pre-inc/decrement operators
to prevent incorrectly clobbering the destination in the event of
an exception.

10:06 PM Changeset in webkit [33431] by mitz@apple.com
  • 216 edits
    4 adds in trunk

WebCore:

Reviewed by John Sullivan.

  • Windows part of <rdar://problem/5725912> improve render quality of transformed text
  • platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Added call to wkSetCGContextFontRenderingStyle().

WebKitLibraries:

Reviewed by John Sullivan.

  • WebKitSystemInterface support for <rdar://problem/5725912> improve render quality of transformed text
  • libWebKitSystemInterfaceLeopard.a: Improved glyph positioning in transformed graphics contexts.
  • win/include/WebKitSystemInterface/WebKitSystemInterface.h: Added wkSetCGContextFontRenderingStyle().
  • win/lib/WebKitSystemInterface.lib: Updated.
  • win/lib/WebKitSystemInterface_debug.lib: Updated.

LayoutTests:

Reviewed by John Sullivan.

  • updated pixel results for <rdar://problem/5725912> improve render quality of transformed text
  • platform/mac-leopard/fast/backgrounds: Added.
  • platform/mac-leopard/fast/backgrounds/repeat: Added.
  • platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.checksum: Added.
  • platform/mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
  • platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-33-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/animate-elem-84-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-02-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-03-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-04-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-05-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/coords-trans-06-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/filters-example-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-04-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-05-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-06-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-07-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/paths-data-08-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/struct-frag-03-t-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/text-path-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
  • platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png:
  • platform/mac-leopard/svg/batik/text/textAnchor-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textAnchor-expected.png:
  • platform/mac-leopard/svg/batik/text/textEffect3-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textEffect3-expected.png:
  • platform/mac-leopard/svg/batik/text/textFeatures-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textFeatures-expected.png:
  • platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textGlyphOrientationHorizontal-expected.png:
  • platform/mac-leopard/svg/batik/text/textLayout-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textLayout-expected.png:
  • platform/mac-leopard/svg/batik/text/textLength-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textLength-expected.png:
  • platform/mac-leopard/svg/batik/text/textOnPath-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textOnPath-expected.png:
  • platform/mac-leopard/svg/batik/text/textOnPath2-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textOnPath2-expected.png:
  • platform/mac-leopard/svg/batik/text/textOnPath3-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textOnPath3-expected.png:
  • platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textOnPathSpaces-expected.png:
  • platform/mac-leopard/svg/batik/text/textProperties2-expected.checksum:
  • platform/mac-leopard/svg/batik/text/textProperties2-expected.png:
  • platform/mac-leopard/svg/batik/text/verticalText-expected.checksum:
  • platform/mac-leopard/svg/batik/text/verticalText-expected.png:
  • platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.checksum:
  • platform/mac-leopard/svg/batik/text/verticalTextOnPath-expected.png:
  • platform/mac-leopard/svg/carto.net/button-expected.checksum:
  • platform/mac-leopard/svg/carto.net/button-expected.png:
  • platform/mac-leopard/svg/carto.net/colourpicker-expected.checksum:
  • platform/mac-leopard/svg/carto.net/colourpicker-expected.png:
  • platform/mac-leopard/svg/carto.net/combobox-expected.checksum:
  • platform/mac-leopard/svg/carto.net/combobox-expected.png:
  • platform/mac-leopard/svg/carto.net/scrollbar-expected.checksum:
  • platform/mac-leopard/svg/carto.net/scrollbar-expected.png:
  • platform/mac-leopard/svg/carto.net/selectionlist-expected.checksum:
  • platform/mac-leopard/svg/carto.net/selectionlist-expected.png:
  • platform/mac-leopard/svg/carto.net/slider-expected.checksum:
  • platform/mac-leopard/svg/carto.net/slider-expected.png:
  • platform/mac-leopard/svg/carto.net/textbox-expected.checksum:
  • platform/mac-leopard/svg/carto.net/textbox-expected.png:
  • platform/mac-leopard/svg/carto.net/window-expected.checksum:
  • platform/mac-leopard/svg/carto.net/window-expected.png:
  • platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.checksum:
  • platform/mac-leopard/svg/custom/coords-relative-units-transforms-expected.png:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.checksum:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.checksum:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.checksum:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.checksum:
  • platform/mac-leopard/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/mac-leopard/svg/custom/focus-ring-expected.checksum:
  • platform/mac-leopard/svg/custom/focus-ring-expected.png:
  • platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.checksum:
  • platform/mac-leopard/svg/custom/font-platformDestroy-crash-expected.png:
  • platform/mac-leopard/svg/custom/foreign-object-skew-expected.checksum:
  • platform/mac-leopard/svg/custom/foreign-object-skew-expected.png:
  • platform/mac-leopard/svg/custom/getTransformToElement-expected.checksum:
  • platform/mac-leopard/svg/custom/getTransformToElement-expected.png:
  • platform/mac-leopard/svg/custom/invalid-css-expected.checksum:
  • platform/mac-leopard/svg/custom/invalid-css-expected.png:
  • platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-clipPath-creation-expected.png:
  • platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-gradient-creation-expected.png:
  • platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.checksum:
  • platform/mac-leopard/svg/custom/js-late-pattern-creation-expected.png:
  • platform/mac-leopard/svg/custom/marker-default-width-height-expected.checksum:
  • platform/mac-leopard/svg/custom/marker-default-width-height-expected.png:
  • platform/mac-leopard/svg/custom/multiple-title-elements-expected.checksum:
  • platform/mac-leopard/svg/custom/multiple-title-elements-expected.png:
  • platform/mac-leopard/svg/custom/path-textPath-simulation-expected.checksum:
  • platform/mac-leopard/svg/custom/path-textPath-simulation-expected.png:
  • platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.checksum:
  • platform/mac-leopard/svg/custom/preserve-aspect-ratio-syntax-expected.png:
  • platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.checksum:
  • platform/mac-leopard/svg/custom/shapes-supporting-markers-expected.png:
  • platform/mac-leopard/svg/custom/stroked-pattern-expected.checksum:
  • platform/mac-leopard/svg/custom/stroked-pattern-expected.png:
  • platform/mac-leopard/svg/custom/struct-use-09-b-expected.checksum:
  • platform/mac-leopard/svg/custom/struct-use-09-b-expected.png:
  • platform/mac-leopard/svg/custom/tref-update-expected.checksum:
  • platform/mac-leopard/svg/custom/tref-update-expected.png:
  • platform/mac-leopard/svg/custom/use-detach-expected.checksum:
  • platform/mac-leopard/svg/custom/use-detach-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-1-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-2-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-3-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-4-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-5-expected.png:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-disallowed-foreign-object-6-expected.png:
  • platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.checksum:
  • platform/mac-leopard/svg/custom/use-on-non-svg-namespaced-element-expected.png:
  • platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.checksum:
  • platform/mac-leopard/svg/custom/use-referencing-nonexisting-symbol-expected.png:
  • platform/mac-leopard/svg/custom/viewbox-syntax-expected.checksum:
  • platform/mac-leopard/svg/custom/viewbox-syntax-expected.png:
  • platform/mac-leopard/svg/hixie/text/003-expected.checksum:
  • platform/mac-leopard/svg/hixie/text/003-expected.png:
  • platform/mac-leopard/svg/hixie/text/003b-expected.checksum:
  • platform/mac-leopard/svg/hixie/text/003b-expected.png:
  • platform/mac-leopard/svg/text/text-align-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-align-02-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-02-b-expected.png:
  • platform/mac-leopard/svg/text/text-align-03-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-03-b-expected.png:
  • platform/mac-leopard/svg/text/text-align-04-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-04-b-expected.png:
  • platform/mac-leopard/svg/text/text-align-05-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-05-b-expected.png:
  • platform/mac-leopard/svg/text/text-align-06-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-align-06-b-expected.png:
  • platform/mac-leopard/svg/text/text-altglyph-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-altglyph-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-deco-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-deco-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-fonts-01-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-fonts-01-t-expected.png:
  • platform/mac-leopard/svg/text/text-fonts-02-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-fonts-02-t-expected.png:
  • platform/mac-leopard/svg/text/text-intro-05-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-intro-05-t-expected.png:
  • platform/mac-leopard/svg/text/text-path-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-path-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-text-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-text-03-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-03-b-expected.png:
  • platform/mac-leopard/svg/text/text-text-04-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-04-t-expected.png:
  • platform/mac-leopard/svg/text/text-text-05-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-05-t-expected.png:
  • platform/mac-leopard/svg/text/text-text-06-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-06-t-expected.png:
  • platform/mac-leopard/svg/text/text-text-07-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-07-t-expected.png:
  • platform/mac-leopard/svg/text/text-text-08-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-text-08-b-expected.png:
  • platform/mac-leopard/svg/text/text-tref-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-tref-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-tselect-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-tselect-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-tselect-02-f-expected.checksum:
  • platform/mac-leopard/svg/text/text-tselect-02-f-expected.png:
  • platform/mac-leopard/svg/text/text-tspan-01-b-expected.checksum:
  • platform/mac-leopard/svg/text/text-tspan-01-b-expected.png:
  • platform/mac-leopard/svg/text/text-ws-01-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-ws-01-t-expected.png:
  • platform/mac-leopard/svg/text/text-ws-02-t-expected.checksum:
  • platform/mac-leopard/svg/text/text-ws-02-t-expected.png:
9:57 PM Changeset in webkit [33430] by ggaren@apple.com
  • 5 edits in branches/squirrelfish/JavaScriptCore

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


A little more debugger action: supply a real line number, sourceId,
and sourceURL in op_new_error.


SunSpider reports a .2% speedup. Not sure what that's about.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Use the new good stuff in op_new_error.
  • kjs/nodes.cpp: (KJS::RegExpNode::emitCode): Use the shared emitThrowError instead of rolling our own.
8:38 PM Changeset in webkit [33429] by alp@webkit.org
  • 2 edits
    1 add in trunk/WebCore

2008-05-13 Alp Toker <alp@nuanti.com>

GTK+ build fix. Implement EventLoopGtk.cpp.

  • GNUmakefile.am:
  • platform/gtk/EventLoopGtk.cpp: Added. (WebCore::EventLoop::cycle):
8:29 PM Changeset in webkit [33428] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-05-13 Alp Toker <alp@nuanti.com>

GTK+ build fix. Fix IDL filename typo and add JavaScriptCallFrame.cpp
to the build.

  • GNUmakefile.am:
8:13 PM Changeset in webkit [33427] by pewtermoose@webkit.org
  • 2 edits in trunk/WebCore

2008-05-13 Matt Lilek <webkit@mattlilek.com>

Not reviewed, partial Gtk build fix.

  • GNUmakefile.am:
8:06 PM Changeset in webkit [33426] by ggaren@apple.com
  • 5 edits in branches/squirrelfish/JavaScriptCore

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


A little more debugger action: implemented the exception callback.


SunSpider reports a .2% speedup. Not sure what that's about.

  • VM/CodeBlock.h: A little refactoring here. Store a pointer to our owner ScopeNode so we can retrieve data from it. This allows us to stop storing copies of the data ourselves. Also, store a "this" register instead of a code type, since we were only using the code type to calculate the "this" register.
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::generate): Calculate the "this" register mentioned above. Also, take care of removing "this" from the symbol table after codegen is done, since relying on the timing of a destructor for correct behavior is not so good.
  • VM/Machine.cpp: (KJS::Machine::throwException): Invoke the debugger's exception callback. (KJS::Machine::privateExecute): Use the "this" register mentioned above.
6:44 PM Changeset in webkit [33425] by timothy@apple.com
  • 3 edits in trunk/WebCore

Fixes a crash when stepping out in the Inspector's debugger.

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

Reviewed by Dan Bernstein.

  • page/InspectorController.cpp:

(WebCore::currentCallFrame): Adds a null check of currentCallFrame,
since it can be null. Also returns JSNull to better signify this.

  • page/inspector/ScriptsPanel.js: Updates the debugger interface

when stepping so the currentCallFrame isn't accessed when not paused.
Adds a _clearInterface function to remove duplicate code.

6:29 PM Changeset in webkit [33424] by pewtermoose@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-05-13 Matt Lilek <webkit@mattlilek.com>

Not reviewed, build fix.

  • kjs/date_object.cpp: (KJS::DateObjectFuncImp::callAsFunction):
5:46 PM Changeset in webkit [33423] by andersca@apple.com
  • 3 edits in trunk/WebKit/mac

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

Reviewed by Sam.

Don't empty the application cache in _setCacheModel, since it will be called during initialization.
Instead, do it in [WebCache empty].


  • Misc/WebCache.mm: (+[WebCache empty]):
  • WebView/WebView.mm: (+[WebView _setCacheModel:]):
5:38 PM Changeset in webkit [33422] by andersca@apple.com
  • 3 edits in trunk/JavaScriptCore

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

Reviewed by Sam.

<rdar://problem/5933644> Implement Date.now


Implement Date.now which returns the number of milliseconds since the epoch.


  • kjs/CommonIdentifiers.h:
  • kjs/date_object.cpp: (KJS::DateObjectFuncImp::): (KJS::DateObjectImp::DateObjectImp): (KJS::DateObjectFuncImp::callAsFunction):
5:09 PM Changeset in webkit [33421] by ggaren@apple.com
  • 16 edits in branches/squirrelfish/JavaScriptCore

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Removed some unused exception machinery.


SunSpider reports a .3% speedup.

  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:
  • JavaScriptCore.exp:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • kjs/internal.cpp:
  • kjs/object.cpp:
  • kjs/object.h:
  • kjs/value.h:
4:55 PM Changeset in webkit [33420] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/5932677> AX: Submit buttons aren't returning AXTitle

4:21 PM Changeset in webkit [33419] by ggaren@apple.com
  • 12 edits in branches/squirrelfish

JavaScriptCore:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


A little more debugger action.

  • kjs/debugger.cpp:
  • kjs/debugger.h: Removed debuggersPresent because it was unused. Replaced AttachedGlobalObject linked list with a HashSet because HashSet is faster and simpler. Changed all functions to return void instead of bool, because no clients ever return false, and we don't want to support it.
  • kjs/nodes.cpp: Did some up-keep to avoid build bustage. (KJS::Node::handleException): (KJS::BreakpointCheckStatement::execute): (KJS::FunctionBodyNodeWithDebuggerHooks::execute):

WebCore:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

Updated for API changes in KJS::Debugger.

  • page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::callEvent): (WebCore::JavaScriptDebugServer::atStatement): (WebCore::JavaScriptDebugServer::returnEvent): (WebCore::JavaScriptDebugServer::exception):
  • page/JavaScriptDebugServer.h:

WebKit/mac:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.

Updated for API changes in KJS::Debugger.

  • WebView/WebFrame.mm: (-[WebFrame _attachScriptDebugger]): Changed the order of operations to fix an ASSERT that can happen when re-entering _attachScriptDebugger.
4:11 PM Changeset in webkit [33418] by Chris Fleizach
  • 4 edits in trunk/WebKit

<rdar://problem/4780592> WebKit application has its window announced as HTML content

3:58 PM Changeset in webkit [33417] by Adam Roben
  • 1 edit in trunk/WebCore/ChangeLog

Restore some ChangeLog entries that were deleted in r33395

3:31 PM Changeset in webkit [33416] by timothy@apple.com
  • 4 edits in trunk/WebCore

Adds an overlay window that covers the scripts panel and
informs the user that they need to attach the debugger.
Provides an "Attach Debugger" button below the info text.

Reviewed by Dan Bernstein.

  • English.lproj/localizedStrings.js: New strings.
  • page/inspector/ScriptsPanel.js:

(WebInspector.ScriptsPanel): Create the overlay elements and
append to the main panel element.

  • page/inspector/inspector.css: New styles for the over lay elements.
3:31 PM Changeset in webkit [33415] by timothy@apple.com
  • 3 edits in trunk/WebKit/mac

Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean
was referencing a nil WebView under validateUserInterfaceItem.
The validateUserInterfaceItem methods was being called at a time
when the WebHTMLView is being torndown.

<rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
while mousing down on menu bar after Xcode News window is opened

Reviewed by Ada Chan.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
return NO when it is nil. Adds a comment.

  • WebView/WebPDFView.mm:

(-[WebPDFView validateUserInterfaceItem:]): Ditto.

3:31 PM Changeset in webkit [33414] by timothy@apple.com
  • 4 edits in trunk/WebCore

Fixes the assertion and crash that would happen when inspecting a element from a frame.
This change makes JSInspectedObjectWrapper pass unwrapped objects around for global objects
that share the same page group identifier. Also returns jsUndefined() instead of 0 to prevent
crashing in release builds if the page groups don't match.

Passes all the tests in: manual-tests/inspector-wrappers

Reviewed by Adam Roben.

  • bindings/js/JSInspectedObjectWrapper.cpp:

(WebCore::JSInspectedObjectWrapper::prepareIncomingValue): Return jsUndefined() instead of 0.
Call allowsUnwrappedAccessFrom instead of unwrappedExecStateMatches.

  • bindings/js/JSQuarantinedObjectWrapper.cpp:

(WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Renamed from unwrappedExecStateMatches.
Return true if the pageGroupIdentifier of both wrappers match.
(WebCore::JSQuarantinedObjectWrapper::callAsFunction): Return jsUndefined() instead of 0.

  • bindings/js/JSQuarantinedObjectWrapper.h: Renamed unwrappedExecStateMatches to allowsUnwrappedAccessFrom.
3:31 PM Changeset in webkit [33413] by timothy@apple.com
  • 2 edits in trunk/WebCore

Fixes the hang that could happen when option-clicking to expand
a disclosure triangle in the Properties pane. This change limits
the recursion depth when expanding the tree elements.

<rdar://problem/5847681> Safari hangs when option-clicking a
disclosure triangle in the Inspector's Properties pane

Reviewed by John Sullivan.

  • page/inspector/treeoutline.js:

(TreeElement.prototype.expandRecursively): Pass an empty info object to
traverseNextTreeElement to get the depthChange value. This is used to
compute a current depth. If the depth exceeds the maxDepth argument, the
item isn't expanded and children wont be populated when traverseNextTreeElement
is called until the depth goes below the maxDepth.
(TreeElement.prototype.traverseNextTreeElement): Added a new info
argument that can be optionally used to return extra info like depth change.

3:30 PM Changeset in webkit [33412] by timothy@apple.com
  • 7 edits in trunk/WebCore

Adds info text to panes and sections in the Inspector's sidebars
that would normally be empty. These help the user know why there
is nothing in these sections.

Reviewed by John Sullivan.

  • English.lproj/localizedStrings.js: Add strings.
  • page/inspector/BreakpointsSidebarPane.js: Adds "No Breakpoints".
  • page/inspector/CallStackSidebarPane.js: Adds "Not Paused".
  • page/inspector/ObjectPropertiesSection.js: Adds "No Properties".
  • page/inspector/ScopeChainSidebarPane.js: Adds "Not Paused".
  • page/inspector/inspector.css: Adds style rules for the info elements.
3:30 PM Changeset in webkit [33411] by timothy@apple.com
  • 10 edits in trunk/WebCore

Implements the rest of the Scripts panel to get the debugger
mostly working. "Basic debugging seems to work."

Reviewed by Geoff Garen.

  • English.lproj/localizedStrings.js: Adds new strings.
  • page/inspector/Resource.js:

(WebInspector.Resource.prototype.get scripts): Returns _scripts and
creates it lazily.
(WebInspector.Resource.prototype.addScript): Add the script object to the
front of the _scripts array.
(WebInspector.Resource.prototype.removeAllScripts): Removed all the scripts
and removes the resource back-reference.
(WebInspector.Resource.prototype.removeScript): Removes the script and
breaks the resource back-reference.

  • page/inspector/ResourceView.js:

(WebInspector.ResourceView): Adds a reminder comment.
(WebInspector.ResourceView.prototype.get headersVisible): Returns _headersVisible.
(WebInspector.ResourceView.prototype.set headersVisible): Stubs out
a setter that currently just sets _headersVisible. Has a comment that
points out this needs implemented when network headers are added.

  • page/inspector/ResourcesPanel.js:

(WebInspector.ResourcesPanel.prototype.show): Sets the headersVisible property of
the visible view to true and shows it again, in case it was being shown in Scripts.
(WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
Copies the headersVisible property from the old view to the new view.
(WebInspector.ResourcesPanel.prototype.showResource): Sets the headersVisible
property to true before showing.

  • page/inspector/ScriptView.js:

(WebInspector.ScriptView): Passes in _addBreakpoint for the add breakpoint delegate.
(WebInspector.ScriptView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
for the current Script.sourceID and line.

  • page/inspector/ScriptsPanel.js:

(WebInspector.ScriptsPanel):
(WebInspector.ScriptsPanel.prototype.show): Sets the headersVisible property of
the visible view to false and shows it again, in case it was being shown in Resources.
(WebInspector.ScriptsPanel.prototype.addScript): Makes a new Script object and
adds it to a Resource if one is found. Registers any breakpoint that match
the new Script's source URL, and sets the sourceID of the breakpoints.
(WebInspector.ScriptsPanel.prototype.addBreakpoint): Adds the breakpoint to the
BreakpointsSidebarPane. Also adds it to _breakpointsURLMap so it can be found
later in addScript by URL. Finally adds the breakpoint to the SourceFrame that
represents the resources or script.
(WebInspector.ScriptsPanel.prototype.removeBreakpoint): Removes the breakpoint from
the BreakpointsSidebarPane, _breakpointsURLMap and SourceFrame.
(WebInspector.ScriptsPanel.prototype.debuggerPaused): Update the debugger
state variables, the buttons and the CallStackSidebarPane.
(WebInspector.ScriptsPanel.prototype.reset): Clears and resets debugger
and interface state.
(WebInspector.ScriptsPanel.prototype.get visibleView): Returns _visibleView.
(WebInspector.ScriptsPanel.prototype.set visibleView): Sets _visibleView and
calls hide on the old view and show on the new view.
(WebInspector.ScriptsPanel.prototype.showScript): Calls _showScriptOrResource.
(WebInspector.ScriptsPanel.prototype.showResource): Ditto.
(WebInspector.ScriptsPanel.prototype.scriptViewForScript): Lazily creates a
ScriptView for the Script and returns it.
(WebInspector.ScriptsPanel.prototype.sourceFrameForScript): Returns the SourceFrame
for the Script.
(WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): Returns the
SourceFrame based on the type of object passed in.
(WebInspector.ScriptsPanel.prototype._showScriptOrResource): Shows the view based on
the type of object passed in. If the object is a resource and there are breakpoints
defined for that Resource URL, then populate the SourceFrame with the breakpoints.
(WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Adds a script to the
files menu. If the Script is part of a resource, that resource is added.
(WebInspector.ScriptsPanel.prototype._removeScriptFromFilesMenu): Remove a script from
the files menu. If that script is part of a resource and it is the last script of that
resource, then remove the whole resource.
(WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine): Clears the execution
line from the SourceFrame that is showing it.
(WebInspector.ScriptsPanel.prototype._callFrameSelected): Event listener for when the
call frame changes in the CallStackSidebarPane. Triggers updates to the ScopeChainSidebarPane
and the visible view.
(WebInspector.ScriptsPanel.prototype._changeVisibleFile): Event listener for the change state
of the files select element.
(WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Update more of the
buttons to reflect the current debugger state. Updates the status text too.
(WebInspector.ScriptsPanel.prototype._toggleDebugging): Reset the UI and state when
the debugger is attached/detached.
(WebInspector.ScriptsPanel.prototype._togglePause): Call InspectorController.resumeDebugger or
InspectorController.pauseInDebugger depending on the paused state.
(WebInspector.ScriptsPanel.prototype._stepOverClicked): Call InspectorController.stepOverStatementInDebugger.
(WebInspector.ScriptsPanel.prototype._stepIntoClicked): Call InspectorController.stepIntoStatementInDebugger.
(WebInspector.ScriptsPanel.prototype._stepOutClicked): InspectorController.stepOutOfFunctionInDebugger.

  • page/inspector/SourceView.js:

(WebInspector.SourceView): Passes in _addBreakpoint for the add breakpoint delegate.
(WebInspector.SourceView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
for the nearest Script's sourceID and passed in line.

  • page/inspector/inspector.css: New style rules for the UI changes.
  • page/inspector/inspector.js:

(WebInspector.loaded): Add the ScriptsPanel to the panels list.
(WebInspector.parsedScriptSource): Call ScriptsPanel.addScript.
(WebInspector.failedToParseScriptSource): Ditto.
(WebInspector.pausedScript): Call ScriptsPanel.debuggerPaused.

3:30 PM Changeset in webkit [33410] by timothy@apple.com
  • 8 edits
    2 adds in trunk/WebCore

Adds implementations of the Scope Chain and Call Stack sidebar panes.
These panes use the JSJavaScriptCallFrame object that will be passed
to the update functions.

Reviewed by Kevin McCullough.

  • English.lproj/localizedStrings.js: Adds new strings.
  • WebCore.vcproj/WebCore.vcproj: Adds new files.
  • page/inspector/CallStackSidebarPane.js:

(WebInspector.CallStackSidebarPane.prototype.update): Walk the
caller chain of the call frame and make placards for each.
(WebInspector.CallStackSidebarPane.prototype.get selectedCallFrame):
Return _selectedCallFrame.
(WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
Set _selectedCallFrame and dispatch the "call frame selected" event.
(WebInspector.CallStackSidebarPane.prototype._placardSelected):
Set the selectedCallFrame based on the clicked placard.

  • page/inspector/Placard.js: Added. A user interface object that can

be used to show a title and a subtitle block with a selected state.

  • page/inspector/ScopeChainSidebarPane.js: Added.

(WebInspector.ScopeChainSidebarPane): Call the base object and set the title.
(WebInspector.ScopeChainSidebarPane.prototype.update): Iterate over the
call frame's scope chain and make ObjectPropertiesSections for each.

  • page/inspector/SidebarPane.js:

(WebInspector.SidebarPane.prototype): Inherit from WebInspector.Object.

  • page/inspector/WebKit.qrc: Add new files.
  • page/inspector/inspector.css: Add placard styles.
  • page/inspector/inspector.html: Add new files.
3:30 PM Changeset in webkit [33409] by timothy@apple.com
  • 3 edits in trunk/WebCore

Fixes the bug where SourceViews would be blank if shown before
the Resource finished loading.

<rdar://problem/5807420> Safari's Web Inspector won't display the
contents of some CSS and JS files

Reviewed by Kevin McCullough.

  • page/inspector/Resource.js:

(WebInspector.Resource.prototype.set finished): Dispatch the finished event
(WebInspector.Resource.prototype): Inherit from WebInspector.Object.prototype.

  • page/inspector/SourceView.js:

(WebInspector.SourceView): Register for the finished event on the resource.
When the event fires, setup the source frame and deregister the event.

3:30 PM Changeset in webkit [33408] by timothy@apple.com
  • 7 edits
    3 adds in trunk/WebCore

Factored most of SourceView out into SourceFrame so it can be shared
by the new ScriptView. Added the ScriptView class to be used for
scripts that arn't Resources (like eval code.) Added a simple Script
object that hold the data from the debugger parsedSource hooks. A
ScriptView holds a Script object, and uses it for source data.

Added breakpoint and execution line support to the SourceFrame
where they are visually represented in the source.

Reviewed by Kevin McCullough.

  • page/inspector/inspector.js:

(WebInspector.performSearch): Change the caller of sourceFrameForResource
to use the SourceFrame result's element property.

  • page/inspector/ResourcesPanel.js: Use the new SourceFrame.
  • page/inspector/Script.js: Added.
  • page/inspector/ScriptView.js: Added.
  • page/inspector/SourceFrame.js: Added.
  • page/inspector/SourceView.js: Use the new SourceFrame.
  • WebCore.vcproj/WebCore.vcproj: Add new files.
  • page/inspector/WebKit.qrc: Ditto.
  • page/inspector/inspector.html: Ditto.
3:29 PM Changeset in webkit [33407] by timothy@apple.com
  • 5 edits
    1 copy in trunk/WebCore

Adds a Breakpoint object and basic add/remove functions on
BreakpointsSidebarPane that call the InspectorController to
add/remove the breakpoint.

Reviewed by Kevin McCullough.

  • page/inspector/Breakpoint.js:

(WebInspector.Breakpoint):
(WebInspector.Breakpoint.prototype.get enabled): Return _enabled.
(WebInspector.Breakpoint.prototype.set enabled): Set _enabled and
dispatch the enabled/disabled event to listeners.

  • page/inspector/BreakpointsSidebarPane.js:

(WebInspector.BreakpointsSidebarPane): Add a breakpoints array.
(WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
Adds the breakpoint to the breakpoints array. Registers for the disabled
and enabled event types. Call InspectorController.addBreakpoint if attached.
(WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
Removes the breakpoint from the breakpoints array. Deregisters for the disabled
and enabled event types. Call InspectorController.removeBreakpoint if attached.
(WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
Call InspectorController.addBreakpoint or InspectorController.removeBreakpoint
depending on the enabled state of the breakpoint.

  • WebCore.vcproj/WebCore.vcproj: Add new files.
  • page/inspector/WebKit.qrc: Ditto.
  • page/inspector/inspector.html: Ditto.
3:29 PM Changeset in webkit [33406] by timothy@apple.com
  • 3 edits in trunk/WebCore

Make addSourceToFrame not dependent on InspectorResource so it
can be used to add source of a passed in string and mime-type to
a frame. Added addResourceSourceToFrame for use by SourceView.

Also fixes an assertion because of an incorrect static_cast of identifiers
to unsigned long long, when they can be unsigned.

Reviewed by Geoff Garen.

  • page/InspectorController.cpp:

(WebCore::addSourceToFrame): Helper function used by addSourceToFrame
and addResourceSourceToFrame.
(WebCore::addSourceToFrame): Generalized to take a source and mime-type string.
(WebCore::addResourceSourceToFrame): Renamed from addSourceToFrame.
(WebCore::getResourceDocumentNode): Fixes the static_cast to be long long.
(WebCore::InspectorController::windowScriptObjectAvailable): Adds
addResourceSourceToFrame to the JavaScript class.

  • page/inspector/SourceView.js: Use the new addResourceSourceToFrame.
3:29 PM Changeset in webkit [33405] by timothy@apple.com
  • 3 edits in trunk/WebCore

Add debugger related functions to the InspectorController and
expose them to the JavaScript side of InspectorController.

Reviewed by Geoff Garen.

  • page/InspectorController.cpp:

(WebCore::jsStringRef): Added helper to convert a UString to a JSStringRef.
(WebCore::currentCallFrame): Call InspectorController::currentCallFrame.
(WebCore::pauseInDebugger): Call InspectorController::pauseInDebugger.
(WebCore::resumeDebugger): Call InspectorController::resumeDebugger.
(WebCore::stepOverStatementInDebugger): Call InspectorController::stepOverStatementInDebugger.
(WebCore::stepIntoStatementInDebugger): Call InspectorController::stepIntoStatementInDebugger.
(WebCore::stepOutOfFunctionInDebugger): Call InspectorController::stepOutOfFunctionInDebugger.
(WebCore::addBreakpoint): Call InspectorController::addBreakpoint.
(WebCore::removeBreakpoint): Call InspectorController::removeBreakpoint.
(WebCore::InspectorController::windowScriptObjectAvailable): Add the new functions to the
InspectorController JavaScript class.
(WebCore::InspectorController::startDebuggingAndReloadInspectedPage): Clear breakpoints.
(WebCore::InspectorController::currentCallFrame): Return the currentCallFrame from the
JavaScriptDebugServer.
(WebCore::InspectorController::pauseInDebugger): Call JavaScriptDebugServer's pauseOnNextStatement.
(WebCore::InspectorController::resumeDebugger): Call JavaScriptDebugServer's resume.
(WebCore::InspectorController::stepOverStatementInDebugger): Call JavaScriptDebugServer's stepOverStatement.
(WebCore::InspectorController::stepIntoStatementInDebugger): Call JavaScriptDebugServer's stepIntoStatement.
(WebCore::InspectorController::stepOutOfFunctionInDebugger): Call JavaScriptDebugServer's stepOutOfFunction.
(WebCore::InspectorController::addBreakpoint): Call JavaScriptDebugServer's addBreakpoint.
(WebCore::InspectorController::removeBreakpoint): Call JavaScriptDebugServer's removeBreakpoint.
(WebCore::InspectorController::didParseSource): Call into the Inspector's JavaScript.
(WebCore::InspectorController::failedToParseSource): Ditto.
(WebCore::InspectorController::didPause): Ditto.

  • page/InspectorController.h: Add new functions.
3:29 PM Changeset in webkit [33404] by timothy@apple.com
  • 7 edits in trunk

Implements more debugger APIs on JavaScriptDebugServer and reduces
the number of callbacks to JavaScriptDebugListeners. These changes
will better facilitate debugger optimizations when SquirrelFish merges.

Reviewed by Kevin McCullough.

  • page/InspectorController.cpp:

(WebCore::InspectorController::didParseSource): Removed the ExecState.
(WebCore::InspectorController::failedToParseSource): Ditto.
(WebCore::InspectorController::didPause): Added.

  • page/InspectorController.h: Changed the JavaScriptDebugListener functions.
  • page/JavaScriptDebugListener.h: Removed some callbacks and added didPause.
  • page/JavaScriptDebugServer.cpp:

(WebCore::JavaScriptDebugServer::JavaScriptDebugServer): Initialize new data members.
(WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all values of m_breakpoints.
(WebCore::JavaScriptDebugServer::removeListener): Call resume if the last listener was removed.
(WebCore::JavaScriptDebugServer::hasListenersInterestedInPage): Returns true if there are any
global listeners or a listener for the page.
(WebCore::JavaScriptDebugServer::addBreakpoint): Adds and entry to m_breakpoints.
(WebCore::JavaScriptDebugServer::removeBreakpoint): Removes a entry in m_breakpoints.
(WebCore::JavaScriptDebugServer::hasBreakpoint): Checks if there is a breakpoint for the
sourceID and line.
(WebCore::JavaScriptDebugServer::clearBreakpoints): Removed all breakpoints.
(WebCore::JavaScriptDebugServer::pauseOnNextStatement): Sets m_pauseOnNextStatement to true.
(WebCore::JavaScriptDebugServer::resume): Sets m_paused to false.
(WebCore::JavaScriptDebugServer::stepIntoStatement): Calls resume and sets
m_pauseOnNextStatement to true.
(WebCore::JavaScriptDebugServer::stepOverStatement): Calls resume and sets m_pauseOnExecState to
the current call frame's ExecState.
(WebCore::JavaScriptDebugServer::stepOutOfFunction): Calls resume and sets m_pauseOnExecState to
the current call frame's caller ExecState.
(WebCore::JavaScriptDebugServer::currentCallFrame): Returns m_currentCallFrame if paused.
(WebCore::dispatchDidParseSource): Removed the ExecState argument.
(WebCore::dispatchFailedToParseSource): Ditto.
(WebCore::JavaScriptDebugServer::sourceParsed): Doesn't pass the ExecState to dispatchDidParseSource
or dispatchFailedToParseSource.
(WebCore::dispatchFunctionToListeners):
(WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Removes all the arguments passed
to the callback.
(WebCore::JavaScriptDebugServer::setJavaScriptPaused): Various overloaded functions
to pause parts of WebCore to prevent JavaScript execution while paused.
(WebCore::JavaScriptDebugServer::pauseIfNeeded): Decides if the debugger should pause based
on the passed in ExecState, source ID and line number. This checks for breakpoints, stepping, etc.
Calls didPause on all the listeners and spins a EventLoop until resume is called.
(WebCore::JavaScriptDebugServer::callEvent): Call pauseIfNeeded.
(WebCore::JavaScriptDebugServer::atStatement): Ditto.
(WebCore::JavaScriptDebugServer::returnEvent): Ditto.
(WebCore::JavaScriptDebugServer::exception): Ditto.

  • page/JavaScriptDebugServer.h: Added new functions.
3:29 PM Changeset in webkit [33403] by timothy@apple.com
  • 5 edits in trunk/WebCore

Change View.show to call detach if the parentNode dosen't
match before appending to the passed in parent element.
This also prevents appending to the same parent element
multiple times.

Reviewed by John Sullivan.

  • page/inspector/FontView.js:

(WebInspector.FontView.prototype.show): Pass the parent element to View.show.

  • page/inspector/ResourceView.js: Optimize the attach method to no append if

there is a parentNode already.

  • page/inspector/SourceView.js: Ditto.
  • page/inspector/View.js: Call detach before appending if the parentNode

doesn't match the passed in element.

3:28 PM Changeset in webkit [33402] by timothy@apple.com
  • 2 edits in trunk/WebCore

Optimize the panel attach method to no append if there is a
parentNode already.

Reviewed by Adam Roben.

  • page/inspector/Panel.js:

(WebInspector.Panel.prototype.attach): Don't append to main-panels
if the panel element already has a parentNode.

3:28 PM Changeset in webkit [33401] by timothy@apple.com
  • 3 edits in trunk/WebCore

Add Widget::isPluginView so the JavaScriptDebugServer can identify
plugins that need to be paused during debugging. This will be used
in a upcoming commit.

Reviewed by Kevin McCullough.

  • platform/Widget.h: Add isPluginView. Return false.
  • plugins/PluginView.h: Add isPluginView. Return true.
3:28 PM Changeset in webkit [33400] by timothy@apple.com
  • 3 edits
    3 adds in trunk/WebCore

Adds an event loop abstraction to platform. This abstraction will be
used by the JavaScriptDebugServer to implement pausing.

Reviewed by Kevin McCullough.

  • platform/EventLoop.h: Added.

(WebCore::EventLoop::EventLoop):
(WebCore::EventLoop::ended): Return m_ended.

  • platform/mac/EventLoopMac.mm: Added.

(WebCore::EventLoop::cycle): Call nextEventMatchingMask and then sendEvent.

  • platform/win/EventLoopWin.cpp: Added.

(WebCore::EventLoop::cycle): Call GetMessage, TranslateMessage and DispatchMessage.

  • WebCore.xcodeproj/project.pbxproj: Add new files.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
3:28 PM Changeset in webkit [33399] by timothy@apple.com
  • 5 edits
    1 copy in trunk/WebCore

Breaks out ObjectPropertiesSection from PropertiesSidebarPane
so it can be used by the Scripts panel's Scope Chain pane.

Rubber-stamped by Adam Roben.

  • page/inspector/ObjectPropertiesSection.js: Added.
  • page/inspector/PropertiesSidebarPane.js: Moved ObjectPropertiesSection

to ObjectPropertiesSection.js.

  • WebCore.vcproj/WebCore.vcproj: Add the new file.
  • page/inspector/WebKit.qrc: Ditto.
  • page/inspector/inspector.html: Ditto.
3:28 PM Changeset in webkit [33398] by timothy@apple.com
  • 2 edits in trunk/WebCore

Add a helper function to the Inspector's Array prototype
that will remove any identical values/objects from the array.

Reviewed by Kevin McCullough.

  • page/inspector/utilities.js:

(Array.prototype.remove): Iterate over the array and strict
compare to the passed in value. If they match, splice that index
out of the array. If onlyFirst is true, return after the first splice.

3:27 PM Changeset in webkit [33397] by timothy@apple.com
  • 4 edits
    4 adds in trunk/WebCore

Adds a JavaScriptCallFrame object and JavaScript binding with an IDL.
This object will expose the stack to the Inspector's debugger.

Reviewed by Adam Roben.

  • DerivedSources.make: Add JavaScriptCallFrame.
  • bindings/js/JSJavaScriptCallFrameCustom.cpp: Added.

(WebCore::JSJavaScriptCallFrame::evaluate): Calls impl evaluate and returns the result.
(WebCore::JSJavaScriptCallFrame::scopeChain): Makes an array of the ScopeChain.

  • page/JavaScriptCallFrame.cpp: Added.

(WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
(WebCore::JavaScriptCallFrame::caller): Returns m_caller.
(WebCore::JavaScriptCallFrame::functionName): Returns the function
name from the ExecState if this is not global code or anonymous.
(WebCore::JavaScriptCallFrame::evaluate): Evaluates a script string
in the scope of the call frame.

  • page/JavaScriptCallFrame.h: Added.

(WebCore::JavaScriptCallFrame::create): Call the ctor can return in a PassRefPtr.
(WebCore::JavaScriptCallFrame::invalidate): Sets m_mexec to 0. This prevents a
stale ExecState from being accessed after the lifetime of the ExecState.
(WebCore::JavaScriptCallFrame::isValid): Checks if m_exec is 0.
(WebCore::JavaScriptCallFrame::execState): Returns m_exec.
(WebCore::JavaScriptCallFrame::sourceIdentifier): Returns m_sourceID.
(WebCore::JavaScriptCallFrame::line): Returns m_line.
(WebCore::JavaScriptCallFrame::setLine): Sets m_line.
(WebCore::JavaScriptCallFrame::scopeChain): Returns by reference m_exec->scopeChain().

  • page/JavaScriptCallFrame.idl: Added.
  • WebCore.xcodeproj/project.pbxproj: Add new files.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
3:27 PM Changeset in webkit [33396] by timothy@apple.com
  • 4 edits
    1 add in trunk/WebCore

Add a new WebInspector.Object base class that will be used for
a few objects in the Web Inspector to support listeners on any
object. This will help add more abstraction to the Inspector.

Reviewed by Adam Roben.

  • page/inspector/Object.js: Added.

(WebInspector.Object): Does nothing.
(WebInspector.Object.prototype.addEventListener): Adds the listener to
the _listeners map by type. Supports a this object argument, for easy
addition of listeners without the need for bind.
(WebInspector.Object.prototype.removeEventListener): Remove the listener
from the _listeners map. If the listener is null and the thisObject was
passed, remove any listener for that thisObject.
(WebInspector.Object.prototype.dispatchEventToListeners): Sends an event
for a type to all listeners for that type. Mimics some of the DOMEvent
methods and properties for the event object passed to the listeners.

  • WebCore.vcproj/WebCore.vcproj: Add new files.
  • page/inspector/WebKit.qrc: Ditto.
  • page/inspector/inspector.html: Ditto.
3:27 PM Changeset in webkit [33395] by timothy@apple.com
  • 2 edits in trunk/WebCore

Update the view source CSS to better match the new Inspector mock-ups.

Reviewed by Kevin McCullough.

  • css/view-source.css:
2:51 PM Changeset in webkit [33394] by Adam Roben
  • 5 edits in trunk/WebKit/win

Neuter WebScriptDebugServer

Some upcoming changes to JavaScriptDebugServer and
JavaScriptDebugListener will break WebScriptDebugServer. Since Drosera
is being replaced by the Inspector's debugger, and Drosera is the only
client of WebScriptDebugServer, it makes more sense to get rid of
WebScriptDebugServer than to update it to keep it working.

We can't actually remove WebScriptDebugServer entirely yet, so I've
just made it non-functional. This will completely break Drosera, but
as stated above, Drosera's days are numbered anyway.

Reviewed by Tim Hatcher and Kevin McCullough.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidLoadMainResource): Removed all code in this function.
  • WebKitDLL.cpp: (LocalServerDidDie): Ditto.
  • WebScriptDebugServer.cpp: Made all IWebScriptDebugServer functions return E_NOTIMPL.
  • WebScriptDebugServer.h: Removed everything but the IWebScriptDebugServer functions.
2:50 PM Changeset in webkit [33393] by oliver@apple.com
  • 5 edits
    2 adds in branches/squirrelfish

Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>

Reviewed by Darin

Replace old attempt at "branchless" exceptions as the extra information
being passed made gcc an unhappy compiler, replacing these custom toNumber
calls with ordinary toNumber logic (by relying on toNumber now preventing
side effects after an exception has been thrown) provided sufficient leeway
to add the additional checks for the remaining unchecked cases.

This leaves only toString conversions in certain contexts as possibly
misbehaving.

2:32 PM Changeset in webkit [33392] by sullivan@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-05-13 John Sullivan <sullivan@apple.com>

Reviewed by Dan Bernstein and Kevin Decker


  • fixed <rdar://problem/5879597> reproducible crash in HTMLSelectElement::typeAheadFind

Test: fast/forms/select-type-ahead-list-box-no-selection.html

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::typeAheadFind): When there's no initially-selected element, we were accessing index -1. Check for this case and start at 0.

LayoutTests:

2008-05-13 John Sullivan <sullivan@apple.com>

Reviewed by Justin Garcia and Tim Hatcher


<rdar://problem/5879597> reproducible crash in HTMLSelectElement::typeAheadFind

  • fast/forms/select-type-ahead-list-box-no-selection-expected.txt: Added.
  • fast/forms/select-type-ahead-list-box-no-selection.html: Added.
2:25 PM Changeset in webkit [33391] by weinig@apple.com
  • 3 edits in trunk/WebCore

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

Reviewed by Dan Bernstein.

Small cleanup to XMLHttpRequest in preparation for Access Control changes.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest): (WebCore::XMLHttpRequest::~XMLHttpRequest): (WebCore::XMLHttpRequest::open): (WebCore::XMLHttpRequest::send): (WebCore::XMLHttpRequest::internalAbort): (WebCore::XMLHttpRequest::processSyncLoadResults): (WebCore::XMLHttpRequest::didFinishLoading): (WebCore::XMLHttpRequest::didReceiveResponse): (WebCore::XMLHttpRequest::didReceiveData):
  • xml/XMLHttpRequest.h:
2:23 PM Changeset in webkit [33390] by kmccullough@apple.com
  • 1 edit in trunk/JavaScriptCore/ChangeLog

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

Giving credit where credit is due.

  • ChangeLog:
2:23 PM Changeset in webkit [33389] by mrowe@apple.com
  • 3 edits in trunk/WebKit/mac

<rdar://problem/5926425> HIWebViewCreateWithClass declared as API in HIWebView.h but never exported from WebKit.framework

Reviewed by John Sullivan.

  • Carbon/HIWebView.h: Remove HIWebViewCreateWithClass.
  • Carbon/HIWebView.m: Ditto.

(HIWebViewCreate):
(HIWebViewConstructor):

2:18 PM Changeset in webkit [33388] by kmccullough@apple.com
  • 4 edits in trunk/JavaScriptCore

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

Reviewed by Geoff.

<rdar://problem/5770054> JavaScript profiler (10928)
Use PassRefPtrs instead of RefPtrs when appropriate.

  • profiler/FunctionCallProfile.cpp: (KJS::FunctionCallProfile::addChild):
  • profiler/FunctionCallProfile.h:
  • profiler/Profile.h: (KJS::Profile::callTree):
1:58 PM Changeset in webkit [33387] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/5701210> VO: If image is missing, VoiceOver does not speak the alternative text.

If an image has an alt tag, it should not be ignored

1:57 PM Changeset in webkit [33386] by ggaren@apple.com
  • 26 edits in branches/squirrelfish

JavaScriptCore:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


First steps toward supporting the debugger API: support the sourceParsed
callback; plus some minor fixups.

SunSpider reports no regression.

  • VM/CodeGenerator.h: Removed a misleading comment.
  • kjs/Parser.h: Changed the parser to take an ExecState*, so it can implement the sourceParsed callback -- that way, we only have to implement the callback in one place.
  • kjs/debugger.cpp: Nixed DebuggerImp, because its sole purpose in life was to demonstrate the misapplication of design patterns.
  • kjs/debugger.h: Changed sourceParsed to take a SourceProvider, to reduce copying, and not to return a value, because pausing execution after parsing is complicated, and no clients needed that ability, anyway.
  • kjs/grammar.y: Make sure never to pass a NULL SourceElements* to didFinishParsing -- that simplifies some code down the road.


  • kjs/nodes.cpp: Don't generate special AST nodes just because the debugger is attached -- that's a relic of the old AST execution model, and those nodes haven't been maintained.

WebCore:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Updated JavaScriptDebugServer API to accept a SourceProvider instead
of a UString, to avoid copying.

  • page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::sourceParsed): Updated this function not to return a value.

WebKit/mac:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Updated WebScriptDebugger API to accept a SourceProvider instead
of a WebCore::String, to avoid copying.

(WebScriptDebugger::sourceParsed): Updated this function not to return
a value.

WebKit/win:

2008-05-13 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Updated for new JS debugging APIs.

  • WebScriptDebugServer.cpp: (WebScriptDebugServer::didParseSource): (WebScriptDebugServer::failedToParseSource):
  • WebScriptDebugServer.h:
1:55 PM Changeset in webkit [33385] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/5908446> AX: webkit needs to return blockquote information for all AX objects, not just in AXTextMarker info

1:50 PM Changeset in webkit [33384] by ap@webkit.org
  • 5 edits in trunk

Reviewed by John Sullivan.

<rdar://problem/4852077> REGRESSION: The content of the HTML file which is saved as Thai
(ISO 8859-11) disappear.

<rdar://problem/5842597> Thai ISO-8859-11 should be upgraded to Windows-874

Test: fast/encoding/char-decoding.html

  • platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): Register ISO-8859-11, which doesn't have a standard IANA name, despite following the usual 8859 naming scheme. Also, made TIS-620 map to windows-874-2000 explicitly.
1:15 PM Changeset in webkit [33383] by mjs@apple.com
  • 7 edits in branches/squirrelfish/LayoutTests

2008-05-13 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam.


Update results for remainder of split-window merge. The new results are correct.

  • http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
  • http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
  • http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
  • http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
12:35 PM Changeset in webkit [33382] by kmccullough@apple.com
  • 7 edits in trunk/JavaScriptCore

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

Reviewed by Sam.

<rdar://problem/5770054> JavaScript profiler (10928)

  • Made some functions static (as per Adam) and changed from using raw pointers to RefPtr for making these JavaScript Objects.
  • profiler/FunctionCallProfile.cpp: (KJS::FunctionCallProfile::addChild): (KJS::FunctionCallProfile::findChild):
  • profiler/FunctionCallProfile.h: (KJS::FunctionCallProfile::create):
  • profiler/Profile.cpp: (KJS::Profile::Profile): (KJS::Profile::willExecute): (KJS::Profile::didExecute): (KJS::functionNameCountPairComparator):
  • profiler/Profile.h: (KJS::Profile::create): (KJS::Profile::title): (KJS::Profile::callTree):
  • profiler/Profiler.cpp: (KJS::Profiler::startProfiling):
  • profiler/Profiler.h: (KJS::Profiler::allProfiles): (KJS::Profiler::clearProfiles):
12:35 PM Changeset in webkit [33381] by Chris Fleizach
  • 2 edits in trunk/WebCore

Re: [PFR] <rdar://problem/5471973> Some AXLinks are not getting AXTitles though there is title text

11:36 AM Changeset in webkit [33380] by ap@webkit.org
  • 8 edits
    1 move
    7 adds
    1 delete in trunk

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=18681
<rdar://problem/5888130> WebKit should not remove BOM characters from content.

We were only trying to match Firefox, and it doesn't do this any more.

Tests: fast/encoding/bom-in-content.html

fast/encoding/bom-in-content-utf16.html

  • platform/text/TextDecoder.cpp: (WebCore::TextDecoder::checkForBOM): Skip the BOM if it's at the start of input stream.
  • platform/text/TextCodec.cpp:
  • platform/text/TextCodec.h:
  • platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::decode):
  • platform/text/TextCodecUTF16.cpp: (WebCore::TextCodecUTF16::decode):
  • platform/text/mac/TextCodecMac.cpp: (WebCore::TextCodecMac::decode): Don't remove the BOM.
11:25 AM Changeset in webkit [33379] by ap@webkit.org
  • 3 edits in trunk/LayoutTests

Reviewed by Dan Bernstein.

Add tests verifying that we don't mix up some similar, but incompatible encodings.

  • fast/encoding/char-decoding-expected.txt:
  • fast/encoding/char-decoding.html:
11:14 AM Changeset in webkit [33378] by andersca@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

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

Reviewed by Darin.

Don't crash when a document loader is destroyed while an initial caching attempt
is in progress.

  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup): Stop loading.


(WebCore::ApplicationCacheGroup::stopLoading):
New method that stops a cache update.


(WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
Delete ourselves here.


  • loader/appcache/ApplicationCacheGroup.h:

LayoutTests:

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

Reviewed by Darin.

Add testcase.


  • http/tests/appcache/navigating-away-while-cache-attempt-in-progress-expected.txt: Added.
  • http/tests/appcache/navigating-away-while-cache-attempt-in-progress.html: Added.
  • http/tests/appcache/resources/navigating-away-while-cache-attempt-in-progress.manifest: Added.
  • http/tests/appcache/resources/slow-resource.php: Added.
9:35 AM Changeset in webkit [33377] by ap@webkit.org
  • 5 edits in trunk

Reviewed by Darin.

<rdar://problem/5841351> Turkish ISO 8859-9 encoding should be treated as windows-1254

Match IE and upgrade ISO-8859-9 to windows-1254, which is its strict superset.

Test: fast/encoding/char-decoding.html

  • platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames): Register the standard name unconditionally. Previously, we registered windows-949-2000 as a special case that lacked an IANA standard name, and got away with not registering GBK because it happened to be reported by ICU normally earlier than any encoding upgraded to it.
8:22 AM Changeset in webkit [33376] by Simon Hausmann
  • 4 edits in trunk/WebCore

2008-05-13 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon

Fix QtWebKit build on Qt embedded.

7:24 AM Changeset in webkit [33375] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-05-13 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon.

For Gtk/X11 and Qt/X11, use a more extensive plug-ins scan directories set

2:46 AM Changeset in webkit [33374] by ap@webkit.org
  • 5 edits in trunk/JavaScriptCore

Reviewed by Geoffrey Garen.

<rdar://problem/4949018> JavaScriptCore API claims to work with UTF8 strings, but only works
with ASCII strings


  • kjs/ustring.h:
  • kjs/ustring.cpp: (KJS::UString::Rep::createFromUTF8): Added. Implementation adapted from JSStringCreateWithUTF8CString().
  • API/JSStringRef.cpp: (JSStringCreateWithUTF8CString):
  • API/JSClassRef.cpp: (OpaqueJSClass::OpaqueJSClass): Use UString::Rep::createFromUTF8().
1:05 AM Changeset in webkit [33373] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-05-13 Andy Shaw <andy@trolltech.com>

Reviewed by Simon.

Fixes: QWebHistory::forward() should go forwards and not back

12:11 AM Changeset in webkit [33372] by oliver@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

Bug 18752: SQUIRRELFISH: exceptions are not always handled by the vm
<https://bugs.webkit.org/show_bug.cgi?id=18752>

Reviewed by Geoff

First step: prevent incorrect evaluation of valueOf/toString conversion
in right hand side of expression after earlier conversion throws.

Note: See TracTimeline for information about the timeline view.