Timeline



Apr 2, 2008:

11:21 PM Changeset in webkit [31581] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • take a shot at marking constant pools for global and eval code


Geoff says this won't really work in all cases but is an ok stopgap.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::mark):
11:19 PM Changeset in webkit [31580] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • fix 2x perf regression in 3d-morph


  • VM/Machine.cpp: (KJS::Machine::privateExecute): If we subbed in null for the global object, don't toObject it, since that will throw an exception (very slowly).
11:12 PM Changeset in webkit [31579] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Maciej Stachowiak <mjs@apple.com>

Rubber stamped by Geoff


  • fix Release build
  • kjs/nodes.cpp: (KJS::getNonLocalSymbol):
10:56 PM Changeset in webkit [31578] by beidson@apple.com
  • 8 edits
    6 adds in trunk

WebCore:

2008-04-02 Brady Eidson <beidson@apple.com>

Reviewed by Mitz Pettel

<rdar://problem/5838347> and http://bugs.webkit.org/show_bug.cgi?id=11839
Webarchive fails to save CSS files in @import statements

  • css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::addSubresourceURLStrings): Recursively add the URL each @import rule under the current style sheet.
  • css/CSSStyleSheet.h:
  • css/StyleSheet.h: (WebCore::StyleSheet::addSubresourceURLStrings):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::getSubresourceAttributeStrings): Add the linked URL as well as all @import rules rooted at the linked stylesheet.
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::getSubresourceAttributeStrings): Walk all @import rules rooted at this stylesheet to add to the list.
  • html/HTMLStyleElement.h:

LayoutTests:

2008-04-02 Brady Eidson <beidson@apple.com>

Written by David Kilzer, tweaked by Brady, Reviewed by Mitz Pettel

The idea is to <link> to a CSS file which @imports another CSS file,
and also @import a CSS file inside a <style> element, which also @imports another CSS file

Then make sure all 4 of the css files are in the resulting webarchive

  • webarchive/resources/test-css-import-recurse.css: Added.
  • webarchive/resources/test-css-import.css: Added.
  • webarchive/resources/test-css-link-recurse.css: Added.
  • webarchive/resources/test-css-link.css: Added.
  • webarchive/test-css-import-expected.txt: Added.
  • webarchive/test-css-import.html: Added.
10:11 PM Changeset in webkit [31577] by mrowe@apple.com
  • 8 edits in trunk

Ensure that debug symbols are generated for x86_64 and ppc64 builds.

Reviewed by Oliver Hunt.

9:37 PM Changeset in webkit [31576] by ggaren@apple.com
  • 10 edits in branches/squirrelfish/JavaScriptCore

2008-04-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Removed the last vestiges of LocalStorage from JSVariableObject and
JSGlobalObject.

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::saveLocalStorage): Save and restore from/to registers. Use stub isReadOnly and isDontEnum methods for now, until we really implement attributes in the symbol table. (KJS::JSGlobalObject::restoreLocalStorage): (KJS::JSGlobalObject::reset):
  • kjs/JSVariableObject.cpp: (KJS::JSVariableObject::getPropertyNames): Use stub isDontEnum method for now, as above. (KJS::JSVariableObject::getPropertyAttributes): ditto
  • kjs/JSVariableObject.h: Removed LocalStorage from JSVariableObjectData. Removed mark method, because subclasses implement different strategies for marking registers. (KJS::JSVariableObject::isReadOnly): Stub method (KJS::JSVariableObject::isDontEnum): ditto

Changed the code below to ASSERT_NOT_REACHED() and return 0, since it
can no longer retrieve LocalStorage from the ExecState. (Eventually,
we'll just remove this code and all its friends, but that's a task for
later.)


  • kjs/ExecState.cpp: (KJS::ExecState::ExecState):
  • kjs/function.cpp: (KJS::ActivationImp::markChildren):
  • kjs/function.h:
  • kjs/nodes.cpp: (KJS::getNonLocalSymbol): (KJS::ScopeNode::optimizeVariableAccess): (KJS::ProgramNode::processDeclarations):
5:24 PM Changeset in webkit [31575] by christian@webkit.org
  • 4 edits in trunk

Build fix for GCC 4.3.

4:30 PM Applications using WebKit edited by alp@atoker.com
Link to ApplicationsGtk (diff)
3:49 PM Changeset in webkit [31574] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-04-02 Christian Persch <chpe@gnome.org>

Reviewed by Alp Toker.

GTK+/Pango font backend build fix.

  • platform/graphics/gtk/FontCustomPlatformDataPango.cpp: (WebCore::FontCustomPlatformData::fontPlatformData):
2:48 PM Changeset in webkit [31573] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests/svg/dynamic-updates/resources

Not reviewed. Speculative fix for hanging tests on buildbot (Tiger). Click events may have wrong origins.

11:41 AM Changeset in webkit [31572] by eric@webkit.org
  • 2 edits in trunk/WebCore

No review, build fix only.

Speculative build fix for no-svg build.
Use #if ENABLE(SVG) instead of #if ENABLE_SVG

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
11:12 AM Changeset in webkit [31571] by Adam Roben
  • 2 edits in trunk/WebCore

Rename instances of ExecState from "state" to "exec" in JavaScriptDebugServer

Rename requested by Darin Adler.

  • page/JavaScriptDebugServer.cpp:
10:59 AM Changeset in webkit [31570] by Adam Roben
  • 3 edits in trunk/WebCore

Make it possible for JavaScriptDebugListeners to listen to specific Pages

JavaScriptDebugServer now has overloads of its
addListener/removeListener methods that take a Page* to indicate for
which Page the JavaScriptDebugListener wishes to receive messages.

Reviewed by Darin.

  • page/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all ListenerSets being held in m_pageListenersMap. (WebCore::JavaScriptDebugServer::addListener): Changed to call hasListeners(). (WebCore::JavaScriptDebugServer::removeListener): Ditto. (WebCore::JavaScriptDebugServer::addListener): Added. This overload takes a Page* and puts the listener in the appropriate ListenerSet within m_pageListenersMap. The ListenerSet is allocated and added to m_pageListenersMap when its first listener is added. (WebCore::JavaScriptDebugServer::removeListener): Added. This overload takes a Page* and removes the listener from the appropriate ListenerSet in m_pageListenersMap. The ListenerSet is deleted and removed from m_pageListenersMap when its last listener is removed. (WebCore::toPage): Added. Retrieves the parent Page from an ExecState. (WebCore::JavaScriptDebugServer::sourceParsed): Changed to call dispatchDidParseSource/dispatchDidFailToParseSource for both the global listeners and the Page listeners. (WebCore::dispatchFunctionToListeners): Added. This code was extracted from the JavaScriptDebugServer method of the same name. (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Call dispatchFunctionToListeners for both the global listeners and the Page listeners.
  • page/JavaScriptDebugServer.h:
    • Added declarations for new methods.
    • Made JavaScriptExecutionCallback typedef public so that it could be used by a helper method.
    • Added new m_pageListenersMap member.
6:50 AM Changeset in webkit [31569] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Export the PageCache and Cache capacity call one to one. This is only there to allow the QtLauncher to play with caching.
  • TODO: make API decisions and consider following the windows Api to set a WebCacheModel and determine certain values automatically.
6:50 AM Changeset in webkit [31568] by Simon Hausmann
  • 5 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Prepapre everything for enabling the PageCache for the Qt Platform:

  • Claim that we can cache pages
  • Create the FrameView FrameLoaderClientQt::transitionToCommittedForNewPage using the initial size of the viewport and stop creating it in the QWebFramePrivate::init

Differences to the Windows port:

  • attachToWindow/detachFromWindow is not called and is not (yet) part of Widget/ScrollView of the Qt platform. We might need that for plugin support in the future.
  • We store the margin's and scrolling flag inside QWebFrame and use it when creating the FrameView.

What is missing:

  • API to call pageCache()->setCapacity(XYZ);
6:49 AM Changeset in webkit [31567] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix compilation on case-sensitive file systems.

5:55 AM Changeset in webkit [31566] by Nikolas Zimmermann
  • 227 edits
    15 adds in trunk

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

SVG Errata states: "All SVG DOM objects that directly correspond to an
attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
means that any changes made to the attribute are immediately reflected in the
corresponding SVG DOM object." (see linked URL on bug report)

Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).

Add a new synchronization layer to handle SVG DOM -> XML changes.

Added Test: svg/custom/svg-xml-dom-sync.html

5:00 AM Changeset in webkit [31565] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • For the PageCache support we do not want to create a FrameView in the constructor of QWebFrame. In QWegPage::viewportSize() we currently call mainFrame() and that will create a QWebFrame if no mainFrame is present and this gets called when we try to create a FrameView...
  • Keep a copy of the initial viewportSize around and use it if we do not have a Frame or FrameView.
5:00 AM Changeset in webkit [31564] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-04-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Always return true in FrameLoaderClientQt::shouldGoToHistoryItem, like the windows port
5:00 AM Changeset in webkit [31563] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Attempt to make the m_webFrame null pointer checking consistent. Always check for m_webFrame. It should get set by the QWebFrame with the FramerLoaderClientQt::setFrame call and should stay valid until the destruction of the QWebFrame.
  • Currently the same checking is not needed for m_frame as it will only set to 0 in FrameLoaderClientQt::frameLoaderDestroyed and should be not 0 because of the setFrame initialisation.
4:54 AM Changeset in webkit [31562] by Darin Adler
  • 2 edits in trunk/WebCore

2008-04-02 Darin Adler <Darin Adler>

Reviewed by Alexey.

  • fix storage leak seen on buildbot
  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::utiFromMIMEType): Put the result of createCFString() into a RetainPtr. Changed result to be a RetainPtr. (WebCore::ImageBuffer::toDataURL): Tweak a little bit, removing one local variable and some unneeded explicit conversions.

Apr 1, 2008:

11:50 PM Changeset in webkit [31561] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Rubber-stamped by Darin.

Turn off using 64-bit arithmetic on 32-bit hardware, as dtoa own code is faster than
compiler-provided emulation.

1% speedup on Acid3 test 26.

  • kjs/dtoa.cpp:
11:38 PM Changeset in webkit [31560] by ap@webkit.org
  • 7 edits in trunk/JavaScriptCore

Reviewed by Darin.

Make MathExtras.h thread safe.

  • kjs/math_object.cpp: (KJS::mathProtoFuncRandom): If threading is enabled, rely on initializeThreading to call wtf_random_init().
  • wtf/Threading.h:
  • wtf/ThreadingGtk.cpp: (WTF::initializeThreading):
  • wtf/ThreadingNone.cpp: (WTF::initializeThreading):
  • wtf/ThreadingPthreads.cpp: (WTF::initializeThreading):
  • wtf/ThreadingWin.cpp: (WTF::initializeThreading): Call wtf_random_init(); made the function non-inline to avoid having to include too many headers in Threading.h.
9:56 PM Changeset in webkit [31559] by mjs@apple.com
  • 1 edit in branches/squirrelfish/JavaScriptCore/ChangeLog

reverse order of last two ChangeLog entries (oops)

9:49 PM Changeset in webkit [31558] by ggaren@apple.com
  • 6 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • mark the constant pool (at least for function code blocks)
  • VM/CodeBlock.cpp: (KJS::CodeBlock::mark):
  • VM/CodeBlock.h:
  • kjs/function.cpp: (KJS::FunctionImp::mark):
  • kjs/nodes.cpp: (KJS::ScopeNode::mark):
  • kjs/nodes.h: (KJS::FuncExprNode::body): (KJS::FuncDeclNode::body):
9:47 PM squirrelfish edited by ggaren@apple.com
(diff)
9:47 PM Changeset in webkit [31557] by mjs@apple.com
  • 6 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • mark the constant pool (at least for function code blocks)
  • VM/CodeBlock.cpp: (KJS::CodeBlock::mark):
  • VM/CodeBlock.h:
  • kjs/function.cpp: (KJS::FunctionImp::mark):
  • kjs/nodes.cpp: (KJS::ScopeNode::mark):
  • kjs/nodes.h: (KJS::FuncExprNode::body): (KJS::FuncDeclNode::body):
9:41 PM squirrelfish edited by ggaren@apple.com
(diff)
9:08 PM Changeset in webkit [31556] by ggaren@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Beth Dakin.


Cleaned up a few loose ends.

  • JavaScriptCore.exp: Export dumpRegisters, so it's visible to gdb even if we don't explicitly call it in the source text.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): No need to call dumpRegisters anymore, since that was just a hack for gdb's sake.
  • kjs/JSActivation.h: Removed obsolete comment.
  • VM/CodeGenerator.cpp: Added ASSERTs to verify that the localCount we're given matches the number of locals actually allocated.
  • VM/CodeGenerator.h: (KJS::CodeGenerator::CodeGenerator): Changed "localCount" to include the parameter count, since we're using the word "local" to mean parameter, var, function, or "this". Renamed "m_nextLocal" to "m_nextVar", since "m_nextLocal" doesn't contrast well with "m_nextParameter".


Also moved tracking of implicit "this" parameter from here...

  • kjs/nodes.cpp: (KJS::FunctionBodyNode::generateCode): ... to here (KJS::ProgramNode::generateCode): ... and here
  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump): Added missing "\n".
7:57 PM Changeset in webkit [31555] by oliver@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Bug 18274: ResolveNode::emitCode() doesn't make a new temporary when dst

is 0, leading to incorrect codegen

<http://bugs.webkit.org/show_bug.cgi?id=18274>

7:05 PM Changeset in webkit [31554] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • fix bug in for..in codegen (gotta use ident, not m_ident)
  • kjs/nodes.cpp: (KJS::ForInNode::emitCode):
6:52 PM Changeset in webkit [31553] by mjs@apple.com
  • 9 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • Add suport for regexp literals
  • VM/CodeBlock.cpp: (KJS::regexpToSourceString): (KJS::regexpName): (KJS::CodeBlock::dump):
  • VM/CodeBlock.h:
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addRegExp): (KJS::CodeGenerator::emitNewRegExp):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::RegExpNode::emitCode):
  • kjs/nodes.h:
6:00 PM Changeset in webkit [31552] by oliver@apple.com
  • 12 edits
    1 copy
    1 add in branches/squirrelfish/JavaScriptCore

Add support for for..in nodes

Reviewed by Geoff

Added two new opcodes to get_pnames and next_pname to handle iterating
over the set of properties on an object. This iterator is explicitly
invalidated and the property name array is released on standard exit
from the loop, otherwise we rely on GC to do the clean up for us.

5:40 PM Changeset in webkit [31551] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Change CodeGenerator::emitCall() so it increments the reference count of
registers passed to it, and change its callers so they don't needlessly
increment the reference count of the registers they are passing.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitCall):
  • kjs/nodes.cpp: (KJS::FunctionCallResolveNode::emitCode): (KJS::FunctionCallDotNode::emitCode):
5:39 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
5:30 PM Changeset in webkit [31550] by Darin Adler
  • 2 edits in trunk/WebCore

2008-04-01 Darin Adler <Darin Adler>

  • WebCore.vcproj/WebCore.vcproj: Added RangeBoundaryPoint.h -- not required, but convenient.
5:28 PM Changeset in webkit [31549] by Darin Adler
  • 8 edits
    1 add
    2 deletes in trunk/WebCore

2008-04-01 Darin Adler <Darin Adler>

Reviewed by Sam and Antti.

  • fix <rdar://problem/5829565> paste performance slowed down with the Range Acid3 changes

Added a new class, RangeBoundaryPoint, to use for range boundary points. The "truth" of
the offset is now stored as a node pointer, and the offset is computed as and when needed.
This allows us to efficiently update when the DOM tree is changed -- computation of the
node offsets is deferred until the Range is used later.

  • WebCore.base.exp: Export nodeIndex().
  • WebCore.xcodeproj/project.pbxproj: Added RangeBoundaryPoint.h, removed NodeWithIndexBefore.h and NodeWIthIndexAfter.h. Also let Xcode tweak the file formatting.
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::childrenChanged): Pass fewer arguments to Document.
  • dom/Document.cpp: (WebCore::Document::nodeChildrenChanged): Pass fewer arguments to Range. (WebCore::Document::nodeWillBeRemoved): Pass node to range as a raw node pointer; no need for the index.
  • dom/Document.h: Take fewer arguments.
  • dom/NodeWithIndexAfter.h: Removed.
  • dom/NodeWithIndexBefore.h: Removed.
  • dom/Range.cpp: (WebCore::Range::Range): Changed to use the new RangeBoundaryPoint constructor. (WebCore::Range::create): Updated to use RangeBoundaryPoint instead of Position. (WebCore::Range::~Range): Ditto. (WebCore::Range::startContainer): Ditto. (WebCore::Range::startOffset): Ditto. (WebCore::Range::endContainer): Ditto. (WebCore::Range::endOffset): Ditto. (WebCore::Range::commonAncestorContainer): Ditto. (WebCore::Range::collapsed): Ditto. (WebCore::Range::setStart): Ditto. (WebCore::Range::setEnd): Ditto. (WebCore::Range::collapse): Ditto. (WebCore::Range::isPointInRange): Ditto. (WebCore::Range::comparePoint): Ditto. (WebCore::Range::compareNode): Ditto. (WebCore::Range::compareBoundaryPoints): Ditto. (WebCore::Range::boundaryPointsValid): Ditto. (WebCore::Range::intersectsNode): Ditto. (WebCore::Range::processContents): Ditto. (WebCore::Range::cloneContents): Ditto. (WebCore::Range::insertNode): Updated to use RangeBoundaryPoint. Also simplified the code at the end that updates the range -- not all of it is needed now since most of the fixup is done automatically by the range document mutation machinery. The one bit that remains is arguably a bug, but we need to keep it to keep passing Acid3 until we get clarification that it is indeed a bug (and then Acid3 will probably have to change). (WebCore::Range::toString): Update to use RangeBoundaryPoint instead of Position. (WebCore::Range::text): Ditto. (WebCore::Range::createContextualFragment): Ditto. (WebCore::Range::detach): Ditto. (WebCore::Range::checkNodeWOffset): Changed case where the offset is a node offset to be more efficient by using childNode instead of childNodeCount, and also return the node before which is needed to set the value of a RangeBoundaryPoint. (WebCore::Range::cloneRange): Ditto. (WebCore::Range::setStartAfter): Ditto. (WebCore::Range::setEndBefore): Ditto. (WebCore::Range::setEndAfter): Ditto. (WebCore::Range::selectNode): Ditto. (WebCore::Range::selectNodeContents): Ditto. (WebCore::Range::surroundContents): Ditto. (WebCore::Range::setStartBefore): Ditto. (WebCore::Range::checkDeleteExtract): Ditto. (WebCore::Range::containedByReadOnly): Ditto. (WebCore::Range::firstNode): Ditto. (WebCore::Range::editingStartPosition): Ditto. (WebCore::Range::pastLastNode): Ditto. (WebCore::Range::addLineBoxRects): Ditto. (WebCore::Range::formatForDebugger): Ditto. (WebCore::Range::maxStartOffset): Ditto. (WebCore::Range::maxEndOffset): Ditto. (WebCore::boundaryNodeChildrenChanged): Updated to use RangeBoundaryPoint instead of Position. Also changed name and changed to just call invalidateOffset. (WebCore::Range::nodeChildrenChanged): Changed to take just a container node. (WebCore::boundaryNodeWillBeRemoved): Updated to use RangeBoundaryPoint instead of Position. Also changed name and changed to update childBefore. (WebCore::Range::nodeWillBeRemoved): Changed to just take a Node*. (WebCore::boundaryTextInserted): Updated to use RangeBoundaryPoint instead of Position. Also changed name. (WebCore::Range::textInserted): Ditto. (WebCore::boundaryTextRemoved): Ditto. (WebCore::Range::textRemoved): Ditto. (WebCore::boundaryTextNodesMerged): Ditto. (WebCore::Range::textNodesMerged): Ditto. (WebCore::boundaryTextNodesSplit): Ditto. (WebCore::Range::textNodeSplit): Ditto.
  • dom/Range.h: Updated to use RangeBoundaryPoint instead of Position.
  • dom/RangeBoundaryPoint.h: Added.
5:23 PM Changeset in webkit [31548] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • generate call for PostIncDotNode
  • kjs/nodes.cpp: (KJS::PostIncDotNode::emitCode):
  • kjs/nodes.h:
5:22 PM Changeset in webkit [31547] by andersca@apple.com
  • 1 edit
    1 delete in trunk/WebCore

2008-04-01 Anders Carlsson <andersca@apple.com>

Reviewed by Sam.

Get rid of old "bindings" forwarding headers.

  • ForwardingHeaders/bindings: Removed.
  • ForwardingHeaders/bindings/NP_jsobject.h: Removed.
  • ForwardingHeaders/bindings/npruntime.h: Removed.
  • ForwardingHeaders/bindings/npruntime_impl.h: Removed.
  • ForwardingHeaders/bindings/npruntime_internal.h: Removed.
  • ForwardingHeaders/bindings/runtime.h: Removed.
  • ForwardingHeaders/bindings/runtime_object.h: Removed.
  • ForwardingHeaders/bindings/runtime_root.h: Removed.
5:18 PM Changeset in webkit [31546] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Build fix.


  • fix build (not sure how this ever worked?)
  • kjs/nodes.cpp: (KJS::FunctionCallBracketNode::emitCode):
4:45 PM Changeset in webkit [31545] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • generate code for FunctionCallBracketNode
  • kjs/nodes.cpp: (KJS::FunctionCallBracketNode::emitCode):
  • kjs/nodes.h:
4:11 PM Changeset in webkit [31544] by beidson@apple.com
  • 5 edits in trunk/WebKit/win

WebKit/win:

Reviewed by Jon Honeycutt and Cake

Hookup WebArchive API enough to be able to save the archive of a DOMNode


  • DOMCoreClasses.h: Add a GUID for DOMNode
  • Interfaces/IWebArchive.idl: Add initWithNode()
  • WebArchive.cpp: (WebArchive::initWithNode): (WebArchive::data): Actually return LegacyWebArchive-style data
  • WebArchive.h:
3:44 PM Changeset in webkit [31543] by timothy@apple.com
  • 4 edits
    1 move in trunk/WebCore

2008-04-01 Timothy Hatcher <timothy@apple.com>

Rename DatabasePanel.js to DatabasesPanel.js to facilitate the up-coming UI refresh changes.

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

Rubber-stamped by Brady Eidson.

  • WebCore.vcproj/WebCore.vcproj: Reference DatabasesPanel.js.
  • page/inspector/DatabasePanel.js: Removed.
  • page/inspector/DatabasesPanel.js: Copied from page/inspector/DatabasePanel.js.
  • page/inspector/WebKit.qrc: Reference DatabasesPanel.js.
  • page/inspector/inspector.html: Reference DatabasesPanel.js.
3:37 PM Changeset in webkit [31542] by mrowe@apple.com
  • 4 edits in tags/Safari-5525.17.1

Versioning.

3:31 PM Changeset in webkit [31541] by beidson@apple.com
  • 2 edits in trunk/WebCore

2008-04-01 Brady Eidson <beidson@apple.com>

Touch a file to get Windows to rebuild WebCore

  • platform/ContextMenu.cpp: Alphabetize headers
3:30 PM Changeset in webkit [31540] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.17.1

New tag.

3:15 PM Changeset in webkit [31539] by mrowe@apple.com
  • 1 edit in branches/Safari-3-1-branch/WebKit/win/ChangeLog

Fix up ChangeLog merge header.

2:28 PM Changeset in webkit [31538] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.


  • Fix two crashing SunSpider tests
  • VM/Machine.cpp: (KJS::Machine::privateExecute): set up 'this' properly for native calls.
  • kjs/list.h: (KJS::List::List): Fix intialization of buffer and size from vector, the initialization order was wrong.
1:44 PM Applications using WebKit edited by catfish.man@gmail.com
Fix Adium naming/credits (diff)
1:38 PM Changeset in webkit [31537] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Geoffrey Garen <ggaren@apple.com>

Build fix: marked ASSERT-only variables as UNUSED_PARAMs.

  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableInitializeVariable):
1:30 PM Changeset in webkit [31536] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Next step toward global code: Moved get, put, and initializeVariable
functionality up into JSVariableObject, and changed JSActivation to
rely on it.

  • kjs/JSActivation.cpp: (KJS::JSActivation::JSActivation): (KJS::JSActivation::getOwnPropertySlot): (KJS::JSActivation::put): (KJS::JSActivation::initializeVariable):
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::valueAt): (KJS::JSVariableObject::isReadOnly): (KJS::JSVariableObject::symbolTableGet): (KJS::JSVariableObject::symbolTablePut): (KJS::JSVariableObject::symbolTableInitializeVariable):
1:26 PM Changeset in webkit [31535] by beidson@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Adam Roben

Export loader/archive and loader/archive/cf headers for WebKitWin to use

  • WebCore.vcproj/WebCore.vcproj:

WebKit/win:

Reviewed by Adam Roben

Add empty implementations of WebArchive for future work


  • WebArchive.cpp: Added. (WebArchive::createInstance): (WebArchive::WebArchive): (WebArchive::~WebArchive): (WebArchive::QueryInterface): (WebArchive::AddRef): (WebArchive::Release): (WebArchive::initWithMainResource): (WebArchive::initWithData): (WebArchive::mainResource): (WebArchive::subResources): (WebArchive::subframeArchives): (WebArchive::data):
  • WebArchive.h: Added.


  • WebKit.vcproj/WebKit.vcproj:


1:22 PM Changeset in webkit [31534] by sfalken@apple.com
  • 2 edits in branches/Safari-3-1-branch/WebKit/win

Merge r31015 to Safari-3-1-branch.

12:45 PM Changeset in webkit [31533] by beidson@apple.com
  • 2 edits in trunk/WebCore

WebCore:

Reviewed by Darin

WebArchives need to load on Windows the same way as on Mac, and this change in the
finished-loading code path was a big part of that

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::finishedLoadingDocument): Only call the client's finishedLoading() for non-archive loads
10:47 AM Changeset in webkit [31532] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • Mac build fix
  • WebCore.xcodeproj/project.pbxproj: Made FontRenderingMode.h private.
9:41 AM Changeset in webkit [31531] by mitz@apple.com
  • 9 edits
    1 add in trunk/WebCore

Reviewed by Darin Adler.

  • move the FontRenderingMode enumeration into its own header file
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/CachedFont.h:
  • platform/graphics/FontDescription.h:
  • platform/graphics/FontRenderingMode.h: Added. (WebCore::):
  • platform/graphics/gtk/FontCustomPlatformData.h:
  • platform/graphics/mac/FontCustomPlatformData.h:
  • platform/graphics/qt/FontCustomPlatformData.h:
  • platform/graphics/win/FontCustomPlatformData.h:
9:36 AM Changeset in webkit [31530] by Darin Adler
  • 3 edits in trunk/WebCore

2008-04-01 Darin Adler <Darin Adler>

Reviewed by Mitz.

  • fix <rdar://problem/5833351> REGRESSION: Leak in JSCustomXPathNSResolver::create
  • fix <rdar://problem/5833216> REGRESSION: Leak in CSSStyleSelector::addViewportDependentMediaQueryResult
  • bindings/js/JSCustomXPathNSResolver.cpp: (WebCore::JSCustomXPathNSResolver::create): Added a missing adoptRef.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a missing call to deleteAllValues.
9:30 AM Changeset in webkit [31529] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam.


  • fix HashTable assertion on some SunSpider tests


Don't use -1 as the deleted value for JSValue*-keyed hashtables,
since it is a valid value (it's the immediate for -1).

  • VM/CodeGenerator.h: (KJS::CodeGenerator::JSValueHashTraits::emptyValue): (KJS::CodeGenerator::JSValueHashTraits::deletedValue):
  • kjs/JSImmediate.h: (KJS::JSImmediate::impossibleValue):
9:19 AM Changeset in webkit [31528] by Darin Adler
  • 1 edit in trunk/WebCore/dom/Clipboard.cpp

Clear stray executable bit.

9:04 AM Changeset in webkit [31527] by alice.liu@apple.com
  • 1 edit in trunk/WebCore/page/mac/AccessibilityObjectMac.mm

tiger build fix

8:44 AM Changeset in webkit [31526] by Darin Adler
  • 7 edits in trunk/WebCore

2008-04-01 Darin Adler <Darin Adler>

Reviewed by Sam.

  • speed up hasChildNodes, which does not need to be virtual
  • dom/ContainerNode.cpp: Removed hasChildNodes.
  • dom/ContainerNode.h: Added non-virtual inline hasChildNodes.
  • dom/Node.cpp: Removed hasChildNodes.
  • dom/Node.h: Added non-vritual inline hasChildNodes.
8:43 AM Changeset in webkit [31525] by weinig@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Sam Weinig <sam@webkit.org>

Reviewed by Maciej Stachowiak.

Add support for calling Native constructors like new Array().

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitConstruct):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::NewExprNode::emitCode):
  • kjs/nodes.h:
8:42 AM Changeset in webkit [31524] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam.


  • add some missing toOpbject calls to avoid crashing when calling methods on primitives
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
8:08 AM Changeset in webkit [31523] by Simon Hausmann
  • 2 edits in trunk/WebKitTools

Fix Qt DRT run by also printing EOF on stderr, as expected by
run-webkit-tests.

7:22 AM squirrelfish edited by weinig@apple.com
(diff)
3:27 AM Changeset in webkit [31522] by Simon Hausmann
  • 3 edits in trunk/WebCore

Fix the non-mac build.

1:47 AM Changeset in webkit [31521] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Get the RefCounting of WebCore::Frame right and make sure that both QWebFrame and WebCore::Frame get destroyed if we leave site with subframes and on the end of the application.
  • Use adoptRef in FrameLoaderClientQt::createFrame to get the refs right for subframes. We do not want to add an extra reference. Without this we are leaking subframes.
  • Assume that the lifetime of a Frame and FrameLoader are the same, when the Frame is gone we want to destroy the QWebFrame (e.g. on a page with subframes). Add delete m_webFrame in the frameLoaderDestroyed method to do that.
  • If we happen to delete the QWebFrame before the FrameLoaderClientQt we set m_webFrame to zero in the FrameLoaderClientQt to avoid bad things.
1:46 AM Changeset in webkit [31520] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

2008-04-01 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Do not save a RefPtr to the frame. The FrameLoaderClient, Frame and QWebFrame should have the same lifetime everything else is a leak or issue.
1:46 AM Changeset in webkit [31519] by Simon Hausmann
  • 6 edits in trunk

2008-04-01 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Do not store the QWebFrame associated with a ScrollView/FrameView in the WebCore::Widget.
  • Instead of asking the Widget for the QWebFrame use the QWebFramePrivate::core and QWebFramePrivate::kit function to convert from and to QWebFrame.
1:44 AM Changeset in webkit [31518] by Simon Hausmann
  • 5 edits in trunk/WebKit/qt

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Do not store the FrameView in the QWebFrame and cope with the situation when a WebCore::Frame has no WebCore::FrameView.
1:40 AM Changeset in webkit [31517] by alice.liu@apple.com
  • 8 edits
    5 adds
    2 deletes in trunk

WebCore:

2008-04-01 Alice Liu <alice.liu@apple.com>

Patch by Beth Dakin <Beth Dakin> and Alice Liu

Reviewed by Darin.

Refactored WebCore Accessibility code. Prior to this patch, WebCore
accessibility was implemented in an ObjC class named WebCoreAXObject,
with much of the "guts" in C++. This patch the next natural step of
factoring out the C++ code into a class named AccessibilityObject, and
in order to maintain the required ObjC object ties, also implements an
ObjC class named AccessibilityObjectWrapper as a thin wrapper around the
C++ object. Internally within WebCore we operate on the C++ object as
much as possible, and the ObjC object gets used mostly when we need to
return something to AppKit or call something implemented on NSObject.
The AXObjectCache still keeps one HashMap, now of RenderObjects to
AccessibilityObjects instead of WebCoreAXObjects, and the
AccessibilityObject keeps track of its ObjC wrapper.

  • WebCore.xcodeproj/project.pbxproj:
  • page/AXObjectCache.h: (WebCore::AXObjectCache::get): (WebCore::AXObjectCache::removeAXID):
  • page/AccessibilityObject.cpp: Added. (WebCore::AccessibilityObject::AccessibilityObject): (WebCore::AccessibilityObject::~AccessibilityObject): (WebCore::AccessibilityObject::create): (WebCore::AccessibilityObject::detach): (WebCore::AccessibilityObject::firstChild): (WebCore::AccessibilityObject::lastChild): (WebCore::AccessibilityObject::previousSibling): (WebCore::AccessibilityObject::nextSibling): (WebCore::AccessibilityObject::parentObject): (WebCore::AccessibilityObject::parentObjectUnignored): (WebCore::AccessibilityObject::isWebArea): (WebCore::AccessibilityObject::isImageButton): (WebCore::AccessibilityObject::isAnchor): (WebCore::AccessibilityObject::isTextControl): (WebCore::AccessibilityObject::isImage): (WebCore::AccessibilityObject::isAttachment): (WebCore::isPasswordFieldElement): (WebCore::AccessibilityObject::isPasswordField): (WebCore::AccessibilityObject::headingLevel): (WebCore::AccessibilityObject::isHeading): (WebCore::AccessibilityObject::anchorElement): (WebCore::isCheckboxOrRadio): (WebCore::AccessibilityObject::actionElement): (WebCore::AccessibilityObject::mouseButtonListener): (WebCore::AccessibilityObject::helpText): (WebCore::AccessibilityObject::textUnderElement): (WebCore::AccessibilityObject::hasIntValue): (WebCore::AccessibilityObject::intValue): (WebCore::AccessibilityObject::stringValue): (WebCore::labelForElement): (WebCore::AccessibilityObject::title): (WebCore::AccessibilityObject::accessibilityDescription): (WebCore::AccessibilityObject::boundingBoxRect): (WebCore::AccessibilityObject::size): (WebCore::AccessibilityObject::linkedUIElement): (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId): (WebCore::AccessibilityObject::accessibilityIsIgnored): (WebCore::AccessibilityObject::loaded): (WebCore::AccessibilityObject::layoutCount): (WebCore::AccessibilityObject::textLength): (WebCore::AccessibilityObject::selectedText): (WebCore::AccessibilityObject::selection): (WebCore::AccessibilityObject::selectedTextRange): (WebCore::AccessibilityObject::setSelectedText): (WebCore::AccessibilityObject::setSelectedTextRange): (WebCore::AccessibilityObject::makeRangeVisible): (WebCore::AccessibilityObject::url): (WebCore::AccessibilityObject::isVisited): (WebCore::AccessibilityObject::isFocused): (WebCore::AccessibilityObject::setFocused): (WebCore::AccessibilityObject::setValue): (WebCore::AccessibilityObject::isEnabled): (WebCore::AccessibilityObject::press): (WebCore::AccessibilityObject::topRenderer): (WebCore::AccessibilityObject::textControl): (WebCore::AccessibilityObject::widget): (WebCore::AccessibilityObject::axObjectCache): (WebCore::AccessibilityObject::documentLinks): (WebCore::AccessibilityObject::documentFrameView): (WebCore::AccessibilityObject::frameViewIfRenderView): (WebCore::AccessibilityObject::visiblePositionRange): (WebCore::AccessibilityObject::doAXTextMarkerRangeForLine): (WebCore::AccessibilityObject::doAXTextMarkerRangeForUnorderedTextMarkers): (WebCore::AccessibilityObject::doAXLeftWordTextMarkerRangeForTextMarker): (WebCore::AccessibilityObject::doAXRightWordTextMarkerRangeForTextMarker): (WebCore::updateAXLineStartForVisiblePosition): (WebCore::AccessibilityObject::doAXLeftLineTextMarkerRangeForTextMarker): (WebCore::AccessibilityObject::doAXRightLineTextMarkerRangeForTextMarker): (WebCore::AccessibilityObject::doAXSentenceTextMarkerRangeForTextMarker): (WebCore::AccessibilityObject::doAXParagraphTextMarkerRangeForTextMarker): (WebCore::startOfStyleRange): (WebCore::endOfStyleRange): (WebCore::AccessibilityObject::doAXStyleTextMarkerRangeForTextMarker): (WebCore::AccessibilityObject::textMarkerRangeForRange): (WebCore::AccessibilityObject::stringForReplacedNode): (WebCore::AccessibilityObject::doAXStringForTextMarkerRange): (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange): (WebCore::AccessibilityObject::doAXLengthForTextMarkerRange): (WebCore::AccessibilityObject::doSetAXSelectedTextMarkerRange): (WebCore::AccessibilityObject::doAXTextMarkerForPosition): (WebCore::AccessibilityObject::doAXNextTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXPreviousTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXNextWordEndTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXPreviousWordStartTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXNextLineEndTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXPreviousLineStartTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXNextSentenceEndTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXPreviousSentenceStartTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXNextParagraphEndTextMarkerForTextMarker): (WebCore::AccessibilityObject::doAXPreviousParagraphStartTextMarkerForTextMarker): (WebCore::AccessibilityObject::textMarkerForIndex): (WebCore::AccessibilityObject::doAXUIElementForTextMarker): (WebCore::AccessibilityObject::doAXLineForTextMarker): (WebCore::AccessibilityObject::rangeForTextMarkerRange): (WebCore::AccessibilityObject::indexForTextMarker): (WebCore::AccessibilityObject::doAXRangeForLine): (WebCore::AccessibilityObject::doAXRangeForPosition): (WebCore::AccessibilityObject::doAXRangeForIndex): (WebCore::AccessibilityObject::doAXStyleRangeForIndex): (WebCore::AccessibilityObject::doAXStringForRange): (WebCore::AccessibilityObject::doAXBoundsForRange): (WebCore::AccessibilityObject::doAXLineForIndex): (WebCore::AccessibilityObject::doAccessibilityHitTest): (WebCore::AccessibilityObject::focusedUIElement): (WebCore::AccessibilityObject::observableObject): (WebCore::AccessibilityObject::roleValue): (WebCore::AccessibilityObject::canSetFocusAttribute): (WebCore::AccessibilityObject::canSetValueAttribute): (WebCore::AccessibilityObject::canSetTextRangeAttributes): (WebCore::AccessibilityObject::childrenChanged): (WebCore::AccessibilityObject::clearChildren): (WebCore::AccessibilityObject::hasChildren): (WebCore::AccessibilityObject::addChildren): (WebCore::AccessibilityObject::axObjectID): (WebCore::AccessibilityObject::setAXObjectID): (WebCore::AccessibilityObject::removeAXObjectID):
  • page/AccessibilityObject.h: Added. (WebCore::): (WebCore::VisiblePositionRange::VisiblePositionRange): (WebCore::VisiblePositionRange::isNull): (WebCore::AccessibilityObject::detached): (WebCore::AccessibilityObject::PlainTextRange::PlainTextRange): (WebCore::AccessibilityObject::PlainTextRange::isNull): (WebCore::AccessibilityObject::renderer): (WebCore::AccessibilityObject::children): (WebCore::AccessibilityObject::wrapper): (WebCore::AccessibilityObject::setWrapper):
  • page/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::~AXObjectCache): (WebCore::AXObjectCache::get): (WebCore::AXObjectCache::remove): (WebCore::AXObjectCache::getAXID): (WebCore::AXObjectCache::removeAXID): (WebCore::AXObjectCache::textMarkerForVisiblePosition): (WebCore::AXObjectCache::childrenChanged): (WebCore::AXObjectCache::postNotification): (WebCore::AXObjectCache::postNotificationToElement):
  • page/mac/AccessibilityObjectMac.mm: Added. (createAccessibilityRoleMap): (RoleEntry::): (roleValueToNSString): (AccessibilityObject::attachmentView): (AccessibilityObject::performPressActionForAttachment): (AccessibilityObject::textMarkerRange): (AccessibilityObject::textMarkerForVisiblePosition): (AccessibilityObject::startTextMarker): (AccessibilityObject::visiblePositionForTextMarker): (AccessibilityObject::visiblePositionForStartOfTextMarkerRange): (AccessibilityObject::visiblePositionForEndOfTextMarkerRange): (AccessibilityObject::textMarkerRangeFromVisiblePositions): (AccessibilityObject::textMarkerRangeForSelection): (AccessibilityObject::textMarkerRangeFromMarkers): (AccessibilityObject::convertViewRectToScreenCoords): (AccessibilityObject::convertAbsolutePointToViewCoords): (AccessibilityObject::convertWidgetChildrenToNSArray): (AccessibilityObject::position): (AccessibilityObject::role): (AccessibilityObject::subrole): (AccessibilityObject::roleDescription): (blockquoteLevel): (AccessibilityObject::AXAttributeStringSetElement): (AXAttributeStringSetBlockquoteLevel): (CreateCGColorIfDifferent): (AXAttributeStringSetColor): (AXAttributeStringSetNumber): (AXAttributeStringSetFont): (AXAttributeStringSetStyle): (AccessibilityObject::AXAttributeStringSetHeadingLevel): (AccessibilityObject::AXLinkElementForNode): (AXAttributeStringSetSpelling): (AccessibilityObject::AXAttributedStringAppendText): (nsStringForReplacedNode): (AccessibilityObject::doAXAttributedStringForTextMarkerRange): (AccessibilityObject::doAXAttributedStringForRange): (AccessibilityObject::doAXRTFForRange):
  • page/mac/AccessibilityObjectWrapper.h: Added.
  • page/mac/AccessibilityObjectWrapper.mm: Added. (-[AccessibilityObjectWrapper initWithAccessibilityObject:]): (-[AccessibilityObjectWrapper unregisterUniqueIdForUIElement]): (-[AccessibilityObjectWrapper detach]): (-[AccessibilityObjectWrapper accessibilityObject]): (-[AccessibilityObjectWrapper accessibilityActionNames]): (-[AccessibilityObjectWrapper accessibilityAttributeNames]): (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]): (-[AccessibilityObjectWrapper renderWidgetChildren]): (convertToNSArray): (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]): (-[AccessibilityObjectWrapper accessibilityHitTest:]): (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]): (-[AccessibilityObjectWrapper accessibilityIsIgnored]): (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): (-[AccessibilityObjectWrapper accessibilityPerformAction:]): (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): (rendererForView): (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]): (-[AccessibilityObjectWrapper accessibilityActionDescription:]): (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
  • page/mac/WebCoreAXObject.h: Removed.
  • page/mac/WebCoreAXObject.mm: Removed.
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::selectElement):
  • rendering/RenderMenuList.h:

WebKit/mac:

2008-03-31 Alice Liu <alice.liu@apple.com>

Reviewed by Darin.

  • WebView/WebFrame.mm: (-[WebFrame _accessibilityTree]): The syntax for fetching an object from the AXObjectCache changed slightly
1:24 AM Changeset in webkit [31516] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-04-01 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Change the order of the methods to match with the FrameLoaderClient.h to ease removing methods in the future.
1:24 AM Changeset in webkit [31515] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

2008-04-01 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Simon.

  • Remove virtuals in the FrameLoaderClientQt that don't exist in the base class.
12:32 AM Changeset in webkit [31514] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-04-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Changed Machine::dumpRegisters to take a pointer instead of a reference,
so gdb understands how to call it.

  • VM/Machine.cpp: (KJS::Machine::dumpRegisters): (KJS::Machine::privateExecute):
  • VM/Machine.h:

Mar 31, 2008:

11:54 PM Changeset in webkit [31513] by mitz@apple.com
  • 3 edits in trunk/WebCore
  • fix previous attempted fixes
  • platform/qt/TemporaryLinkStubs.cpp: (PluginDatabase::getPluginPathsInDirectories):
  • platform/wx/TemporaryLinkStubs.cpp: (PluginDatabase::getPluginPathsInDirectories):
11:40 PM Changeset in webkit [31512] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • fix Qt link stubs
  • platform/qt/TemporaryLinkStubs.cpp: (PluginDatabase::getPluginPathsInDirectories): (PluginDatabase::isPreferredPluginDirectory):
11:31 PM Changeset in webkit [31511] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Wx build
  • platform/wx/TemporaryLinkStubs.cpp: (PluginDatabase::getPluginPathsInDirectories): (PluginDatabase::isPreferredPluginDirectory):
11:26 PM Changeset in webkit [31510] by mitz@apple.com
  • 5 edits in trunk/WebCore
  • Gtk and Qt build fixes
  • platform/graphics/gtk/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::fontPlatformData):
  • platform/graphics/gtk/FontCustomPlatformData.h:
  • platform/graphics/qt/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::fontPlatformData):
  • platform/graphics/qt/FontCustomPlatformData.h:
11:04 PM Changeset in webkit [31509] by mitz@apple.com
  • 3 edits in trunk/WebCore
  • Mac build fix
  • platform/graphics/mac/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::fontPlatformData):
  • platform/graphics/mac/FontCustomPlatformData.h:
11:03 PM Changeset in webkit [31508] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Fix CodeGenerator::addConstant() so it uses the functionExpressions
counter for function expressions, not the functions counter.

  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addConstant):
10:49 PM Changeset in webkit [31507] by mitz@apple.com
  • 12 edits
    2 adds in trunk/WebCore

2008-03-31 Dan Bernstein <mitz@apple.com>

Reviewed by Darin Adler.

  • fix <rdar://problem/5792638> @font-face with downloadable fonts doesn't work with GDI text
  • WebCore.vcproj/WebCore.vcproj: Added GetEOTHeader.{h,cpp}
  • css/CSSFontFaceSource.cpp: (WebCore::CSSFontFaceSource::getFontData): Changed to pass the rendering mode to CachedFont::platformDataFromCustomData().
  • loader/CachedFont.cpp: (WebCore::CachedFont::platformDataFromCustomData): Added a rendering mode parameter which is passed down to FontCustomPlatformData::fontPlatformData().
  • loader/CachedFont.h:
  • platform/graphics/win/FontCacheWin.cpp: (WebCore::FontCache::fontExists): Changed the number 5 to the named constant CLEARTYPE_QUALITY.
  • platform/graphics/win/FontCustomPlatformData.cpp: (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added code to delete the embedded font reference. (WebCore::FontCustomPlatformData::fontPlatformData): Added code to create an HFONT from the embedded font reference and pass it along with the CGFontRef to the FontPlatformData constructor. Added a rendering mode parameter which is passed down to the FontPlatformData constructor. (WebCore::EOTStream::EOTStream): Added this helper class used to feed data to TTLoadEmbeddedFont(). (WebCore::EOTStream::read): Added. (WebCore::readEmbedProc): Added this TTLoadEmbeddedFont() callback. (WebCore::createUniqueFontName): Added. Creates a unique GUID-derived font name. (WebCore::createFontCustomPlatformData): Added code to make the font accessible to GDI by creating an Embedded OpenType stream and activating it in the process under a globally-unique name.
  • platform/graphics/win/FontCustomPlatformData.h: Added a font reference data member which holds the embedded font. (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a rendering mode parameter.
  • platform/graphics/win/FontPlatformData.h: (WebCore::FontPlatformData::FontPlatformData): Made this class always own the CGFontRef and the HFONT by turning these data members into a RetainPtr and a RefPtr around a RefCountedHFONT. Added an HFONT parameter to the CGFontRef-based constructor. Made platformDataInit() private. (WebCore::FontPlatformData::hfont): (WebCore::FontPlatformData::cgFont): (WebCore::FontPlatformData::hash): (WebCore::FontPlatformData::RefCountedHFONT::RefCountedHFONT): Added. (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT): (WebCore::FontPlatformData::RefCountedHFONT::hfont): (WebCore::FontPlatformData::RefCountedHFONT::hash):
  • platform/graphics/win/FontPlatformDataCGWin.cpp: (WebCore::FontPlatformData::platformDataInit): Changed to take ownership of the CGFontRef created here. (WebCore::FontPlatformData::FontPlatformData): Added an HFONT parameter and a useGDI flag.
  • platform/graphics/win/FontPlatformDataWin.cpp: (WebCore::FontPlatformData::FontPlatformData): Changed to take ownership of the HFONT.
  • platform/graphics/win/GetEOTHeader.cpp: Added. (WebCore::BigEndianUShort::operator unsigned short): (WebCore::BigEndianULong::operator unsigned): (WebCore::appendBigEndianStringToEOTHeader): (WebCore::getEOTHeader): Added. Creates an Embedded OpenType (.eot) header for the given font data, making it suitable as input for TTLoadEmbeddedFont.
  • platform/graphics/win/GetEOTHeader.h: Added.
  • platform/graphics/win/SimpleFontDataCGWin.cpp: (WebCore::SimpleFontData::platformDestroy): Removed code to delete parts of the FontPlatformData, since they are now always owned and managed by the FontPlatformData.
10:48 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
10:44 PM Changeset in webkit [31506] by weinig@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Add emitCode support for TypeOfResolveNode and TypeOfValueNode.
Added new opcode op_type_of to handle them.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNot): (KJS::CodeGenerator::emitInstanceOf): (KJS::CodeGenerator::emitTypeOf):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::jsTypeStringForValue): (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::TypeOfResolveNode::emitCode): (KJS::TypeOfValueNode::emitCode):
  • kjs/nodes.h:
10:39 PM Changeset in webkit [31505] by weinig@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

Fix non-computed goto version of isOpcode. op_end is a valid opcode.

  • VM/Machine.cpp: (KJS::Machine::isOpcode):
10:38 PM Changeset in webkit [31504] by ggaren@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Added op_post_dec.

10:29 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
10:04 PM Changeset in webkit [31503] by mrowe@apple.com
  • 4 edits in branches/Safari-3-1-branch

Versioning.

10:04 PM Changeset in webkit [31502] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.17

New tag.

9:53 PM Changeset in webkit [31501] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoffrey Garen.

Add support for FunctionCallDotNode.

  • kjs/nodes.cpp: (KJS::FunctionCallDotNode::emitCode):
  • kjs/nodes.h:
9:22 PM Changeset in webkit [31500] by ggaren@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Beth Dakin.

Next step toward global code: Removed more obsolete API, moved
saveLocalStorage and restoreLocalStorage to JSGlobalObject subclass,
since it's only intended for use there.


  • ChangeLog:
  • JavaScriptCore.exp:
  • kjs/Activation.h:
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::saveLocalStorage): (KJS::JSGlobalObject::restoreLocalStorage):
  • kjs/JSGlobalObject.h:
  • kjs/JSVariableObject.cpp:
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData):
  • kjs/function.cpp: (KJS::ActivationImp::ActivationImp):
8:55 PM Changeset in webkit [31499] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Beth Dakin.

Next step toward global code: subclass JSActivation + JSActivationData
from JSVariableObject + JSVariableObjectData.


JSActivation now relies on JSVariableObject for access to registers and
symbol table, and for some delete functionality, but not for anything
else yet.

(KJS::JSActivation::mark): Cleaned up the style here a little bit.

8:25 PM Changeset in webkit [31498] by Darin Adler
  • 2 edits in trunk/WebCore

2008-03-31 Darin Adler <Darin Adler>

Reviewed by Anders.

  • fix crash seen on buildbot (regression from a recent speedup)
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::createElement): Check validity before calling isLower, since that takes care of the null string case.
8:22 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
8:19 PM Changeset in webkit [31497] by ggaren@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Beth Dakin.


Next step toward global code: store "rOffset" in JSVariableObjectData.

  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData):
8:01 PM Changeset in webkit [31496] by ggaren@apple.com
  • 4 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Next steps toward global code:


  • Moved access to the register file into JSVariableObject.


  • Added more ASSERTs to indicate obsolete APIs there are just hanging around to stave off build failures.
  • kjs/JSGlobalObject.h: (KJS::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData):
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::registers): (KJS::JSVariableObject::JSVariableObjectData::JSVariableObjectData): (KJS::JSVariableObject::JSVariableObject):
7:57 PM Changeset in webkit [31495] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Sam Weinig <sam@webkit.org>

Reviewed by Oliver. Tweaked somewhat by Maciej.


  • implement codegen for ReadModifyResolveNode
  • kjs/nodes.cpp: (KJS::emitReadModifyAssignment): (KJS::ReadModifyResolveNode::emitCode):
  • kjs/nodes.h:
7:08 PM Changeset in webkit [31494] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Fix the build -- r31492 removed activation tear-off, but r31493 used it.

  • kjs/nodes.cpp: (KJS::FuncExprNode::makeFunction):
7:00 PM Changeset in webkit [31493] by mjs@apple.com
  • 9 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Add support for FuncExprNode to SquirrelFish.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeBlock.h:
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::addConstant): (KJS::CodeGenerator::emitNewFunctionExpression):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::FuncExprNode::emitCode): (KJS::FuncExprNode::makeFunction):
  • kjs/nodes.h:
6:55 PM Changeset in webkit [31492] by ggaren@apple.com
  • 7 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


First step toward global code: removed some obsolete JSGlobalObject
APIs, changing clients to ASSERT_NOT_REACHED.


Activation tear-off and scope chain pushing is obsolete because we
statically detect whether an activation + scope node is required.


The variableObject() and activationObject() accessors are obsolete
because they haven't been maintained, and they're mostly used by
node evaluation code, anyway.


The localStorage() accessor is obsolete because everything is in
registers now, and it's mostly used by node evaluation code, anyway.

6:51 PM Changeset in webkit [31491] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by John Sullivan.

  • fix <rdar://problem/5741075> Google Maps: cursor and placemarks don't match up
  • platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor): Set the 1-bit mask for full-alpha cursors to fully opaque. The mask is ignored and the alpha values from the 32-bit image are used except in the case of a fully-transparent image, in which the fully-opaque 1-bit mask is required to get transparency.
6:31 PM Changeset in webkit [31490] by mjs@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Maciej Stachowiak <mjs@apple.com>

Reviewed by Darin.


  • implement codegen for bracket accessor and bracket assign
  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitGetPropVal): (KJS::CodeGenerator::emitPutPropVal):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::BracketAccessorNode::emitCode): (KJS::AssignBracketNode::emitCode):
  • kjs/nodes.h:
6:16 PM Changeset in webkit [31489] by beidson@apple.com
  • 4 edits in trunk

Make more WebArchive checks cross platform

3:58 PM Changeset in webkit [31488] by beidson@apple.com
  • 2 edits in trunk/WebCore

Turn on WebArchive loading on Windows

3:43 PM Changeset in webkit [31487] by mrowe@apple.com
  • 3 edits
    44 adds in trunk/WebKitSite

2008-03-31 Mark Rowe <mrowe@apple.com>

Add some images that were missed in the WordPress 2.5 upgrade.

  • blog/:
3:32 PM Changeset in webkit [31486] by mrowe@apple.com
  • 234 edits
    130 adds
    42 deletes in trunk/WebKitSite

2008-03-31 Mark Rowe <mrowe@apple.com>

Upgrade to WordPress 2.5

  • blog/:
3:29 PM Changeset in webkit [31485] by mitz@apple.com
  • 3 edits in trunk/WebCore

2008-03-31 Dan Bernstein <mitz@apple.com>

Reviewed by Dave Hyatt.

  • page/AnimationController.cpp: Changed the BLEND_MAYBE_INVALID_COLOR macro to not blend two invalid colors.
  • rendering/RenderStyle.cpp: (WebCore::StyleBackgroundData::StyleBackgroundData): Added missing copying of the m_color data member.
3:28 PM Changeset in webkit [31484] by ggaren@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Not reviewed.


Removed FIXME that I just fixed.


Added ASSERT to cover an error previously only covered by a FIXME.

  • kjs/JSActivation.cpp: (KJS::JSActivation::getOwnPropertySlot):
2:58 PM Changeset in webkit [31483] by jchaffraix@webkit.org
  • 4 edits in trunk/WebCore

2008-03-31 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Darin.

Bug 18177: m_encoding is used twice in XMLHttpRequest
http://bugs.webkit.org/show_bug.cgi?id=18177

  • Change XMLHttpRequest variable m_encoding to m_responseEncoding.
  • Change send local variable m_encoding to encoding.

No test case (no functionnal change).

  • platform/network/ResourceResponseBase.h: Removed unused variable.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): Changed local m_encoding to encoding. (WebCore::XMLHttpRequest::didReceiveResponse): m_encoding -> m_responseEncoding. (WebCore::XMLHttpRequest::didReceiveData): Ditto.
  • xml/XMLHttpRequest.h: Change m_encoding to m_responseEncoding to disambiguate the name as it is only used for response.
2:45 PM Changeset in webkit [31482] by ggaren@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Not reviewed.

Fixed indentation inside op_call. (I had left this code badly indented
to make the behavior-changing diff clearer.)

  • VM/Machine.cpp: (KJS::Machine::privateExecute):
2:43 PM Changeset in webkit [31481] by ggaren@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Fixed up logging of jump instructions to follow the following style:


jump offset(->absoluteTarget)

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
2:41 PM Changeset in webkit [31480] by jchaffraix@webkit.org
  • 2 edits in trunk/WebKit/gtk

2008-03-31 Jasper Bryant-Greene <jasper@unix.geek.nz>

Reviewed by Darin.

Resolves http://bugs.webkit.org/show_bug.cgi?id=18010
"WebKitNetworkRequestPrivate is defined in two places unnecessarily"

Removed unnecessary definition of WebKitNetworkRequestPrivate in
webkitprivate.h

  • webkit/webkitprivate.h:
2:35 PM Changeset in webkit [31479] by Adam Roben
  • 2 edits in trunk/WebCore

Pass the right ExecStates to toJS when creating JS wrappers for objects from the inspected page

We now use an ExecState from the inspected page to create the JS
wrappers for objects from the inspected page, rather than use an
ExecState from the Inspector.

Reviewed by Tim Hatcher.

  • page/InspectorController.cpp: (WebCore::getResourceDocumentNode): (WebCore::InspectorController::focusNode): (WebCore::InspectorController::addDatabaseScriptResource):
2:30 PM Changeset in webkit [31478] by mrowe@apple.com
  • 5 edits in branches/Safari-3-1-branch

Merge r31388.

2:30 PM Changeset in webkit [31477] by mrowe@apple.com
  • 10 edits in branches/Safari-3-1-branch/WebCore

Merge r31438.

2:30 PM Changeset in webkit [31476] by mrowe@apple.com
  • 4 edits
    2 adds in branches/Safari-3-1-branch

Merge r31434.

2:27 PM Changeset in webkit [31475] by ggaren@apple.com
  • 9 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Changed the SymbolTable API to use int instead of size_t. It has been
using int internally for a while now (since squirrelfish symbols can
have negative indices).

2:23 PM Developer Tools Hitlist edited by Adam Roben
(diff)
2:22 PM Developer Tools Hitlist edited by Adam Roben
(diff)
2:10 PM Changeset in webkit [31474] by mrowe@apple.com
  • 4 edits
    2 adds in branches/Safari-3-1-branch

Merge r30722.

2:10 PM Changeset in webkit [31473] by mrowe@apple.com
  • 3 edits
    4 adds in branches/Safari-3-1-branch

Merge r31153.

2:03 PM Changeset in webkit [31472] by Adam Roben
  • 4 edits in trunk/WebCore

Stop relying on functions added to prototypes in the Inspector being callable on objects from the inspected window

Reviewed by Tim Hatcher.

  • page/inspector/Console.js: (WebInspector.ConsolePanel._formatnode): Use nodeTitleInfo.call(node) instead of node.titleInfo().
  • page/inspector/StylesSidebarPane.js: Changed uses of getShorthandValue, getShorthandPriority, getLonghandProperties, and getUniqueStyleProperties to call them as functions instead of as methods on the CSSStyleDeclaration objects.
  • page/inspector/utilities.js: Removed Node.prototype.titleInfo, and changed our CSSStyleDeclaration methods to just be standalone functions.
1:59 PM Changeset in webkit [31471] by mrowe@apple.com
  • 2 edits
    2 deletes in branches/Safari-3-1-branch/WebCore

Roll out r31407.

1:28 PM Changeset in webkit [31470] by Adam Roben
  • 2 edits in trunk/WebCore

Fix an exception while adding a message to the console

Reviewed by Mark Rowe.

  • page/inspector/ConsolePanel.js: Don't call addMessageToSource if the panel has no such method. This can happen if we get a message for, e.g., a Database.
1:14 PM Changeset in webkit [31469] by jchaffraix@webkit.org
  • 2 edits in trunk/WebKitTools

2008-03-31 Julien Chaffraix <julien.chaffraix@gmail.com>

Reviewed by Darin.

Bug 17665: determineSourceDir() dies if $sourceDir has a trailing backslash

Remove trailing '/' in $sourceDir in determineSourceDir().

Fix suggested by Dmitriy Kazachkov.

  • Scripts/webkitdirs.pm:
10:59 AM Changeset in webkit [31468] by beidson@apple.com
  • 7 edits in trunk

WebCore:

2008-03-31 Brady Eidson <beidson@apple.com>

Reviewed by Darin and Mitz's rubber stamp

Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore

  • page/EditorClient.h:
  • svg/graphics/SVGImageEmptyClients.h:
  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection): Make the archive and get the data directly

WebKit/mac:

2008-03-31 Brady Eidson <beidson@apple.com>

Reviewed by Darin and Mitz's rubber stamp

Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore

  • WebCoreSupport/WebEditorClient.mm:
  • WebCoreSupport/WebEditorClient.h:
10:06 AM Changeset in webkit [31467] by beidson@apple.com
  • 2 edits in trunk/WebCore

2008-03-31 Brady Eidson <beidson@apple.com>

Reviewed by Mitz Pettel

Fix for http://bugs.webkit.org/show_bug.cgi?id=18183

Despite the bug reporter's instructions, I have still not been able to actually reproduce this crash and
therefore don't know how to make a layout test for it.

  • loader/archive/ArchiveResource.cpp: (WebCore::ArchiveResource::response): Fix potential null dereference
9:56 AM Changeset in webkit [31466] by Adam Roben
  • 3 edits in trunk/WebCore

Fix Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing on Windows

<http://bugs.webkit.org/show_bug.cgi?id=18208>

We now keep track of all the plugin paths found each time refresh() is
called. We'll only instantiate PluginPackages if there are new paths
or paths with changed timestamps since the last time refresh() was
called.

Reviewed by Darin Adler and Anders Carlsson.

  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::refresh):
    • Only instantiate PluginPackages if there is a new path or a path with a changed timestamp since we last ran refresh().
    • Cache the set of plugin paths found and their timestamps for the next call to refresh().
    • Only re-register MIME types if our set of plugins changed.
  • plugins/PluginDatabase.h: Added a new member to cache plugin paths and their timestamps.
9:55 AM Changeset in webkit [31465] by Adam Roben
  • 6 edits in trunk/WebCore

Separate filesystem crawling from PluginPackage instantiation

Part of Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing
on Windows
<http://bugs.webkit.org/show_bug.cgi?id=18208>

refresh() is now the only place where PluginPackages are instantiated.
refresh() now asks for a set of plugins that no longer exist on disk,
and the set of all plugin files in our plugin directories. Using these
two sets we can update our instantiated plugins without copying any
HashSets. The code in refresh() and in the platform-specific methods
to crawl the filesystem is now quite a bit simpler.

PluginDatabase now stores both a PluginSet and a HashMap that maps
plugin paths to PluginPackages. This allows us to quickly determine
whether we already have a PluginPackage instantiated for a particular
path. The new add/remove methods handle the modification of these two
collections.

A nice side effect of all this is that refresh() no longer copies any
HashSets.

Reviewed by Mitz Pettel.

  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::refresh): Unload any plugins that have been deleted from disk, and add any plugins that either weren't installed last time, or have changed since last time. (WebCore::PluginDatabase::getDeletedPlugins): Added. (WebCore::PluginDatabase::add): Added. Returns whether or not the PluginPackage was actually added to the database (duplicates won't be added). (WebCore::PluginDatabase::remove): Added.
  • plugins/PluginDatabase.h:
  • plugins/PluginPackage.h: (WebCore::PluginPackage::path): Added. (WebCore::PluginPackage::lastModified): Added.
  • plugins/gtk/PluginDatabaseGtk.cpp: (WebCore::PluginDatabase::getPluginPathsInDirectories): Renamed from getPluginsInDirectories. Now fills a HashSet of Strings instead of instantiated PluginPackages.
  • plugins/win/PluginDatabaseWin.cpp: (WebCore::addPluginPathsFromRegistry): Ditto. (WebCore::PluginDatabase::getPluginPathsInDirectories): Ditto.
9:55 AM Changeset in webkit [31464] by Adam Roben
  • 5 edits in trunk/WebCore

Change getPluginsInDirectories to use an out parameter

This avoids copying a HashSet.

Reviewed by Mitz Pettel.

  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::refresh):
  • plugins/PluginDatabase.h:
  • plugins/gtk/PluginDatabaseGtk.cpp: (WebCore::PluginDatabase::getPluginsInDirectories):
  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabase::getPluginsInDirectories):
9:54 AM Changeset in webkit [31463] by Adam Roben
  • 2 edits in trunk/WebCore

Make some PluginPackage methods return const String&

Reviewed by Mitz Pettel.

  • plugins/PluginPackage.h:
9:54 AM Changeset in webkit [31462] by Adam Roben
  • 15 edits in trunk

Rename PluginDatabase's "PluginPaths" to "PluginDirectories"

WebCore:

Rename PluginDatabase's "PluginPaths" to "PluginDirectories"

The code expects these paths to all be directories, so it seems good
to refer to them as such.

This patch just changes "Paths" to "Directories" and "Path" to
"Directory".

Reviewed by Mitz Pettel.

  • platform/qt/TemporaryLinkStubs.cpp:
  • platform/wx/TemporaryLinkStubs.cpp:
  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::installedPlugins): (WebCore::PluginDatabase::refresh):
  • plugins/PluginDatabase.h: (WebCore::PluginDatabase::setPluginDirectories):
  • plugins/gtk/PluginDatabaseGtk.cpp: (WebCore::PluginDatabase::getPluginsInDirectories):
  • plugins/win/PluginDatabaseWin.cpp: (WebCore::PluginDatabase::getPluginsInDirectories): (WebCore::safariPluginsDirectory): (WebCore::PluginDatabase::defaultPluginDirectories): (WebCore::PluginDatabase::isPreferredPluginDirectory):
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::compare):

WebKit/win:

Rename IWebViewPrivate::addAdditionalPluginPath to
addAdditionalPluginDirectory

Reviewed by Mitz Pettel.

  • Interfaces/IWebViewPrivate.idl:
  • Interfaces/WebKit.idl: Touched to make sure the Interfaces project rebuilds.
  • WebView.cpp: (WebView::addAdditionalPluginDirectory):
  • WebView.h:

WebKitTools:

Update for rename of an IWebViewPrivate method

Reviewed by Mitz Pettel.

  • DumpRenderTree/win/DumpRenderTree.cpp: (createWebViewAndOffscreenWindow):
9:53 AM Changeset in webkit [31461] by Adam Roben
  • 4 edits in trunk/WebCore

Remove PlatformFileTime

This typedef is time_t on all platforms, so we can just get rid of the
typedef.

Reviewed by Mitz Pettel.

  • platform/FileSystem.h:
  • plugins/PluginPackage.cpp:
  • plugins/PluginPackage.h:
9:53 AM Changeset in webkit [31460] by Adam Roben
  • 3 edits in trunk/WebCore

Change PlatformFileTime on Windows to be time_t

This matches other platforms and our existing functions in
FileSystem.h. It will also let us get rid of PlatformFileTime
altogether.

Reviewed by Mitz Pettel.

  • platform/FileSystem.h: Change PlatformFileTime to time_t on Windows.
  • plugins/win/PluginDatabaseWin.cpp: (WebCore::addPluginsFromRegistry): Use getFileModificationTime to get the modification time to pass to PluginPackage::create. (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::hash): Updated to use m_lastModified as a time_t. (WebCore::PluginPackage::equal): Ditto.
9:52 AM Changeset in webkit [31459] by Adam Roben
  • 5 edits in trunk/WebCore

Make PluginPackage work like our other RefCounted classes

PluginPackage now starts with a ref count of 1, and its createPackage
method now returns a PassRefPtr instead of a raw pointer.

Reviewed by Darin Adler.

  • plugins/PluginPackage.cpp: (WebCore::PluginPackage::PluginPackage): Removed explicit call to the RefCounted constructor so that we'll start with a ref count of 1. (WebCore::PluginPackage::createPackage): Changed to return a PassRefPtr.
  • plugins/PluginPackage.h:
  • plugins/gtk/PluginDatabaseGtk.cpp: (WebCore::PluginDatabase::getPluginsInPaths): Changed to store the newly-created PluginPackage in a RefPtr.
  • plugins/win/PluginDatabaseWin.cpp: (WebCore::addPluginsFromRegistry): Ditto. (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
9:52 AM Changeset in webkit [31458] by Adam Roben
  • 2 edits in trunk/WebCore

Fix Bug 18214: WebKit will sometimes load duplicate plugins

<http://bugs.webkit.org/show_bug.cgi?id=18214>

We now compare 3 things to determine if two PluginPackages are equal:

1) Name
2) Description
3) Supported MIME types

This matches Gecko's equality logic for plugins (implemented in
nsPluginTag::Equals).

Reviewed by Darin Adler.

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::hash): Use the above-mentioned 3 criteria to calculate the hash. (WebCore::PluginPackage::equal): Use the above-mentioned 3 criteria to determine equality.
1:56 AM squirrelfish edited by mjs@apple.com
(diff)
1:55 AM squirrelfish edited by mjs@apple.com
(diff)
1:54 AM squirrelfish edited by mjs@apple.com
(diff)
1:50 AM Changeset in webkit [31457] by Simon Hausmann
  • 2 edits in trunk/WebCore

Fix the Qt build.

ResourceHandleInternal.h references ResourceHandle::fireFailure, so include
ResourceHandle.h.

1:46 AM Changeset in webkit [31456] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Add support for FunctionCallValueNode.

  • kjs/nodes.cpp: (KJS::FunctionCallValueNode::emitCode):
  • kjs/nodes.h:
1:04 AM Changeset in webkit [31455] by mjs@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-31 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


1) Implemented array literals


2) Renamed op_object_get and op_object_put to op_get_prop_id and
op_put_prop_id in preparation for new variants.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewArray): (KJS::CodeGenerator::emitGetPropId): (KJS::CodeGenerator::emitPutPropId): (KJS::CodeGenerator::emitPutPropIndex):
  • VM/CodeGenerator.h: (KJS::CodeGenerator::CodeGenerator): (KJS::CodeGenerator::propertyNames):
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::ArrayNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::PostIncResolveNode::emitCode): (KJS::PreIncResolveNode::emitCode): (KJS::AssignResolveNode::emitCode): (KJS::AssignDotNode::emitCode):
  • kjs/nodes.h:
1:01 AM Changeset in webkit [31454] by eric@webkit.org
  • 5 edits
    3 adds in trunk

Reviewed by darin.

Make matching of regexps using much faster
http://bugs.webkit.org/show_bug.cgi?id=18086

  • pcre/pcre_compile.cpp: (compileBranch): (branchNeedsLineStart):
  • pcre/pcre_exec.cpp: (match): (jsRegExpExecute):
  • pcre/pcre_internal.h:
12:21 AM squirrelfish edited by ggaren@apple.com
(diff)
12:16 AM squirrelfish edited by ggaren@apple.com
(diff)
12:15 AM squirrelfish edited by ggaren@apple.com
(diff)
12:11 AM squirrelfish edited by ggaren@apple.com
(diff)

Mar 30, 2008:

11:49 PM Changeset in webkit [31453] by rwlbuis@webkit.org
  • 6 edits
    2 adds in trunk

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15595
marker property doesn't show up correctly as "shorthand" in inspector

Make sure parsing the marker property sets the individual
marker properties as implicit with marker as shorthand.
Also let CSSStyleDecleration::getPropertyValue return
the correct value for the marker property.

11:48 PM Changeset in webkit [31452] by ggaren@apple.com
  • 27 edits
    5 copies
    2 adds in branches/squirrelfish

JavaScriptCore:

2008-03-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Implemented native function calls. (Re-entering from native code back
to JS doesn't work yet, though.)

0.2% speedup overall, due to some inlining tweaks. 3.6% regression on
function-empty.js, since we're making a new virtual call and taking a
new branch inside every op_call.


I adjusted the JavaScriptCore calling convention to minimize overhead,
like so:


The machine calls a single virtual function, "getCallData", to get all
the data it needs for a function call. Native code still uses the old
"isObject()" check followed by an "implementsCall()" check, which
aliases to "getCallData". (We can optimize native code to use getCallData
at our leisure.)


To supply a list of arguments, the machine calls a new List constructor
that just takes a pointer and a length, without copying. Native code
still appends to the list one argument at a time. (We can optimize
native code to use the new List constructor at our leisure.)

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Changed resize() call to grow() call, to encourage the compiler to inline the Vector code.
  • kjs/CallData.h: Added. (KJS::): CallData is a union because eventually native calls will stuff a function pointer into it, to eliminate the callAsFunction virtual call.
  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction): Changed this to an ASSERT since it's not implemented yet.


  • kjs/list.h: Made the List class two-faced, to support the old way and the new way during this transition phase: lists can be made read-only with just a pointer and a legnth, or you can append to them one item at a time.
  • kjs/value.h: (KJS::jsUndefined): Marked this function ALWAYS_INLINE for the benefit of a certain compiler that doesn't know what's best for it.

JavaScriptGlue:

2008-03-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Build fix.

  • ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.

WebCore:

2008-03-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Adjusted WebCore JS functions to the new "getCallData" calling convention.

WebKit/mac:

2008-03-30 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Build fix.

11:13 PM Changeset in webkit [31451] by eric@webkit.org
  • 21 edits in trunk/WebCore

Reviewed by Oliver.

Make AMatthews life easier -- fix the SVG_FILTERS build

Build fix only, no tests.

  • svg/SVGComponentTransferFunctionElement.cpp: (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
  • svg/SVGFEColorMatrixElement.cpp: (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
  • svg/SVGFEDiffuseLightingElement.cpp:
  • svg/SVGFEGaussianBlurElement.cpp:
  • svg/SVGFEImageElement.cpp: (WebCore::SVGFEImageElement::SVGFEImageElement):
  • svg/SVGFESpecularLightingElement.cpp:
  • svg/SVGFETurbulenceElement.cpp:
  • svg/SVGFilterElement.cpp:
  • svg/SVGFilterPrimitiveStandardAttributes.cpp:
  • svg/graphics/filters/SVGFEBlend.cpp:
  • svg/graphics/filters/SVGFEComponentTransfer.cpp:
  • svg/graphics/filters/SVGFEComposite.cpp:
  • svg/graphics/filters/SVGFEDiffuseLighting.cpp:
  • svg/graphics/filters/SVGFEGaussianBlur.cpp:
  • svg/graphics/filters/SVGFEImage.cpp:
  • svg/graphics/filters/SVGFEMerge.cpp:
  • svg/graphics/filters/SVGFEMorphology.cpp:
  • svg/graphics/filters/SVGFEOffset.cpp:
  • svg/graphics/filters/SVGFESpecularLighting.cpp:
  • svg/graphics/filters/SVGFETurbulence.cpp:
10:49 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
10:32 PM Changeset in webkit [31450] by mjs@apple.com
  • 2 edits in branches/squirrelfish/JavaScriptCore

2008-03-30 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.

Dump code that codegen can't handle yet, so it's easier to prioritize missing nodes.


  • kjs/nodes.h: (KJS::Node::emitCode):
9:39 PM Changeset in webkit [31449] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-30 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.

Improve dumping of bytecode and fix coding style accordingly.


Registers are printed as lr1 for locals, tr1 for temp registers. Identifiers print as
foobar(@id0) and constants print as "foo"(@k1) or 312.4(@k2) or the like. Constant and
identifier tables are dumped for reference.


  • VM/CodeBlock.cpp: (KJS::escapeQuotes): (KJS::valueToSourceString): (KJS::registerName): (KJS::constantName): (KJS::idName): (KJS::printUnaryOp): (KJS::printBinaryOp): (KJS::CodeBlock::dump):
  • VM/Machine.cpp: (KJS::resolve): (KJS::resolveBase): (KJS::Machine::privateExecute):
7:46 PM squirrelfish edited by cwzwarich@uwaterloo.ca
(diff)
6:11 PM Changeset in webkit [31448] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-30 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


Implement StringNode and VoidNode (both pretty trivial).

  • kjs/nodes.cpp: (KJS::StringNode::emitCode): (KJS::VoidNode::emitCode):
  • kjs/nodes.h:
3:35 PM Changeset in webkit [31447] by mjs@apple.com
  • 3 edits in branches/squirrelfish/JavaScriptCore

2008-03-30 Maciej Stachowiak <mjs@apple.com>

Reviewed by Sam.

Implement CommaNode.


  • kjs/nodes.cpp: (KJS::CommaNode::emitCode):
  • kjs/nodes.h:
2:52 PM Changeset in webkit [31446] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Sam Weinig.

Test: fast/repaint/lines-with-layout-delta.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::repaintRectangle): Made this method take layout delta into account.

LayoutTests:

Reviewed by Sam Weinig.

  • fast/repaint/lines-with-layout-delta.html: Added.
  • platform/mac/fast/repaint/lines-with-layout-delta-expected.checksum: Added.
  • platform/mac/fast/repaint/lines-with-layout-delta-expected.png: Added.
  • platform/mac/fast/repaint/lines-with-layout-delta-expected.txt: Added.
2:41 PM squirrelfish edited by mjs@apple.com
(diff)
2:40 PM squirrelfish edited by mjs@apple.com
(diff)
2:29 PM Changeset in webkit [31445] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Maciej Stachowiak.

  • fix assertion failure in CSSParser.cpp's equalIgnoringCase() when parsing certain transforms.

Test: fast/css/transform-function-lowercase-assert.html

  • css/CSSParser.cpp: (WebCore::TransformOperationInfo::TransformOperationInfo): Changed to always pass a lowercase string as the second argument of equalIgnoringCase().

LayoutTests:

Reviewed by Maciej Stachowiak.

  • test for an assertion failure in CSSParser.cpp's equalIgnoringCase() when parsing certain transforms.
  • fast/css/transform-function-lowercase-assert-expected.txt: Added.
  • fast/css/transform-function-lowercase-assert.html: Added.
2:11 PM Changeset in webkit [31444] by mrowe@apple.com
  • 2 edits in trunk/WebCore

ARM build fix.

2:02 PM Changeset in webkit [31443] by mjs@apple.com
  • 8 edits in branches/squirrelfish/JavaScriptCore

2008-03-30 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Adds support for dot notation and object literals.

  • VM/CodeBlock.cpp: (KJS::CodeBlock::dump):
  • VM/CodeGenerator.cpp: (KJS::CodeGenerator::emitNewObject):
  • VM/CodeGenerator.h:
  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.h:
  • kjs/nodes.cpp: (KJS::ObjectLiteralNode::emitCode): (KJS::PropertyListNode::emitCode): (KJS::DotAccessorNode::emitCode): (KJS::AssignDotNode::emitCode):
  • kjs/nodes.h:
10:25 AM Changeset in webkit [31442] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-03-30 Hiroyuki Ikezoe <poincare@ikezoe.net>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=18036
Rendering invalid japanese characters with pango backend.

  • platform/graphics/gtk/FontPlatformDataPango.cpp: (FontPlatformData::FontPlatformData): Set PangoFontDescription for PangoContext explicitly to use proper font.
10:09 AM Changeset in webkit [31441] by rwlbuis@webkit.org
  • 8 edits
    2 adds in trunk

Reviewed by Oliver.

http://bugs.webkit.org/show_bug.cgi?id=17633
SVG: modifying x & y attribute of text element from JS fails

Make SVG text relayout when x, y attribute is changed from js.

8:25 AM Changeset in webkit [31440] by rwlbuis@webkit.org
  • 2 edits in trunk/LayoutTests

Reviewed by Adam Roben.

Fix wrong id.

Mar 29, 2008:

9:58 PM Changeset in webkit [31439] by mjs@apple.com
  • 8 edits in trunk/WebCore

2008-03-28 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.

  • yet still more bindings speedup


Make AtomicString straight from UString in handcoded bindings

  • bindings/js/JSElementCustom.cpp: (WebCore::JSElement::setAttribute): (WebCore::JSElement::setAttributeNS):
  • dom/Document.cpp: (WebCore::Document::createElement):
  • dom/Document.h:
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::createElement):
  • html/HTMLDocument.h:
7:21 PM Changeset in webkit [31438] by weinig@apple.com
  • 10 edits in trunk/WebCore

2008-03-29 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Fix for <rdar://problem/5828873>

Since NSURL is allowing invalid urls to be loaded, we need to
check the URL validity at the ResourceHandle level and fire off
a cannotShowURL error.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cannotShowURLError):
  • loader/FrameLoader.h:
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::cannotShowURLError): (WebCore::ResourceLoader::wasBlocked): (WebCore::ResourceLoader::cannotShowURL):
  • loader/ResourceLoader.h:
  • platform/KURL.h: (WebCore::KURL::isValid):
  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): (WebCore::ResourceHandle::scheduleFailure): (WebCore::ResourceHandle::fireFailure): (WebCore::portAllowed):
  • platform/network/ResourceHandle.h: (WebCore::ResourceHandle::):
  • platform/network/ResourceHandleClient.h: (WebCore::ResourceHandleClient::cannotShowURL):
  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal):
6:47 PM Changeset in webkit [31437] by Darin Adler
  • 3 edits in trunk/WebCore

2008-03-29 Darin Adler <Darin Adler>

Reviewed by Mitz.

  • more bindings speedup

When I changed the temporary variables to be UString that means that the
valueToString functions also need to return UString to avoid converting
from UString to String twice.

  • bindings/js/kjs_binding.cpp: (WebCore::valueToStringWithNullCheck): Changed return value to UString. (WebCore::valueToStringWithUndefinedOrNullCheck): Ditto.
  • bindings/js/kjs_binding.h: Ditto.
10:52 AM Changeset in webkit [31436] by Darin Adler
  • 2 edits in trunk/WebCore

2008-03-29 Darin Adler <Darin Adler>

Reviewed by Sam.

  • DerivedSources.make: Removed temporary remove-stray-JSRGBColor build rule.
10:51 AM Changeset in webkit [31435] by Darin Adler
  • 21 edits in trunk/WebCore

2008-03-29 Darin Adler <Darin Adler>

Reviewed by Sam.

  • tweak handling of the class attribute to speed up code that sets it but never needs to parse it

6% speedup of Acid3 test 26

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRules): Change to use non-virtual classNames function since the hasClass bit can only be set for a StyledElement. (WebCore::CSSStyleSelector::checkOneSelector): Ditto. Also streamlined the code a bit for the tag matching as well.
  • dom/ClassNames.cpp: (WebCore::hasNonASCIIOrUpper): Added. This function does what other callers seem to want isLower() to do. We should merge this with isLower() in a subsequent cleanup pass. (WebCore::ClassNamesData::createVector): Renamed from parseClassAttribute. Turns the string into a vector. (WebCore::ClassNamesData::containsAll): Added. Used by getElementsByClassName.
  • dom/ClassNames.h: Added a separate ClassNameData class so we could hold the string and case folding flag as well as the vector. Changed ClassNames to have a set function rather than a parseClassAttribute function. Removed the "static" from isClassWhitespace. There's no reason to ask for internal linkage.
  • dom/ClassNodeList.cpp: (WebCore::ClassNodeList::ClassNodeList): Use constructor instead of the parseClassAttribute function. (WebCore::ClassNodeList::nodeMatches): Get rid of unnneeded isElementNode check, since hasClass will only be true for StyledElement nodes. Use the new containsAll function in ClassNames instead of having a loop here.
  • dom/ClassNodeList.h: Removed unneeded forward declaration.
  • dom/Document.cpp: Removed unneeded include.
  • dom/Element.cpp: (WebCore::Element::cloneNode): Changed code to copy attributes to use a function call instead of the assignment operator. This paves the way to making the function more efficient, using a virtual function. (WebCore::Element::setAttributeMap): Updated for PassRefPtr and for name change (element -> m_element). (WebCore::Element::createAttributeMap): Changed to use create function instead of calling the constructor directly.
  • dom/Element.h: Removed unneeded virtual getClassNames function. Changed the argument to setAttributeMap to be a PassRefPtr.
  • dom/NamedAttrMap.cpp: (WebCore::NamedAttrMap::NamedAttrMap): Updated for name change (element -> m_element). (WebCore::NamedAttrMap::getNamedItem): Ditto. (WebCore::NamedAttrMap::removeNamedItem): Ditto. (WebCore::NamedAttrMap::setNamedItem): Ditto. (WebCore::NamedAttrMap::item): Ditto. (WebCore::NamedAttrMap::detachFromElement): Ditto. (WebCore::NamedAttrMap::setAttributes): Renamed this from the assignment operator. (WebCore::NamedAttrMap::addAttribute): Ditto. (WebCore::NamedAttrMap::removeAttribute): Ditto. (WebCore::NamedAttrMap::isReadOnlyNode): Ditto.
  • dom/NamedAttrMap.h: Removed the copy constructor and assignment operator and added a new function, setAttributes, possibly to be made virtual in the future. Made isReadOnlyNode non-virtual. Renamed element -> m_element. Made constructor protected and added a create function.
  • dom/NamedMappedAttrMap.cpp: (WebCore::NamedMappedAttrMap::NamedMappedAttrMap): Changed constructor parameter to take a StyledElement. (WebCore::NamedMappedAttrMap::setClass): Changed to use the new set function.
  • dom/NamedMappedAttrMap.h: Made constructor private and added a create function. Replaced theparseClassAttribute function with clearClass and setClass functions. Replaced the getClassNames function with a classNames function returning a reference instead of a pointer.
  • dom/NamedNodeMap.h: Changed to start refcount at 1 instead of 0. Removed unneeded virtual function isReadOnlyNode.
  • dom/StyledElement.cpp: (WebCore::StyledElement::parseMappedAttribute): Rewrote class attribute handling to use new function names and took out uneeded special case for null attribute. (WebCore::StyledElement::createAttributeMap): Changed to use create function instead of a direct call to new.
  • dom/StyledElement.h: Replaced the virtual getClassNames function with a non-virtual inline classNames function.
  • html/HTMLElement.cpp: (WebCore::HTMLElement::cloneNode): Changed code to copy attributes to use a function call instead of the assignment operator.
  • html/HTMLTokenizer.cpp: (WebCore::Token::addAttribute): Use create function instead of a a direct call to new.
  • html/HTMLViewSourceDocument.cpp: (WebCore::HTMLViewSourceDocument::createContainingTable): Use RefPtr and the new create function. (WebCore::HTMLViewSourceDocument::addViewSourceToken): Ditto. (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Ditto. (WebCore::HTMLViewSourceDocument::addLine): Ditto. (WebCore::HTMLViewSourceDocument::addText): Ditto. (WebCore::HTMLViewSourceDocument::addLink): Ditto.
  • html/HTMLViewSourceDocument.h: Ditto.
  • svg/SVGUseElement.cpp: (WebCore::SVGUseElement::expandSymbolElementsInShadowTree): Changed code to copy attributes to use a function call instead of the assignment operator. (WebCore::SVGUseElement::transferUseAttributesToReplacedElement): Ditto.
8:17 AM Changeset in webkit [31434] by weinig@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

2008-03-29 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Fix crash when canceling a resource load while port blocked failure
timer is going.

Test: fast/loader/cancel-load-during-port-block-timer.html

  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::scheduleBlockedFailure): (WebCore::ResourceHandle::fireBlockedFailure):
  • platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): Make the Timer a member variable of ResourceHandleInternal so that it can be canceled if the ResourceHandle is destroyed.

LayoutTests:

2008-03-29 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Test for crash when canceling a resource load while port blocked failure
timer is going

  • fast/loader/cancel-load-during-port-block-timer-expected.txt: Added.
  • fast/loader/cancel-load-during-port-block-timer.html: Added.
1:18 AM Changeset in webkit [31433] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Oliver Hunt.

<rdar://problem/5829556> REGRESSION: Leak in KJS::initializeThreading()

  • kjs/InitializeThreading.cpp: (KJS::initializeThreading): There is no guarantee that initializeThreading() is called only once; check that the mutex hasn't been already allocated.
1:15 AM squirrelfish edited by ggaren@apple.com
(diff)
1:13 AM Changeset in webkit [31432] by ggaren@apple.com
  • 7 edits in branches/squirrelfish/JavaScriptCore

2008-03-29 Geoffrey Garen <ggaren@apple.com>

Reviewed by Maciej Stachowiak.


Mark the register file.


It's a conservative mark for now, but once registers are typed, we can
do an exact mark.


1.4% regression regardless of whether we actually do the marking.
GCC is is worth every penny.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Most of the changes here are just for the fact that "registers" is a pointer now.
  • kjs/JSGlobalObject.cpp: The global object owns the register file now.
12:25 AM Changeset in webkit [31431] by oliver@apple.com
  • 5 edits in trunk

Bug 17924: Crash in KJS::ConstDeclNode::evaluate with |with| and |const|
<http://bugs.webkit.org/show_bug.cgi?id=17924>
<rdar://problem/5806933>

Reviewed by Geoff.

It turns out this is trivially avoidable if we just match firefox's
semantics and ensure that an assignment in a const declaration always
writes to the variable object.

Note: See TracTimeline for information about the timeline view.