Timeline



Feb 15, 2010:

11:42 PM Changeset in webkit [54809] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

2010-02-15 Gabor Loki <loki@webkit.org>

Reviewed by Gavin Barraclough.

Fix the SP at ctiOpThrowNotCaught on Thumb2 (JSVALUE32)
https://bugs.webkit.org/show_bug.cgi?id=34939

  • jit/JITStubs.cpp:
10:17 PM Changeset in webkit [54808] by Martin Robinson
  • 3 edits in trunk/WebKitTools

2010-02-15 Martin Robinson <Martin Robinson>

Reviewed by Darin Adler.

check-webkit-style should not complain about NULL sentinel in calls to g_strconcat and g_strjoin
https://bugs.webkit.org/show_bug.cgi?id=34834

  • Scripts/webkitpy/style/processors/cpp.py:
  • Scripts/webkitpy/style/processors/cpp_unittest.py:
8:19 PM Changeset in webkit [54807] by mitz@apple.com
  • 8 edits in trunk

WebCore: <rdar://problem/7645609> [webView selectionRect] API is broken for multicolumn layout

Reviewed by Simon Fraser.

Refine the fix for https://bugs.webkit.org/show_bug.cgi?id=34923 by using the center of
a quad’s bounding box, rather than its top left, as the reference point passed to
offsetFromContainer(). This ensures that if a sliver off the top of the selection rect is in
one column, but most of it is on another column, the single rect we return will be for the
second column.

  • platform/graphics/FloatRect.h:

(WebCore::FloatRect::center): Added.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::localToContainerQuad): Use the center instead of the top left.

LayoutTests: Add test case for <rdar://problem/7645609> [webView selectionRect] API is broken for multicolumn layout

Reviewed by Simon Fraser.

  • fast/multicol/client-rects-expected.checksum:
  • fast/multicol/client-rects-expected.png:
  • fast/multicol/client-rects-expected.txt:
  • fast/multicol/client-rects.html:
6:36 PM Changeset in webkit [54806] by eric@webkit.org
  • 3 edits in trunk/WebCore

2010-02-15 MORITA Hajime <morrita@gmail.com>

Reviewed by Nikolas Zimmermann.

SVG text refactor: reduce paint specific callbacks on SVGTextChunkWalker

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

No new tests, no change of functionality.

  • rendering/SVGCharacterLayoutInfo.h: (WebCore::SVGTextChunkWalker::SVGTextChunkWalker): Removed setupBackground(), setupFill(), setupFillSelection(), setupStroke(), setupStrokeSelection(), setupForeground() and associated member variables.
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::setupBackground): renamed from chunkSetupBackgroundCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupFill): renamed from chunkSetupFillCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupFillSelection): renamed from chunkSetupFillSelectionCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupStroke): renamed from chunkSetupStrokeCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupStrokeSelection): renamed from chunkSetupStrokeSelectionCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupForeground): renamed from chunkSetupForegroundCallback. (WebCore::SVGRootInlineBoxPaintWalker::paintChunk): renamed from chunkPortionCallback. (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): extracted from walkTextChunks. (WebCore::SVGRootInlineBox::paint): follow SVGTextChunkWalker change. (WebCore::SVGRootInlineBox::walkTextChunks): moved paint some specific code to SVGRootInlineBoxPaintWalker::chunkPortionCallback().
5:54 PM Changeset in webkit [54805] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by NOBODY (Build Fix!).

5:32 PM Changeset in webkit [54804] by barraclough@apple.com
  • 6 edits in trunk/JavaScriptCore

Some general Rope related refactoring.

Reviewed by Oliver Hunt.

Rename Rope::m_ropeLength to m_fiberCount, to be more descriptive.
Rename Rope::m_stringLength to simply m_length (since this is the
more conventional name for the length of a string). Move append
behaviour out into a new RopeBuilder class, so that Rope no longer
needs any knowledge of the JSString or UString implementation.

Make Rope no longer be nested within JSString.
(Rope now no-longer need reside within JSString.h, but leaving
the change of moving this out to a different header as a separate
change from these renames).

(JSC::JIT::privateCompileCTIMachineTrampolines):

  • runtime/JSString.cpp:

(JSC::Rope::destructNonRecursive):
(JSC::Rope::~Rope):
(JSC::JSString::resolveRope):
(JSC::JSString::toBoolean):
(JSC::JSString::getStringPropertyDescriptor):

  • runtime/JSString.h:

(JSC::Rope::Fiber::Fiber):
(JSC::Rope::Fiber::deref):
(JSC::Rope::Fiber::ref):
(JSC::Rope::Fiber::refAndGetLength):
(JSC::Rope::Fiber::isRope):
(JSC::Rope::Fiber::rope):
(JSC::Rope::Fiber::isString):
(JSC::Rope::Fiber::string):
(JSC::Rope::Fiber::nonFiber):
(JSC::Rope::tryCreateUninitialized):
(JSC::Rope::append):
(JSC::Rope::fiberCount):
(JSC::Rope::length):
(JSC::Rope::fibers):
(JSC::Rope::Rope):
(JSC::Rope::operator new):
(JSC::):
(JSC::RopeBuilder::JSString):
(JSC::RopeBuilder::~JSString):
(JSC::RopeBuilder::length):
(JSC::RopeBuilder::canGetIndex):
(JSC::RopeBuilder::appendStringInConstruct):
(JSC::RopeBuilder::appendValueInConstructAndIncrementLength):
(JSC::RopeBuilder::isRope):
(JSC::RopeBuilder::fiberCount):
(JSC::JSString::getStringPropertySlot):

  • runtime/Operations.h:

(JSC::jsString):

4:25 PM Changeset in webkit [54803] by jorlow@chromium.org
  • 2 edits in trunk/WebKit/chromium

[Chromium] Fix StorageNamespaceProxy::copy() for test shell
https://bugs.webkit.org/show_bug.cgi?id=34949

Reviewed by Darin Fisher.

Chromium passes back NULL when you call WebStorageNamespace::proxy()
but TestShell returns a valid object. Both need to work via
the WebStorageNamespace.

  • src/StorageNamespaceProxy.cpp:

(WebCore::StorageNamespaceProxy::copy):

4:19 PM Changeset in webkit [54802] by mitz@apple.com
  • 2 edits in trunk/WebCore

Try to fix the Chromium build.

  • rendering/RenderThemeChromiumMac.mm:

(WebCore::RenderThemeChromiumMac::convertToPaintingRect):

3:44 PM Changeset in webkit [54801] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Add missing cast for !YARR (PPC) builds.

Reviewed by NOBODY (Build fix).

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

2:58 PM Changeset in webkit [54800] by bweinstein@apple.com
  • 1 edit in trunk/LayoutTests/platform/win/Skipped

Add newline to end of Windows skipped list

2:57 PM Changeset in webkit [54799] by bweinstein@apple.com
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Dan Bernstein.

Skipped glyph-reordering on Windows since it has failed since it was landed. Left a comment
in <https://bugs.webkit.org/show_bug.cgi?id=34865> to track the failure.

  • platform/win/Skipped:
2:37 PM Changeset in webkit [54798] by barraclough@apple.com
  • 7 edits
    2 deletes in trunk

https://bugs.webkit.org/show_bug.cgi?id=33731
Many false leaks in release builds due to PtrAndFlags

Reviewed by Darin Adler.

JavaScriptCore:

StructureTransitionTable was effectively a smart pointer type,
one machine word in size and wholly contained as a member of
of Structure. It either pointed to an actual table, or could
be used to describe a single transtion entry without use of a
table.

This, however, worked by using a PtrAndFlags, which is not
compatible with the leaks tool. Since there is no clear way to
obtain another bit for 'free' here, and since there are bits
available up in Structure, merge this functionality back up into
Structure. Having this in a separate class was quite clean
from an enacapsulation perspective, but this solution doesn't
seem to bad - all table access is now intermediated through the
Structure::structureTransitionTableFoo methods, keeping the
optimization fairly well contained.

This was the last use of PtrAndFlags, so removing the file too.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.h:
  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::~Structure):
(JSC::Structure::addPropertyTransitionToExistingStructure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::hasTransition):

  • runtime/Structure.h:

(JSC::Structure::):
(JSC::Structure::structureTransitionTableContains):
(JSC::Structure::structureTransitionTableGet):
(JSC::Structure::structureTransitionTableHasTransition):
(JSC::Structure::structureTransitionTableRemove):
(JSC::Structure::structureTransitionTableAdd):
(JSC::Structure::structureTransitionTable):
(JSC::Structure::setStructureTransitionTable):
(JSC::Structure::singleTransition):
(JSC::Structure::setSingleTransition):

  • runtime/StructureTransitionTable.h:
  • wtf/PtrAndFlags.h: Removed.

WebCore:

PtrAndFlags has now been removed; remove forwarding header.

  • ForwardingHeaders/wtf/PtrAndFlags.h: Removed.
2:21 PM Changeset in webkit [54797] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Skip more plugin tests on Snow Leopard buildbot, as they need updated closed source components.

  • platform/mac-snowleopard/Skipped: Skip netscape-dom-access.html and netscape-browser-object-identity.html.
1:48 PM Changeset in webkit [54796] by Adam Roben
  • 5 edits in trunk/WebKit/win

Add IWebFramePrivate::visibleContentRect

Fixes <http://webkit.org/b/34956> Add API to get a WebFrame's visible
content rect

Reviewed by Jon Honeycutt.

  • Interfaces/IWebFramePrivate.idl: Added visibleContentRect.
  • Interfaces/WebKit.idl: Touched to force a build.
  • WebFrame.cpp:

(WebFrame::visibleContentRect):

  • WebFrame.h:

Added. Calls through to FrameView::visibleContentRect.

1:43 PM Changeset in webkit [54795] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Rubber Stamped by Geoff Garen.

Bug 34948 - tryMakeString should fail on error in length calculation

Ooops! - "bool overflow" argument should have been "bool& overflow".

  • runtime/UString.h:

(JSC::sumWithOverflow):
(JSC::tryMakeString):

1:41 PM Changeset in webkit [54794] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Some symbol names have changed, remove, will readd if required.

Reviewed by NOBODY (Build Fix (pt 2!)).

1:37 PM Changeset in webkit [54793] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] fast/multicol/client-rects.html fails in QtLauncher
https://bugs.webkit.org/show_bug.cgi?id=34959

  • platform/qt/Skipped: fast/multicol/client-rects.html skipped until fix.
1:24 PM Changeset in webkit [54792] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Some symbol names have changed, remove, will readd if required.

Reviewed by NOBODY (Build Fix (pt 1?)).

1:18 PM Changeset in webkit [54791] by ap@apple.com
  • 3 edits in trunk/WebKit/mac

More build fixing (for what is actually a 64-bit failure, as 32-bit apparently includes
headers that aren't included in 64-bit).

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::contains): (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): Move inline functions to .cpp; also made the class Noncopyable.
1:09 PM Changeset in webkit [54790] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Removed some mistaken code added in http://trac.webkit.org/changeset/53860.

Reviewed by Oliver Hunt.

  • API/APIShims.h:

(JSC::APICallbackShim::APICallbackShim):
(JSC::APICallbackShim::~APICallbackShim): No need to start/stop the
timeout checker when calling out from the API to the client; we want to
monitor the VM for timeouts, not the client. This mistake was harmless /
undetectable, since it's totally redundant with the APIEntryShim, which
also starts / stops the timeout checker.

1:03 PM Changeset in webkit [54789] by barraclough@apple.com
  • 18 edits in trunk

Bug 34952 - String lengths in UString should be unsigned.
This matches WebCore::StringImpl, and better unifies behaviour throughout JSC.

Reviewed by Geoff Garen.

JavaScriptCore:

  • JavaScriptCore.exp:
  • bytecode/EvalCodeCache.h:
  • runtime/Identifier.cpp:

(JSC::Identifier::equal):

  • runtime/Identifier.h:
  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEscape):

  • runtime/JSONObject.cpp:

(JSC::gap):
(JSC::Stringifier::indent):

  • runtime/NumberPrototype.cpp:

(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

  • runtime/StringPrototype.cpp:

(JSC::substituteBackreferencesSlow):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncSplit):
(JSC::trimString):

  • runtime/UString.cpp:

(JSC::UString::UString):
(JSC::UString::from):
(JSC::UString::getCString):
(JSC::UString::ascii):
(JSC::UString::operator[]):
(JSC::UString::toStrictUInt32):
(JSC::UString::find):
(JSC::UString::rfind):
(JSC::UString::substr):
(JSC::operator<):
(JSC::operator>):
(JSC::compare):
(JSC::equal):
(JSC::UString::UTF8String):

  • runtime/UString.h:

(JSC::UString::size):
(JSC::operator==):

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::create):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::create):
(JSC::UStringImpl::size):
(JSC::UStringImpl::computeHash):
(JSC::UStringImpl::UStringImpl):

WebCore:

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::atob):
(WebCore::JSDOMWindow::btoa):

12:59 PM Changeset in webkit [54788] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Bug 34948 - tryMakeString should fail on error in length calculation

Reviewed by Geoff Garen.

The sum of the length of substrings could overflow.

  • runtime/UString.h:

(JSC::sumWithOverflow):
(JSC::tryMakeString):

12:42 PM Changeset in webkit [54787] by ap@apple.com
  • 3 edits in trunk/WebKit/mac

Mac release build fix attempt.

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::~LocalObjectMap): Implement destructor in .cpp file, where necessary headers are already included.
12:35 PM Changeset in webkit [54786] by kov@webkit.org
  • 3 edits
    3 adds in trunk

2010-02-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

[GTK] Crashes when going back to a page that has data: URIs, with page cache enabled
https://bugs.webkit.org/show_bug.cgi?id=34944

Set the URL in the newly created response, when parsing data:
URIs.

Test: fast/harness/page-cache-crash-on-data-urls.html

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl):
12:32 PM Changeset in webkit [54785] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Fixed <rdar://problem/7628524> Crash beneath JSGlobalContextRelease when
typing in Google search field with GuardMalloc/full page heap enabled

Reviewed by Oliver Hunt.

  • API/JSContextRef.cpp: Don't use APIEntryShim, since that requires

a JSGlobalData, which this function destroys. Do use setCurrentIdentifierTable
and JSLock instead, since those are the two features of APIEntryShim we
require.

11:48 AM Changeset in webkit [54784] by mitz@apple.com
  • 15 edits
    4 adds in trunk

<rdar://problem/7647300> Incorrect client rects for blocks the span multiple columns and their descendants
https://bugs.webkit.org/show_bug.cgi?id=34923

Reviewed by Simon Fraser.

WebCore:

Test: fast/multicol/client-rects.html

In column layout, a different transform applies to different points in
the block and its descendants, depending on their y coordinate within the
block. offsetFromContainer() used to return the offset that applied to
the origin. With this change, it returns the offset that applies to a
given reference point. When mapping a quad from local to absolute
coordinates, the top left of the quad’s bounding box is used as that
reference point.

  • editing/SelectionController.cpp:

(WebCore::SelectionController::layout): Pass the caret’s origin as the
reference point to offsetFromContainer().

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::adjustForColumns): Adds the offset between the
given point and its image under the column paint-time transform to the
given offset. Used by offsetFromContainer() where it had previously used
adjustRectForColumns(), which takes a rect and operates less efficiently.

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer): Pass the transformed point as
the reference point to offsetFromContainer().
(WebCore::RenderBox::mapAbsoluteToLocalPoint): Pass a point to
offsetFromContainer().
(WebCore::RenderBox::offsetFromContainer): Use adjustForColumns() instead
of adjustRectForColumns(), and use the reference point to get the right
adjustment for the point of interest, instead of the origin, in case this
box spans multiple columns.

  • rendering/RenderBox.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::offsetFromContainer): Ditto. Actually apply the
column offset to the computation, which previously this function didn’t
do.
(WebCore::RenderInline::mapLocalToContainer): Pass the transformed point
as the reference point to offsetFromContainer().
(WebCore::RenderInline::mapAbsoluteToLocalPoint): Pass a point to
offsetFromContainer().

  • rendering/RenderInline.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::mapLocalToContainer): Apply column adjustment,
based on the reference point, to the transform if needed.
(WebCore::RenderObject::localToContainerQuad): Initialize the
TransformState with the top left corner of the quad’s bounding box. It
is later used as the reference point when deciding on which column to
base the calculations.
(WebCore::RenderObject::offsetFromContainer): Adjust for columns.
(WebCore::RenderObject::offsetFromAncestorContainer): Pass the origin
as the reference point to offsetFromContainer().

  • rendering/RenderObject.h:

(WebCore::RenderObject::adjustForColumns): Added.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::offsetFromContainer): Pass the reference
point through.

  • rendering/RenderTableCell.h:
  • rendering/RenderText.cpp:

(WebCore::RenderText::absoluteRectsForRange): Map (the origin of) each
rect to absolute coordinates individually.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::convertToPaintingRect): Pass a point to
offsetFromContainer().

LayoutTests:

  • fast/multicol/client-rects-expected.checksum: Added.
  • fast/multicol/client-rects-expected.png: Added.
  • fast/multicol/client-rects-expected.txt: Added.
  • fast/multicol/client-rects.html: Added.
11:16 AM Changeset in webkit [54783] by ap@apple.com
  • 13 edits
    3 adds in trunk

Reviewed by Kevin Decker.

<rdar://problem/7130641> Browser objects identity is not preserved by Safari

Test: plugins/netscape-browser-object-identity.html

  • bridge/runtime_root.h: (JSC::Bindings::RootObject::addInvalidationCallback): RootObject can now call out during invalidation, making it possible for other code to know when this happens.
  • bridge/runtime_root.cpp: (JSC::Bindings::RootObject::InvalidationCallback::~InvalidationCallback): Empty destructor, in cpp file since it's virtual. (JSC::Bindings::RootObject::invalidate): Invoke invalidation callbacks.
  • bridge/NP_jsobject.cpp: (ObjectMap): Keep a JSObject->NPObject map for each RootObject. It somewhat cleaner to keep it outside RootObject, because (1) it is agnostic of what kinds of objects can wrap JSObject, and (2) out of process NPAPI implementation also keeps its corresponding map separately, due to supporting per-instance granularity (as opposed to per-RootObject here). (jsDeallocate): Remove the corresponding map entry. (_NPN_CreateScriptObject): Try to fetch existing object from the map, incrementing refcount.
10:35 AM Changeset in webkit [54782] by Philippe Normand
  • 2 edits in trunk/WebCore

2010-02-15 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Gustavo Noronha Silva.

Removed redefine of LOG_VERBOSE. This should not have commited in
the first place.

  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
10:04 AM Changeset in webkit [54781] by eric@webkit.org
  • 3 edits in trunk/JavaScriptCore

2010-02-15 Patrick Gansterer <paroga@paroga.com>

Reviewed by Laszlo Gombos.

Added additional parameter to create_rvct_stubs
for setting the offset of thunkReturnAddress.
https://bugs.webkit.org/show_bug.cgi?id=34657

  • create_rvct_stubs:
  • jit/JITStubs.cpp:
9:48 AM Changeset in webkit [54780] by pfeldman@chromium.org
  • 4 edits
    2 adds in trunk

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: incorrect syntax highlighting as HTML in a script tag.
We were preserving initial lexer state upon entering other tags while in <script>
but were not doing it for <script tag itself. As a result, nested script
tags were failing to highlight.

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

  • inspector/front-end/SourceHTMLTokenizer.js: (WebInspector.SourceHTMLTokenizer.prototype.nextToken):
  • inspector/front-end/SourceHTMLTokenizer.re2js:
9:46 AM Changeset in webkit [54779] by eric@webkit.org
  • 3 edits in trunk/WebKit/gtk

2010-02-15 Emilio Pozuelo Monfort <pochu27@gmail.com>

Reviewed by Gustavo Noronha Silva.

[GTK] Fails to build on GNU/Hurd because of PATH_MAX usage
https://bugs.webkit.org/show_bug.cgi?id=34920

Use dynamic allocation instead of fixed PATH_MAX size buffers to
fix the build on GNU/Hurd, where PATH_MAX is undefined.

  • tests/testmimehandling.c: (main):
  • tests/testwebview.c: (main):
9:31 AM Changeset in webkit [54778] by beidson@apple.com
  • 4 edits in trunk/WebCore

Add a progress-indicator logging channel to WebCore, and convert the old WebKit Logging
messages over to WebCore-style.

Reviewed by Dan Bernstein.

No new tests. (Logging changes only)

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::progressCompleted):
(WebCore::ProgressTracker::finalProgressComplete):
(WebCore::ProgressTracker::incrementProgress):

  • platform/Logging.cpp:

(WebCore::):
(WebCore::getChannelFromName):

  • platform/Logging.h:
9:10 AM Changeset in webkit [54777] by mnaganov@chromium.org
  • 7 edits
    4 moves in trunk/WebCore

Revert 54776

Move JSC-specific wrappers for Profile and ProfileNode to bindings/js.
https://bugs.webkit.org/show_bug.cgi?id=34848

8:59 AM Changeset in webkit [54776] by mnaganov@chromium.org
  • 7 edits
    4 moves in trunk/WebCore

2010-02-15 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Pavel Feldman.

Move JSC-specific wrappers for Profile and ProfileNode to bindings/js.

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

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JavaScriptProfile.cpp: Added. (WebCore::profileCache): (WebCore::getTitleCallback): (WebCore::getHeadCallback): (WebCore::getUniqueIdCallback): (WebCore::focus): (WebCore::exclude): (WebCore::restoreAll): (WebCore::finalize): (WebCore::ProfileClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfile.h: Added.
  • bindings/js/JavaScriptProfileNode.cpp: Added. (WebCore::profileNodeCache): (WebCore::getFunctionName): (WebCore::getURL): (WebCore::getLineNumber): (WebCore::getTotalTime): (WebCore::getSelfTime): (WebCore::getNumberOfCalls): (WebCore::getChildren): (WebCore::getVisible): (WebCore::getCallUID): (WebCore::finalize): (WebCore::ProfileNodeClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfileNode.h: Added.
  • inspector/JavaScriptProfile.cpp: Removed.
  • inspector/JavaScriptProfile.h: Removed.
  • inspector/JavaScriptProfileNode.cpp: Removed.
  • inspector/JavaScriptProfileNode.h: Removed.
7:36 AM Changeset in webkit [54775] by eric@webkit.org
  • 5 edits in trunk

2010-02-15 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Simon Hausmann.

[Qt] QtWebkit bridge: enable passing a QWebElement to a signal/slot/property
https://bugs.webkit.org/show_bug.cgi?id=34901

When a signal/slot/property is of type QWebElement, it can seamlessly
connect with JS objects that hold a WebCore element.

New tests, see WebKit/qt/ChangeLog

  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::QtWebElementRuntime::create): A proxy to QWebElement constructor (JSC::Bindings::QtWebElementRuntime::get): A proxy to QWebElement::element (JSC::Bindings::convertValueToQVariant): handle QWebElement (JSC::Bindings::convertQVariantToValue): handle QWebElement

2010-02-15 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Simon Hausmann.

[Qt] QtWebkit bridge: enable passing a QWebElement to a signal/slot/property
Add Q_DECLARE_METATYPE to QWebElement, add relevant tests to
tst_qwebframe
https://bugs.webkit.org/show_bug.cgi?id=34901

  • Api/qwebelement.h: declare metatype
  • tests/qwebframe/tst_qwebframe.cpp: (MyQObject::webElementProperty): new test for QWebElement (MyQObject::setWebElementProperty): new test for QWebElement (MyQObject::myOverloadedSlot): new test for QWebElement
5:56 AM Changeset in webkit [54774] by pfeldman@chromium.org
  • 2 edits in trunk/WebCore

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Not reviewed, Chromium tests fix (force conversion of property names to
strings in Web Inspector's injected script).

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor):
4:52 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
4:46 AM HackingGtk edited by joel@jms.id.au
(diff)
4:08 AM Changeset in webkit [54773] by eric@webkit.org
  • 4 edits in trunk/JavaScriptCore

2010-02-15 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>

Reviewed by Simon Hausmann.

Fix QScriptValue::toIntXX methods.

More ECMA Script compliance.

[Qt] QScriptValue::toIntXX returns incorrect values
https://bugs.webkit.org/show_bug.cgi?id=34847

  • qt/api/qscriptvalue_p.h: (QScriptValuePrivate::toInteger): (QScriptValuePrivate::toInt32): (QScriptValuePrivate::toUInt32): (QScriptValuePrivate::toUInt16):
  • qt/tests/qscriptvalue/tst_qscriptvalue.h:
  • qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp: (tst_QScriptValue::toInteger_initData): (tst_QScriptValue::toInteger_makeData): (tst_QScriptValue::toInteger_test): (tst_QScriptValue::toInt32_initData): (tst_QScriptValue::toInt32_makeData): (tst_QScriptValue::toInt32_test): (tst_QScriptValue::toUInt32_initData): (tst_QScriptValue::toUInt32_makeData): (tst_QScriptValue::toUInt32_test): (tst_QScriptValue::toUInt16_initData): (tst_QScriptValue::toUInt16_makeData): (tst_QScriptValue::toUInt16_test):
3:11 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
2:56 AM Changeset in webkit [54772] by eric@webkit.org
  • 10 edits in trunk

2010-02-15 Robert Hogan <robert@roberthogan.net>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • platform/qt/Skipped:

2010-02-15 Robert Hogan <robert@roberthogan.net>, Jocelyn Turcotte <jocelyn.turcotte@nokia.com>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • Api/qwebpage.cpp: (qt_drt_webinspector_executeScript): (qt_drt_webinspector_close): (qt_drt_webinspector_show): (qt_drt_setTimelineProfilingEnabled):
  • WebCoreSupport/InspectorClientQt.cpp: (InspectorClientQt::createPage)

2010-02-15 Robert Hogan <robert@roberthogan.net>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting): (WebCore::isWebInspectorTest): (WebCore::DumpRenderTree::open):
  • DumpRenderTree/qt/DumpRenderTreeQt.h: (WebCore::DumpRenderTree::display):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::closeWebInspector): (LayoutTestController::showWebInspector): (LayoutTestController::evaluateInWebInspector): (LayoutTestController::setTimelineProfilingEnabled): (LayoutTestController::display):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
2:51 AM Changeset in webkit [54771] by pfeldman@chromium.org
  • 2 edits in trunk/WebCore

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Not reviewed: touch InspectorController in order to kick win bot tests
with new injected script contents.

  • inspector/InspectorController.cpp:
2:44 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
2:34 AM Changeset in webkit [54770] by pfeldman@chromium.org
  • 8 edits in trunk/WebCore

2010-02-14 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: highlight actual search match in elements panel.

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

  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.searchCanceled): (WebInspector.ElementsPanel.prototype.performSearch): (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): (WebInspector.ElementsPanel.prototype._highlightCurrentSearchResult): (WebInspector.ElementsPanel.prototype._hideSearchHighlights):
  • inspector/front-end/InjectedScript.js:
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype.findSearchMatches):
  • inspector/front-end/TextViewer.js: (WebInspector.TextViewer.prototype._paintLine):
  • inspector/front-end/textViewer.css:
  • inspector/front-end/utilities.js:
2:22 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
2:20 AM Changeset in webkit [54769] by pfeldman@chromium.org
  • 8 edits in trunk

2010-02-14 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: XPathResult objects are not expanded in console.

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

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor):
  • inspector/front-end/ObjectPropertiesSection.js: (WebInspector.ObjectPropertiesSection.prototype.updateProperties): (WebInspector.ObjectPropertiesSection.CompareProperties): (WebInspector.ObjectPropertyTreeElement.prototype.update):
  • inspector/front-end/Section.js: (WebInspector.Section):
  • inspector/front-end/inspector.css:

Tests:

  • inspector/console-dir-expected.txt:
  • inspector/console-dir.html:
2:20 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
2:14 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
2:07 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
1:51 AM Changeset in webkit [54768] by Philippe Normand
  • 4 edits in trunk/LayoutTests

2010-02-15 Philippe Normand <pnormand@igalia.com>

media/video-display-aspect-ratio.html fails
https://bugs.webkit.org/show_bug.cgi?id=34933

Skipped the new test that fails.

  • platform/mac-leopard/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/win/Skipped:
1:28 AM Changeset in webkit [54767] by Antti Koivisto
  • 4 edits in trunk/WebKit/qt

2010-02-12 Antti Koivisto <koivisto@iki.fi>

Reviewed by Kenneth Rohde Christiansen and Simon Hausmann.


https://bugs.webkit.org/show_bug.cgi?id=34885
Add a QGraphicsWebView mode that makes it automatically resize itself to the size of the content.

This is useful for cases where the client wants to implement page panning and zooming by manipulating
the graphics item.


Add a option to QGVLauncher to test this mode.

  • Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::QGraphicsWebViewPrivate): (QGraphicsWebViewPrivate::updateResizesToContentsForPage): (QGraphicsWebViewPrivate::_q_contentsSizeChanged): (QGraphicsWebView::setPage): (QGraphicsWebView::setResizesToContents): (QGraphicsWebView::resizesToContents):
  • Api/qgraphicswebview.h:
  • QGVLauncher/main.cpp: (WebView::WebView): (MainView::MainView): (MainView::setMainWidget): (MainView::resizeEvent): (main):
12:48 AM Changeset in webkit [54766] by Philippe Normand
  • 3 edits
    3 adds in trunk

2010-02-10 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[Gtk] wrong video aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=34790

Fixed natural size calculation regarding pixel aspect ratio and
display aspect ratio.

Test: media/video-display-aspect-ratio.html

  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: (WebCore::greatestCommonDivisor): (WebCore::MediaPlayerPrivate::naturalSize):

2010-02-12 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[Gtk] wrong video aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=34790

Test checking the size of a 4:3 video with a 16:9 pixel aspect
ratio.

  • media/content/test-par-16-9.mp4: Added.
  • media/video-display-aspect-ratio-expected.txt: Added.
  • media/video-display-aspect-ratio.html: Added.

Feb 14, 2010:

10:31 PM Changeset in webkit [54765] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

2010-02-14 Laszlo Gombos <Laszlo Gombos>

Reviewed by Adam Barth.

Implement NEVER_INLINE and NO_RETURN for RVCT
https://bugs.webkit.org/show_bug.cgi?id=34740

  • wtf/AlwaysInline.h:
10:05 PM Changeset in webkit [54764] by eric@webkit.org
  • 3 edits
    4 adds in trunk

2010-02-14 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

HTML5 iframe sandbox bypass of window.top.location navigation via <form target="_top">
https://bugs.webkit.org/show_bug.cgi?id=33277

Add a test that _top is covered by @sandbox.

  • http/tests/security/resources/fail.html: Added.
  • http/tests/security/resources/sandboxed-iframe-form-top.html: Added.
  • http/tests/security/sandboxed-iframe-form-top-expected.txt: Added.
  • http/tests/security/sandboxed-iframe-form-top.html: Added.

2010-02-14 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

HTML5 iframe sandbox bypass of window.top.location navigation via <form target="_top">
https://bugs.webkit.org/show_bug.cgi?id=33277

submitForm wasn't respecting shouldAllowNavigation. Instead of calling
the wrapper function, we need to call shouldAllowNavigation because we
need to handle the "frame not found" case differently than the
"navigation denied" case.

Test: http/tests/security/sandboxed-iframe-form-top.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm):
9:47 PM Changeset in webkit [54763] by eric@webkit.org
  • 4 edits in trunk/WebKit/chromium

2010-02-14 Vangelis Kokkevis <vangelis@chromium.org>

Reviewed by Darin Fisher.

[Chromium] Add support for the showDebugBorders setting to Chromium.

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

  • public/WebSettings.h: Add declaration for setShowDebugBorders
  • src/WebSettingsImpl.cpp: (WebKit::WebSettingsImpl::setShowDebugBorders): Add method implementation
  • src/WebSettingsImpl.h: Added declaration for setShowDebugBorders
9:31 PM Changeset in webkit [54762] by eric@webkit.org
  • 2 edits in trunk/WebKit/gtk

2010-02-14 Diego Escalante Urrelo <descalante@igalia.com>

Reviewed by Gustavo Noronha Silva.

[gtk] WebKitDownload's currentSize property is guint, should be guint64
https://bugs.webkit.org/show_bug.cgi?id=34829

Actually use a guint64 for current-size property in WebKitDownload, we
were using a guint which is likely the cause for wrong sizes for files
over 4 Gb.

  • webkit/webkitdownload.cpp:
9:14 PM Changeset in webkit [54761] by eric@webkit.org
  • 3 edits in trunk/LayoutTests

2010-02-14 Shu Chang <Chang.Shu@nokia.com>

Reviewed by Adam Barth.

[Qt] The original test case failed on Qt because its real output
"A B C DE F" did not match the expected "A B C D E F". The input
field between D and E failed to generate the space in the dumped
text as it normally would if it was broken into a new line.
This DRT issue can be addressed in a seperate bug if necessary
but shrinking the size of font so as to fit all fields into one
line is an immediate fix to pass the test case.
https://bugs.webkit.org/show_bug.cgi?id=33093

  • fast/html/text-field-input-types.html:
  • platform/qt/Skipped:
8:58 PM Changeset in webkit [54760] by eric@webkit.org
  • 10 edits in trunk/WebKitTools

2010-02-14 Dirk Pranke <dpranke@chromium.org>

Reviewed by Eric Seidel.

Update rebaseline-chromium-webkit-tests to work with the new code
structure (port objects instead of path_utils and platform_utils).

Added a path_to_test_expectations_file() to the Port interface.

Fixed a bug in the chromium_* platform implementations where the
'target' option was assumed to be set.

  • Scripts/rebaseline-chromium-webkit-tests:
  • Scripts/webkitpy/layout_tests/layout_package/test_expectations.py:
  • Scripts/webkitpy/layout_tests/port/base.py:
  • Scripts/webkitpy/layout_tests/port/chromium.py:
  • Scripts/webkitpy/layout_tests/port/chromium_linux.py:
  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:
  • Scripts/webkitpy/layout_tests/port/chromium_win.py:
  • Scripts/webkitpy/layout_tests/port/test.py:
  • Scripts/webkitpy/layout_tests/rebaseline_chromium_webkit_tests.py:
8:42 PM Changeset in webkit [54759] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-02-14 Eric Seidel <eric@webkit.org>

Reviewed by Darin Adler.

webkit-build-directory misuses terms
https://bugs.webkit.org/show_bug.cgi?id=34822

  • Scripts/webkit-build-directory:
    • Add --top-level and --configuration options and make using one of them required.
  • Scripts/webkitpy/layout_tests/port/mac.py:
    • Use --top-level instead of --base.
8:08 PM Changeset in webkit [54758] by tkent@chromium.org
  • 5 edits in trunk/WebCore

2010-02-14 Kent Tamura <tkent@chromium.org>

No review. Touch RenderRuny*.cpp to fix Chromium/Windows build bot.

  • rendering/RenderRuby.cpp: Add a comment for #endf.
  • rendering/RenderRubyBase.cpp: Add a comment for #endf.
  • rendering/RenderRubyRun.cpp: Add a comment for #endf.
  • rendering/RenderRubyText.cpp: Add a comment for #endf.
8:22 AM Changeset in webkit [54757] by Laszlo Gombos
  • 4 edits in trunk

2010-02-14 Chang Shu <Chang.Shu@nokia.com>

Reviewed by Laszlo Gombos.

[Qt] Enable appcache feature.
https://bugs.webkit.org/show_bug.cgi?id=34713

Re-land r54543 without the change in DumpRenderTree/qt/main.cpp.
Persistent storage for AppCache is already initialized in
DumpRenderTreeQt.cpp.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage):

2010-02-14 Chang Shu <Chang.Shu@nokia.com>

Reviewed by Laszlo Gombos.

[Qt] Enable http/tests/appcache but skip the failed cases.
https://bugs.webkit.org/show_bug.cgi?id=34713

  • platform/qt/Skipped:
1:17 AM Changeset in webkit [54756] by pfeldman@chromium.org
  • 3 edits in trunk/WebCore

2010-02-13 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: cache created row, span and text elements
in TextView to improve scroller performance on debug build.

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

Feb 13, 2010:

10:22 PM UsingGitWithWebKit edited by Chris Jerdonek
Added tip on how to determine the path to git. (diff)
9:13 PM WikiStart edited by Chris Jerdonek
Made "Debugging WebKit with XCode" link directly to webkit.org. (diff)
1:44 PM ImprovingLifeOnWindows edited by jberlin@webkit.org
Setting WebKitOutputDir and WebKitLibrariesDir landed in r51932 (diff)
1:41 PM BuildingOnWindows edited by jberlin@webkit.org
Adding information about not being able to find SafariTheme.dll … (diff)
1:06 PM Changeset in webkit [54755] by bweinstein@apple.com
  • 1 edit in trunk/WebCore/html/HTMLInputElement.cpp

Build fix for Windows, initialize success to false.

11:52 AM Changeset in webkit [54754] by tkent@chromium.org
  • 5 edits in trunk/WebCore

2010-02-13 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

Refactor parsing/serialization functions in HTMLInputElement.
https://bugs.webkit.org/show_bug.cgi?id=34852

  • Rename formStringToDouble() to parseToDoubleForNumberType()
  • Rename formStringToDateComponents() to parseToDateComponents()
  • Rename formStringFromDouble() to serializeForNumberType()
  • Add serializeForDateTimeTypes() The code is moved from setValueAsDate() and setDateValue().
  • Add serialize()

parseToDouble() is the top-level function to parse a
type-dependent string and return a double
value. parseToDoubleForNumber() and parseToDateComponents()
functions are helper functions for it. serialize() is the
top-level function to serialize a double value to a type-dependent
string, and serializeForNumberType() and
serializeForDateTimeTypes() are helper functions for it.

No tests because of no functional changes.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::stepMismatch): (WebCore::HTMLInputElement::getAllowedValueStep): (WebCore::HTMLInputElement::parseToDouble): (WebCore::HTMLInputElement::valueAsDate): (WebCore::HTMLInputElement::setValueAsDate): (WebCore::HTMLInputElement::setValueAsNumber): (WebCore::HTMLInputElement::serializeForDateTimeTypes): (WebCore::HTMLInputElement::serialize): (WebCore::HTMLInputElement::serializeForNumberType): (WebCore::HTMLInputElement::parseToDoubleForNumberType): (WebCore::HTMLInputElement::parseToDateComponents):
  • html/HTMLInputElement.h:
  • html/ValidityState.cpp: (WebCore::ValidityState::typeMismatch):
  • rendering/RenderSlider.cpp: (WebCore::SliderRange::valueFromElement): (WebCore::RenderSlider::updateFromElement): (WebCore::RenderSlider::setValueForPosition):
7:39 AM Changeset in webkit [54753] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skip new test that fails. See https://webkit.org/b/34918.

  • platform/qt/Skipped: fast/text/glyph-reordering.html skipped.
6:04 AM Changeset in webkit [54752] by kov@webkit.org
  • 2 edits in trunk/LayoutTests

2010-02-13 Gustavo Noronha Silva <Gustavo Noronha Silva>

Skip new test that fails. See https://webkit.org/b/34918.

  • platform/gtk/Skipped:

Feb 12, 2010:

11:53 PM Changeset in webkit [54751] by chang.shu@nokia.com
  • 2 edits in trunk/WebKitTools
9:14 PM Changeset in webkit [54750] by ojan@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

2010-02-12 Ojan Vafai <ojan@chromium.org>

Reviewed by Dan Bernstein.

text-control-intrinsic-widths.html failing on tiger bot
https://bugs.webkit.org/show_bug.cgi?id=34917

Final cleanup for http://trac.webkit.org/changeset/54748.
Some MS fonts don't come with a default install of Tiger, but do
come with a default Leopard/SnowLeopard install. As a result we naturally
get different metrics a page uses these fonts.

  • platform/mac-tiger/fast/forms/text-control-intrinsic-widths-expected.txt: Added.
8:43 PM Changeset in webkit [54749] by ojan@chromium.org
  • 3 edits
    1 move
    1 add in trunk/LayoutTests

2010-02-12 Ojan Vafai <ojan@chromium.org>

Reviewed by Maciej Stachowiak.

Four textcontrol tests fail after http://trac.webkit.org/changeset/54748
https://bugs.webkit.org/show_bug.cgi?id=34916

-Put the baseline for text-control-intrinsic-widths in the right place!
-I missed perspective-non-layer.html because we don't run it on Leopard.
-Accidentally deleted drag-text-delay-expected.txt and text-control-intrinsic-widths-expected.txt
instead of updating their results.

  • platform/mac-leopard/fast/forms/text-control-intrinsic-widths-expected.txt: Removed.
  • platform/mac/fast/forms/text-control-intrinsic-widths-expected.txt:
  • platform/mac/transforms/3d/general/perspective-non-layer-expected.txt:
  • platform/win/editing/selection/drag-text-delay-expected.txt: Added.
  • platform/win/fast/forms/text-control-intrinsic-widths-expected.txt: Added.
7:20 PM Changeset in webkit [54748] by ojan@chromium.org
  • 437 edits
    123 deletes in trunk

2010-01-05 Ojan Vafai <ojan@chromium.org>

Reviewed by Eric Seidel.

Improve text control instrinsic widths.
https://bugs.webkit.org/show_bug.cgi?id=25566
https://bugs.webkit.org/show_bug.cgi?id=25581
https://bugs.webkit.org/show_bug.cgi?id=25958

Excluding list of updated results as the list is so long.

2010-01-05 Ojan Vafai <ojan@chromium.org>

Reviewed by Dan Bernstein.

Improve text control intrinsic widths.
https://bugs.webkit.org/show_bug.cgi?id=25566
https://bugs.webkit.org/show_bug.cgi?id=25581
https://bugs.webkit.org/show_bug.cgi?id=25958

For Mac fonts that have invalid avgCharWidth entries in the OS/2 table,
fallback to the Safari 4- behavior of using the width of a zero. For other
fonts, make Mac match Windows (and thus IE) metrics.

Lucida Grande is hard-coded to match MS Shell Dlg for inputs and
Courier New for textareas in order to match Safari Win, Firefox and, in
some cases IE (IE uses different default fonts depending on encoding).

The only case where we still don't match Windows is if no font-size is
set. The default font-size for form controls on the Mac is smaller and
thus text-control widths will be slightly smaller.

No new tests. Covered by existing tests.

  • platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::SimpleFontData::platformCharWidthInit):
  • rendering/RenderTextControl.cpp: (WebCore::): (WebCore::RenderTextControl::hasValidAvgCharWidth): (WebCore::RenderTextControl::getAvgCharWidth): (WebCore::RenderTextControl::calcPrefWidths):
  • rendering/RenderTextControl.h: (WebCore::RenderTextControl::scaleEmToUnits):
  • rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::getAvgCharWidth):
  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::getAvgCharWidth): (WebCore::RenderTextControlSingleLine::preferredContentWidth):
  • rendering/RenderTextControlSingleLine.h:
7:09 PM Changeset in webkit [54747] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove uses of PtrAndFlags from JIT data stuctures.

Reviewed by Oliver Hunt.

These break the OS X Leaks tool. Free up a bit in CallLinkInfo, and invalid
permutation of pointer states in MethodCallLinkInfo to represent the removed bits.

  • bytecode/CodeBlock.h:

(JSC::CallLinkInfo::seenOnce):
(JSC::CallLinkInfo::setSeen):
(JSC::MethodCallLinkInfo::MethodCallLinkInfo):
(JSC::MethodCallLinkInfo::seenOnce):
(JSC::MethodCallLinkInfo::setSeen):

  • jit/JIT.cpp:

(JSC::JIT::unlinkCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::patchMethodCallProto):

  • runtime/UString.h:
7:01 PM Changeset in webkit [54746] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2010-02-11 Ariya Hidayat <ariya.hidayat@gmail.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Unnecessary QBrush construction for doing a solid color stroke
https://bugs.webkit.org/show_bug.cgi?id=34874

Use the similar trick like in r54347, i.e. use the special brush for
solid color to avoid expensive QBrush constructor.

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::setPlatformStrokeColor):
5:46 PM Changeset in webkit [54745] by Darin Adler
  • 2 edits in trunk/WebKitTools

Ignore compiled Python in more of webkitpy.

  • Scripts/webkitpy/style/processors: Added property svn:ignore.
5:18 PM Changeset in webkit [54744] by mjs@apple.com
  • 24 edits in branches/safari-532-branch

.: Merged from trunk:

2010-02-11 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • configure.ac:

JavaScriptCore: Merged from trunk:

2010-02-11 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:

WebCore: Merged from trunk:

2010-02-11 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • GNUmakefile.am:
  • html/HTMLTagNames.in: Make the ruby-related tag names conditional.
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::createObject): ifdef the code that would create ruby elements.

  • rendering/RenderObject.h: ditto above
  • rendering/RenderRuby.cpp: ifdef this whole file
  • rendering/RenderRuby.h: ditto
  • rendering/RenderRubyBase.cpp: ditto
  • rendering/RenderRubyBase.h: ditto
  • rendering/RenderRubyRun.cpp: ditto
  • rendering/RenderRubyRun.h: ditto
  • rendering/RenderRubyText.cpp: ditto
  • rendering/RenderRubyText.h: ditto

WebKit/mac: Merged from trunk:

2010-02-11 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:

WebKitLibraries: Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

Reviewed by Cameron Zwarich.

  • win/tools/vsprops/FeatureDefines.vsprops:

WebKitTools: Merged from trunk:

2010-02-11 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Scripts/build-webkit:
3:57 PM Changeset in webkit [54743] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Many false leaks in release builds due to PtrAndFlags

Reviewed by Darin Adler.

Remove UntypedPtrAndBitfield (similar to PtrAndFlags) in UStringImpl,
and steal bits from the refCount instead.

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::baseSharedBuffer):
(JSC::UStringImpl::~UStringImpl):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::cost):
(JSC::UStringImpl::isIdentifier):
(JSC::UStringImpl::setIsIdentifier):
(JSC::UStringImpl::ref):
(JSC::UStringImpl::deref):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::bufferOwnerString):
(JSC::UStringImpl::bufferOwnership):
(JSC::UStringImpl::isStatic):
(JSC::UStringImpl::):

3:29 PM Changeset in webkit [54742] by darin@chromium.org
  • 8 edits
    1 add in trunk

2010-02-11 Darin Fisher <darin@chromium.org>

Reviewed by Jeremy Orlow.

Introduce WebCookieJar, and provide for a frame specific cookie jar.

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

  • WebKit.gyp:
  • public/WebCookieJar.h: Added.
  • public/WebFrameClient.h: (WebKit::WebFrameClient::cookieJar):
  • public/WebKitClient.h: (WebKit::WebKitClient::cookieJar): (WebKit::WebKitClient::setCookies): (WebKit::WebKitClient::cookies): (WebKit::WebKitClient::rawCookies): (WebKit::WebKitClient::deleteCookie): (WebKit::WebKitClient::cookiesEnabled):
  • src/ChromiumBridge.cpp: (WebCore::getCookieJar): (WebCore::ChromiumBridge::setCookies): (WebCore::ChromiumBridge::cookies): (WebCore::ChromiumBridge::rawCookies): (WebCore::ChromiumBridge::deleteCookie): (WebCore::ChromiumBridge::cookiesEnabled):
3:21 PM Changeset in webkit [54741] by eric@webkit.org
  • 10 edits
    3 deletes in trunk

2010-02-12 Eric Seidel <eric@webkit.org>

No review, rolling out r54694.
http://trac.webkit.org/changeset/54694
https://bugs.webkit.org/show_bug.cgi?id=34633

This appears to have caused crashes on the Leopard bot. See
bug 34898.

  • websocket/tests/bufferedAmount-after-close-expected.txt: Removed.
  • websocket/tests/bufferedAmount-after-close.html: Removed.
  • websocket/tests/script-tests/bufferedAmount-after-close.js: Removed.

2010-02-12 Eric Seidel <eric@webkit.org>

No review, rolling out r54694.
http://trac.webkit.org/changeset/54694
https://bugs.webkit.org/show_bug.cgi?id=34633

This appears to have caused crashes on the Leopard bot. See
bug 34898.

  • websockets/ThreadableWebSocketChannelClientWrapper.h: (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
  • websockets/WebSocket.cpp: (WebCore::WebSocket::WebSocket): (WebCore::WebSocket::send): (WebCore::WebSocket::close): (WebCore::WebSocket::bufferedAmount): (WebCore::WebSocket::didConnect): (WebCore::WebSocket::didClose):
  • websockets/WebSocket.h:
  • websockets/WebSocketChannel.cpp: (WebCore::WebSocketChannel::WebSocketChannel): (WebCore::WebSocketChannel::send): (WebCore::WebSocketChannel::bufferedAmount): (WebCore::WebSocketChannel::didClose):
  • websockets/WebSocketChannel.h:
  • websockets/WebSocketChannelClient.h: (WebCore::WebSocketChannelClient::didClose):
  • websockets/WorkerThreadableWebSocketChannel.cpp: (WebCore::workerContextDidClose): (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
  • websockets/WorkerThreadableWebSocketChannel.h:
2:42 PM Changeset in webkit [54740] by barraclough@apple.com
  • 4 edits in trunk/WebCore

Workers' EventListeners should be removed before JSGlobalData is destroyed
https://bugs.webkit.org/show_bug.cgi?id=34903

Reviewed by Sam Weinig.

(Patch co-developed with Alexey Proskuryakov).

Since http://trac.webkit.org/changeset/54460 the EventListeners registered by a
worker thread are not removed until after the thread's JSGlobalData has been
destroyed. This is slightly worrisome since the JSEventListener contains
JSObject*s, which will be dangling once the heap is destroyed. The
JSEventListeners may also reference the worker thread's normal world, which
again it makes no sense to keep around after the JSGlobalData is freed.

Remove all event listeners immediately prior to tearing down the JSGlobalData.

https://bugs.webkit.org/show_bug.cgi?id=34728 addressed the symptoms of this
problem, and it is probably cleaner to make the client data's normal world no
longer be a member (since it is a ref-counted object), however they should be
no requirement to 'detatch' – it makes no sense for anyone to be referencing
the world after the JSGlobalData has gone away (the world's purpose is to hold
wrapper objects in the JSGlobalData's heap). Keep the restructuring that makes
the normal world no longer be a member, but remove the detach mechanism this
patch added & replace with stronger ASSERTs.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::DOMWrapperWorld::~DOMWrapperWorld):

  • bindings/js/JSDOMBinding.h:

(WebCore::WebCoreJSClientData::~WebCoreJSClientData):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThreadShutdownStartTask::performTask):

2:27 PM Changeset in webkit [54739] by mrowe@apple.com
  • 4 edits in branches/safari-4-branch

Versioning.

2:27 PM Changeset in webkit [54738] by eric@webkit.org
  • 2 edits in trunk/WebKit/chromium

2010-02-12 Pavel Feldman <pfeldman@chromium.org>

Reviewed by David Levin.

Chromium: provide theme overrides for Chromium devtools on Mac.

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

  • src/js/devTools.css:
2:26 PM Changeset in webkit [54737] by mrowe@apple.com
  • 1 copy in tags/Safari-6531.22.7

New tag.

2:22 PM Changeset in webkit [54736] by barraclough@apple.com
  • 5 edits in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=33731
Remove uses of PtrAndFlags from WebCore::StringImpl.

Reviewed by Sam Weinig.

These break the OS X Leaks tool. Use a bits stolen from the refCount to hold the
'InTable' and 'HasTerminatingNullCharacter' flags, along with the string type
(fixes a leak where the string data is allocated at the address (this + 1), and is
misinterpreted as being an internal buffer).

  • WebCore.base.exp:
  • platform/text/StringImpl.cpp:

(WebCore::StringImpl::StringImpl):
(WebCore::StringImpl::~StringImpl):
(WebCore::StringImpl::create):
(WebCore::StringImpl::createWithTerminatingNullCharacter):
(WebCore::StringImpl::crossThreadString):
(WebCore::StringImpl::sharedBuffer):

  • platform/text/StringImpl.h:

(WebCore::StringImpl::):
(WebCore::StringImpl::hasTerminatingNullCharacter):
(WebCore::StringImpl::inTable):
(WebCore::StringImpl::setInTable):
(WebCore::StringImpl::ref):
(WebCore::StringImpl::deref):
(WebCore::StringImpl::hasOneRef):
(WebCore::StringImpl::operator new):
(WebCore::StringImpl::bufferOwnership):

  • storage/OriginUsageRecord.cpp:

(WebCore::OriginUsageRecord::addDatabase):
(WebCore::OriginUsageRecord::markDatabase):

2:18 PM Changeset in webkit [54735] by Nikolas Zimmermann
  • 45 edits
    8 adds in trunk

2010-02-12 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Repaint bug on Text selection in foreignObject
https://bugs.webkit.org/show_bug.cgi?id=16939

Tests: svg/overflow/overflow-on-foreignObject.svg

svg/text/foreignObject-text-clipping-bug.xml

Selecting text contained in <foreignObject> leads to artefacts. Same for zooming/panning.
RenderForeignObject contained old legacy code returning FloatRect() for repaintRectInLocalCoordinates,
which is obviously wrong. Fixing that leads to even more problems, as the underlying RenderBlock
did not reflect the x/y translation set on the <foreignObject>. This is problematic, as laying out
positioned objects in the XHTML subtree depends on proper size/location values of the frameRect.

Correctly clip on overflow="hidden". overflow="scroll" & friends are not yet supported, see lengthy
comment in RenderSVGBlock why we either need RenderLayer for RenderForeignObject or need to rework
overflow handling to avoid RenderLayer.

SVGForeignObjectElement uses a hacky custom solution to synchronize CSS width/height properties with
the SVG width/height attributes. Remove all of that code and just implement calcWidth/calcHeight in
RenderForeignObject, grabbing the right values from SVGForeignObjectElement::width/height upon layout.

  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::paint): Clip properly to the actual bounds of the foreignObject, respecting that x/y translation is handled by RenderBlock now. (WebCore::RenderForeignObject::clippedOverflowRectForRepaint): Added missing function, forward to SVGRenderBase just like all other SVG renderers. (WebCore::RenderForeignObject::computeRectForRepaint): Remove manual implementation, forward to SVGRenderBase. (WebCore::RenderForeignObject::localToParentTransform): Respect x/y translation here _after_ applying localTransform(). (WebCore::RenderForeignObject::calcWidth): Override RenderBlock::calcWidth to grab width() from SVGForeignObjectElement. (WebCore::RenderForeignObject::calcHeight): Override RenderBlock::calcHeight to grab height() from SVGForeignObjectElement. (WebCore::RenderForeignObject::layout): Calculate viewport once and cache it. Push x/y location down to RenderBlock - analogous to RenderSVGText. (WebCore::RenderForeignObject::nodeAtFloatPoint): Adapt to x/y translation changes (map through localTransform, not localToParentTransform). Respect overflow clipping. (WebCore::RenderForeignObject::mapLocalToContainer): Set useTransforms=true, to avoid assertions when selecting text in foreign objects.
  • rendering/RenderForeignObject.h: (WebCore::RenderForeignObject::objectBoundingBox): Return cached m_viewport. (WebCore::RenderForeignObject::strokeBoundingBox): Ditto. (WebCore::RenderForeignObject::repaintRectInLocalCoordinates): Ditto.
  • rendering/RenderSVGBlock.cpp: (WebCore::RenderSVGBlock::setStyle): Cleanup code, move setHasOverflowClip() overrides in updateBoxModelInfoFromStyle where it belongs. (WebCore::RenderSVGBlock::updateBoxModelInfoFromStyle): Added to force setting setHasOverflowClip(false).
  • rendering/RenderSVGBlock.h:
  • svg/SVGForeignObjectElement.cpp: Kill a lot of custom code - it was just plain wrong to utilize CSS to push width/height information down to RenderBlock. (WebCore::SVGForeignObjectElement::svgAttributeChanged):
1:30 PM Changeset in webkit [54734] by bweinstein@apple.com
  • 2 edits in trunk/WebKit/win

onmouseout fired when moving over tooltip on Windows
https://bugs.webkit.org/show_bug.cgi?id=16794
<rdar://5762038>.

Reviewed by Adam Roben.

Add WS_EX_TRANSPARENT to out tooltip HWND so it isn't subject to hit testing, and when
you mouse over the tooltip, it doesn't send a mouseout to the web content.

  • WebView.cpp:

(WebView::initializeToolTipWindow): Add WS_EX_TRANSPARENT.

1:02 PM Changeset in webkit [54733] by Darin Adler
  • 2 edits in trunk/WebKit/mac

Removed unneeded custom implementation of isDescendantOf.

Reviewed by Sam Weinig.

  • Plugins/WebBaseNetscapePluginView.mm:

(-[WebBaseNetscapePluginView shouldClipOutPlugin]): Use the
-[NSView isDescendantOf:] method instead of our own method
named superviewsHaveSuperviews.

1:00 PM Changeset in webkit [54732] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Removed an unnecessary data dependency from my last patch.

Reviewed by Darin Adler.

  • runtime/SmallStrings.cpp:

(JSC::SmallStrings::markChildren): Since isAnyStringMarked being false
is a condition of entering the loop, we can just use '=' instead of '|='.

12:29 PM Changeset in webkit [54731] by jorlow@chromium.org
  • 4 edits in trunk/WebKit/chromium

2010-02-12 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Fisher.

[Chromium] Add a blockedByPolicy output to WebStorageArea::setItem.
https://bugs.webkit.org/show_bug.cgi?id=34897

  • public/WebStorageArea.h: (WebKit::WebStorageArea::setItem):
  • src/WebStorageAreaImpl.cpp: (WebKit::WebStorageAreaImpl::setItem):
11:43 AM Changeset in webkit [54730] by mitz@apple.com
  • 4 edits in trunk/WebKit/mac

<rdar://problem/7615234> REGRESSION (r48586): Loading an HTML page causes
PDFKit to be loaded

Reviewed by Darin Adler.

  • WebView/WebPDFDocumentExtras.h: Removed the category declaration and

addWebPDFDocumentExtras(). Declare allScriptsInPDFDocument().

  • WebView/WebPDFDocumentExtras.mm:

(allScriptsInPDFDocument): Changed the -_web_allScripts method into this function.

  • WebView/WebPDFRepresentation.mm: Removed +initialize.

(-[WebPDFRepresentation finishedLoadingWithDataSource:]): Use
allScriptsInPDFDocument() instead of -_web_allScripts.

11:20 AM Changeset in webkit [54729] by mitz@apple.com
  • 6 edits
    2 adds in trunk

<rdar://problem/7609268> REGRESSION (r50301): Problem selecting text in a Devanagari website
https://bugs.webkit.org/show_bug.cgi?id=34865

Reviewed by Simon Fraser.

WebCore:

Test: fast/text/glyph-reordering.html

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
(WebCore::ComplexTextController::ComplexTextRun::setIsNonMonotonic): Added. Sets m_isMonotonic
and populates m_glyphEndOffsets with the end offsets of each glyph’s corresponding character range.
(WebCore::ComplexTextController::advance): For non-monotonic runs, use endOffsetAt() to get
glyphs’ end offsets.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances): Check for monotonicity and call
setIsNonMonotonic() if needed.

  • platform/graphics/mac/ComplexTextController.h:

(WebCore::ComplexTextController::ComplexTextRun::lastIndexAt): Added this getter.
(WebCore::ComplexTextController::ComplexTextRun::isMonotonic): Ditto.

  • platform/graphics/mac/ComplexTextControllerATSUI.cpp:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Initialize m_isMonotonic.

  • platform/graphics/mac/ComplexTextControllerCoreText.cpp:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Ditto.

LayoutTests:

  • fast/text/glyph-reordering-expected.txt: Added.
  • fast/text/glyph-reordering.html: Added.
10:45 AM Changeset in webkit [54728] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed trivial fix.
Set Content-Type header, required for chromium test_shell.

9:05 AM Changeset in webkit [54727] by ap@apple.com
  • 2 edits in trunk/WebCore

Reviewed by David Levin.

https://bugs.webkit.org/show_bug.cgi?id=34866
Leopard Debug Bot crashed on fast/forms/old-names.html

  • html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::formCollectionInfo): Removed a misplaced checkConsistency() call. We are not looking at cache content at this point, and caches will be reset on next access.
8:05 AM Changeset in webkit [54726] by jorlow@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-02-11 Jeremy Orlow <jorlow@chromium.org>

Reviewed by David Levin.

[Chromium] Add ENABLE_RUBY to the feature defines gypi
https://bugs.webkit.org/show_bug.cgi?id=34841

  • features.gypi:
7:38 AM Changeset in webkit [54725] by eric@webkit.org
  • 2 edits in trunk/WebKit/chromium

2010-02-12 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Chromium: Web Inspector on an element in a page where JS is blocked crashes the renderer

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

  • src/DebuggerAgentImpl.cpp: (WebKit::DebuggerAgentImpl::createUtilityContext):
6:29 AM Changeset in webkit [54724] by vestbo@webkit.org
  • 3 edits in trunk/JavaScriptCore

Additional refptr/passrefptr workarounds for WINSCW compiler

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

Patch by Janne Koskinen <janne.p.koskinen@digia.com> on 2010-02-12

Reviewed by Tor Arne Vestbø.

  • wtf/PassRefPtr.h:

(WTF::refIfNotNull):
(WTF::PassRefPtr::PassRefPtr):
(WTF::PassRefPtr::~PassRefPtr):
(WTF::PassRefPtr::clear):
(WTF::::operator):

  • wtf/RefPtr.h:

(WTF::RefPtr::RefPtr):
(WTF::::operator):

6:22 AM Changeset in webkit [54723] by eric@webkit.org
  • 7 edits in trunk

2010-02-12 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Qt DRT now dump the frame loader callbacks when LayoutTestController()
method is called.

LayoutTests:

http/tests/security/mixedContent/data-url-script-in-iframe.html
http/tests/security/mixedContent/empty-url-plugin-in-frame.html
http/tests/security/mixedContent/insecure-css-in-iframe.html
http/tests/security/mixedContent/insecure-iframe-in-iframe.html
http/tests/security/mixedContent/insecure-image-in-iframe.html
http/tests/security/mixedContent/insecure-plugin-in-iframe.html
http/tests/security/mixedContent/insecure-script-in-iframe.html
http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html
http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html

[Qt] Make possible Qt DRT dump frame load callbacks
https://bugs.webkit.org/show_bug.cgi?id=34702

  • platform/qt/Skipped:

2010-02-12 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Qt DRT now dump the frame loader callbacks when LayoutTestController()
method is called.

LayoutTests:

http/tests/security/mixedContent/data-url-script-in-iframe.html
http/tests/security/mixedContent/empty-url-plugin-in-frame.html
http/tests/security/mixedContent/insecure-css-in-iframe.html
http/tests/security/mixedContent/insecure-iframe-in-iframe.html
http/tests/security/mixedContent/insecure-image-in-iframe.html
http/tests/security/mixedContent/insecure-plugin-in-iframe.html
http/tests/security/mixedContent/insecure-script-in-iframe.html
http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html
http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html

[Qt] Make possible Qt DRT dump frame load callbacks
https://bugs.webkit.org/show_bug.cgi?id=34702

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::didDisplayInsecureContent): (WebCore::FrameLoaderClientQt::didRunInsecureContent):

2010-02-12 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Qt DRT now dump the frame loader callbacks when LayoutTestController()
method is called.

LayoutTests:

http/tests/security/mixedContent/data-url-script-in-iframe.html
http/tests/security/mixedContent/empty-url-plugin-in-frame.html
http/tests/security/mixedContent/insecure-css-in-iframe.html
http/tests/security/mixedContent/insecure-iframe-in-iframe.html
http/tests/security/mixedContent/insecure-image-in-iframe.html
http/tests/security/mixedContent/insecure-plugin-in-iframe.html
http/tests/security/mixedContent/insecure-script-in-iframe.html
http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe.html
http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe.html

[Qt] Make possible Qt DRT dump frame load callbacks
https://bugs.webkit.org/show_bug.cgi?id=34702

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::reset): (LayoutTestController::dumpFrameLoadCallbacks):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
5:48 AM Changeset in webkit [54722] by Simon Hausmann
  • 2 edits in trunk/JavaScriptCore

Don't import the cmath functions from std:: for WINSCW.

Patch by Janne Koskinen <janne.p.koskinen@digia.com> on 2010-02-12
Reviewed by Simon Hausmann.

  • wtf/MathExtras.h:
5:33 AM Changeset in webkit [54721] by Simon Hausmann
  • 3 edits in trunk/WebKitTools

Make QtLauncher somewhat useable on S60.

Reviewed by Antti Koivisto.

Show the window fullscreen to make scrollbars appear, resize
the toolbar buttons to 16x16 to give more screen space to
web content and moved the location lineedit into a separate
line.

  • QtLauncher/main.cpp:

(LauncherWindow::LauncherWindow):

  • QtLauncher/mainwindow.cpp:

(MainWindow::buildUI):

5:16 AM Changeset in webkit [54720] by pfeldman@chromium.org
  • 3 edits in trunk/WebCore

2010-02-12 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: restore highlighting animation, bring back
keyboard navigation, beautify search results.

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

  • inspector/front-end/TextViewer.js: (WebInspector.TextViewer): (WebInspector.TextViewer.prototype.highlightLine):
  • inspector/front-end/textViewer.css:
4:55 AM Changeset in webkit [54719] by eric@webkit.org
  • 11 edits
    6 adds in trunk

2010-02-12 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Support frameset flattening
https://bugs.webkit.org/show_bug.cgi?id=32717

Add expected results of the FrameSet Flattening tests.

  • platform/mac/fast/frames/flattening/frameset-flattening-advanced-expected.txt: Added.
  • platform/mac/fast/frames/flattening/frameset-flattening-grid-expected.txt: Added.
  • platform/mac/fast/frames/flattening/frameset-flattening-simple-expected.txt: Added.
  • platform/mac/fast/frames/flattening/frameset-flattening-subframe-resize-expected.txt: Added.
  • platform/mac/fast/frames/flattening/frameset-flattening-subframesets-expected.txt: Added.
  • platform/mac/Skipped:

2010-02-12 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Support frameset flattening
https://bugs.webkit.org/show_bug.cgi?id=32717

Add FrameSet Flattening support to Mac DRT.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setFrameSetFlatteningEnabled):
  • DumpRenderTree/win/DumpRenderTree.cpp: (resetDefaultsToConsistentValues):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setXSSAuditorEnabled):
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setFrameSetFlatteningEnabled):
  • DumpRenderTree/LayoutTestController.cpp: (setFrameSetFlatteningEnabledCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setFrameSetFlatteningEnabled):
3:03 AM Changeset in webkit [54718] by eric@webkit.org
  • 4 edits in trunk/WebCore

2010-02-12 Anton Muhin <antonm@chromium.org>

Reviewed by Adam Barth.

[v8] handle to the document can only own Objects, not Values
https://bugs.webkit.org/show_bug.cgi?id=34854

  • bindings/v8/V8DOMWindowShell.cpp: (WebCore::V8DOMWindowShell::updateDocumentWrapper): (WebCore::V8DOMWindowShell::updateDocumentWrapperCache):
  • bindings/v8/V8DOMWindowShell.h:
  • bindings/v8/custom/V8DocumentCustom.cpp: (WebCore::toV8):
2:20 AM Changeset in webkit [54717] by eric@webkit.org
  • 3 edits in trunk/JavaScriptCore

2010-02-12 Kwang Yul Seo <skyul@company100.net>

Reviewed by Adam Barth.

Typedef both JSChar and UChar to wchar_t in RVCT.
https://bugs.webkit.org/show_bug.cgi?id=34560

Define both JSChar and UChar to wchar_t as the size
of wchar_t is 2 bytes in RVCT.

  • API/JSStringRef.h:
  • wtf/unicode/qt4/UnicodeQt4.h:
2:13 AM Changeset in webkit [54716] by Simon Hausmann
  • 5 edits in trunk

.: Removed WMLInputElement.* from .gitattributes as the file is
now CRLF clean.

Reviewed by Holger Freyther.

  • .gitattributes:

WebCore: Replaced stray CRLF with LF.

Reviewed by Holger Freyther.

  • wml/WMLInputElement.cpp:

(WebCore::WMLInputElement::suggestedValue):

  • wml/WMLInputElement.h:
2:02 AM Changeset in webkit [54715] by jocelyn.turcotte@nokia.com
  • 6 edits in trunk

[Qt] Make qtlauncher and qgvlauncher use the generated headers
path to make sure they are correctly generated.

Reviewed by Tor Arne Vestbo.

.:

  • WebKit.pri:

WebCore:

  • WebCore.pro:

WebKit\qt:

  • tests/tests.pri:
2:01 AM Changeset in webkit [54714] by jocelyn.turcotte@nokia.com
  • 4 edits
    1 add in trunk

[Qt] Ensure relative paths in generated .pri files to ensure that
a source package with pre-generated derived sources can be compiled.

  • Re-add a separate headers.pri file for WEBKIT_API_HEADERS
  • Rename the generated headers.pri to classheaders.pri to avoid

confusion with the one generated by synqt since they don't have the
same content.

  • Remove private headers list variable from classheaders.pri
  • Use $$PWD in classheaders.pri
  • Remove classheaders.pri from the installed files

Reviewed by Tor Arne Vestbo.

WebCore:

  • WebCore.pro:

WebKit\qt:

  • Api/DerivedSources.pro:
2:01 AM Changeset in webkit [54713] by jocelyn.turcotte@nokia.com
  • 4 edits in trunk

[Qt] Manually add support for the install target on Symbian.

This is required to copy the headers over the ones in Qt.

Reviewed by Tor Arne Vestbo.

.:

  • WebKit.pro:

WebCore:

  • WebCore.pro:
2:00 AM Changeset in webkit [54712] by jocelyn.turcotte@nokia.com
  • 4 edits in trunk

[Qt] Minor fixes on QtWebKit headers generation.

  • Adds QtWebKit to the generated headers destination path
  • Improve compatibility with MinGW

Reviewed by Tor Arne Vestbo.

WebCore:

No new tests. (OOPS!)

  • WebCore.pro:

WebKit\qt:

  • Api/DerivedSources.pro:
1:59 AM Changeset in webkit [54711] by jocelyn.turcotte@nokia.com
  • 3 edits in trunk/WebKit/qt

[Qt] Fix standalone build with MinGW.

Reviewed by nobody, build fix.

  • tests/qwebelement/tst_qwebelement.cpp:
  • tests/tests.pri:
1:47 AM Changeset in webkit [54710] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-02-12 Dirk Pranke <dpranke@chromium.org>

Reviewed by Eric Seidel.

Fix typos in driver_test.py

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

  • Scripts/webkitpy/layout_tests/driver_test.py:
1:39 AM Changeset in webkit [54709] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] perl websocket test(s) time out
https://bugs.webkit.org/show_bug.cgi?id=34882

  • platform/qt/Skipped: websocket/tests/cookies/httponly-cookie.pl skipped until fix.
1:14 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
12:59 AM Changeset in webkit [54708] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

2010-02-12 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Make it possible to toggle the use of QGraphicsView in QtLauncher at run-time
https://bugs.webkit.org/show_bug.cgi?id=34844

  • QtLauncher/main.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::initializeView): (LauncherWindow::setupUI):
  • QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased):
12:00 AM Changeset in webkit [54707] by ukai@chromium.org
  • 19 edits
    1 copy
    3 adds in trunk

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket ignores HttpOnly cookies, but should use in Handshake.
https://bugs.webkit.org/show_bug.cgi?id=34289

  • websocket/tests/cookies/echo-cookie_wsh.py: Added.
  • websocket/tests/cookies/httponly-cookie-expected.txt: Added.
  • websocket/tests/cookies/httponly-cookie.pl: Added.

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket ignores HttpOnly cookies, but should use in Handshake.
https://bugs.webkit.org/show_bug.cgi?id=34289

Test: websocket/tests/cookies/httponly-cookie.pl

  • platform/CookieJar.h: add cookieRequestHeaderFieldValue()
  • platform/chromium/ChromiumBridge.h:
  • platform/haiku/CookieJarHaiku.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/mac/CookieJar.mm: (WebCore::cookies): (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/android/CookieJarAndroid.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/chromium/CookieJarChromium.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/curl/CookieJarCurl.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/soup/CookieJarSoup.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/win/CookieJarCFNetWin.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/network/win/CookieJarWin.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • platform/qt/CookieJarQt.cpp: (WebCore::cookieRequestHeaderFieldValue):
  • websockets/WebSocketHandshake.cpp: (WebCore::WebSocketHandshake::clientHandshakeMessage): use cookieRequestHeaderFieldValue() instead of cookies() to include HttpOnly cookies.

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket ignores HttpOnly cookies, but should use in Handshake.
https://bugs.webkit.org/show_bug.cgi?id=34289

Update pywebsocket to 0.4.8, which supports cgi directories.
run-webkit-tests and run-webkit-websocketserver will run
pywebsocket, specifying /websocket/test/cookies as cgi directory.

  • Scripts/run-webkit-tests:
  • Scripts/run-webkit-websocketserver:
  • pywebsocket/mod_pywebsocket/standalone.py:
  • pywebsocket/setup.py:

Feb 11, 2010:

11:52 PM Changeset in webkit [54706] by eric@webkit.org
  • 2 edits in trunk

2010-02-11 Fridrich Strba <fridrich.strba@bluewin.ch>

Reviewed by Gustavo Noronha Silva.

Detect properly different versions of libpng out there.

  • configure.ac:
11:36 PM Changeset in webkit [54705] by eric@webkit.org
  • 2 edits in trunk/WebCore

2010-02-11 Ariya Hidayat <ariya.hidayat@gmail.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Use clipRegion instead of clipPath to save lots of CPU cycles.

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

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clipOut): (WebCore::GraphicsContext::clipOutEllipseInRect):
11:20 PM Changeset in webkit [54704] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-02-11 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>

Reviewed by Dan Bernstein.

[Mac] Duplicated setXSSAuditorEnabled preference at Mac DRT
https://bugs.webkit.org/show_bug.cgi?id=34798

Remove duplicated setXSSAuditorEnabled preference at Mac DRT

  • DumpRenderTree/mac/DumpRenderTree.mm: (resetDefaultsToConsistentValues):
10:42 PM Changeset in webkit [54703] by yuzo@google.com
  • 2 edits in trunk/WebCore

2010-02-11 Yuzo Fujishima <yuzo@google.com>

Reviewed by Shinichiro Hamaji.

Rename underscored identifiers in WebCore/css/CSSParser.cpp.
https://bugs.webkit.org/show_bug.cgi?id=34877
Also fix whitespace erros that surface due to the above fix.

This doesn't change the code logic. Hence no new tests are required.

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
9:14 PM Changeset in webkit [54702] by Joseph Pecoraro
  • 2 edits in trunk/WebCore

2010-02-11 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by Timothy Hatcher.

Web Inspector: Focusing a resource in the inspector should default to content not header
https://bugs.webkit.org/show_bug.cgi?id=34861

  • inspector/front-end/Settings.js: (WebInspector.Settings.prototype._load): changed initial default to content tab
9:01 PM Changeset in webkit [54701] by ggaren@apple.com
  • 3 edits in trunk/JavaScriptCore

2010-02-11 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt and Darin Adler.

The rest of the fix for
https://bugs.webkit.org/show_bug.cgi?id=34864 | <rdar://problem/7594198>
Many objects left uncollected after visiting mail.google.com and closing
window


Don't unconditionally hang onto small strings. Instead, hang onto all
small strings as long as any small string is still referenced.


SunSpider reports no change.

  • runtime/Collector.cpp: (JSC::Heap::markRoots): Mark the small strings cache last, so it can check if anything else has kept any strings alive.
  • runtime/SmallStrings.cpp: (JSC::isMarked): (JSC::SmallStrings::markChildren): Only keep our strings alive if some other reference to at least one of them exists, too.
8:59 PM Changeset in webkit [54700] by Joseph Pecoraro
  • 2 edits in trunk/WebCore

2010-02-11 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by Timothy Hatcher.

Web Inspector: Editing Styles Cannot Tab Backwards from a New Style Item
https://bugs.webkit.org/show_bug.cgi?id=34872

  • inspector/front-end/StylesSidebarPane.js: (WebInspector.StylePropertiesSection.prototype.update): triggers afterUpdate (WebInspector.StylePropertiesSection.prototype.afterUpdate): factored out _afterUpdate handling
7:51 PM Changeset in webkit [54699] by Nikolas Zimmermann
  • 2 edits in trunk/WebCore

2010-02-11 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Eric Seidel.

Add roundedIntSize() convenience method converting FloatSize to IntSize, just like roundedIntPoint() converting FloatPoint to IntPoint.

  • platform/graphics/FloatSize.h: (WebCore::roundedIntSize):
7:13 PM Changeset in webkit [54698] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-02-11 Eric Seidel <eric@webkit.org>

No review, build fix only.

webkitdirs.pm has a crazy amount of duplicated feature detection code
https://bugs.webkit.org/show_bug.cgi?id=34869

  • Scripts/build-webkit: Fix typo which broke bots.
7:04 PM Changeset in webkit [54697] by eric@webkit.org
  • 5 edits
    1 add
    4 deletes in trunk

2010-02-11 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

webkitdirs.pm has a crazy amount of duplicated feature detection code
https://bugs.webkit.org/show_bug.cgi?id=34869

In editing run-webkit-tests I found these tests were
skipped on all platforms. Removing them since no one is running them.
If we ever need them we can dig them out of SVN history.

  • fast/wcss/marquee-dir.xhtml: Removed.
  • fast/wcss/marquee-loop.xhtml: Removed.
  • fast/wcss/marquee-speed.xhtml: Removed.
  • fast/wcss/marquee-style.xhtml: Removed.

2010-02-11 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

webkitdirs.pm has a crazy amount of duplicated feature detection code
https://bugs.webkit.org/show_bug.cgi?id=34869

  • Scripts/build-webkit: Use the new hotness.
  • Scripts/run-webkit-tests: ditto
  • Scripts/webkitdirs.pm: Remove a bunch of bad duplicate code.
  • Scripts/webkitperl/features.pm: Added.
    • Simplified the 10 methods in webkitdirs.pm into 2 exported methods in this new file.
6:51 PM Changeset in webkit [54696] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2010-02-11 Geoffrey Garen <ggaren@apple.com>

Reviewed by Gavin Barraclough.

Some progress toward fixing
https://bugs.webkit.org/show_bug.cgi?id=34864 | <rdar://problem/7594198>
Many objects left uncollected after visiting mail.google.com and closing
window


SunSpider reports no change.


Keep weak references, rather than protected references, to cached for-in
property name enumerators.


One problem with protected references is that a chain like

[ gc object 1 ] => [ non-gc object ] => [ gc object 2 ]

takes two GC passes to break, since the first pass collects [ gc object 1 ],
releasing [ non-gc object ] and unprotecting [ gc object 2 ], and only
then can a second pass collect [ gc object 2 ].


Another problem with protected references is that they can keep a bunch
of strings alive long after they're useful. In SunSpider and a few popular
websites, the size-speed tradeoff seems to favor weak references.

  • runtime/JSPropertyNameIterator.cpp: (JSC::JSPropertyNameIterator::JSPropertyNameIterator): Moved this constructor into the .cpp file, since it's not used elsewhere.

(JSC::JSPropertyNameIterator::~JSPropertyNameIterator): Added a destructor
to support our weak reference.

  • runtime/JSPropertyNameIterator.h: (JSC::Structure::setEnumerationCache): (JSC::Structure::clearEnumerationCache): (JSC::Structure::enumerationCache): Added a function for clearing a Structure's enumeration cache, used by our new destructor. Also fixed indentation to match the rest of the file.
  • runtime/Structure.h: Changed from protected pointer to weak pointer.
6:37 PM Changeset in webkit [54695] by tkent@chromium.org
  • 9 edits in trunk

2010-02-11 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

Fix two issues on maxLength.
https://bugs.webkit.org/show_bug.cgi?id=34783

  • Add grapheme test cases
  • Improve test result readability
  • fast/forms/ValidityState-tooLong-input-expected.txt:
  • fast/forms/ValidityState-tooLong-textarea-expected.txt:
  • fast/forms/script-tests/ValidityState-tooLong-input.js:
  • fast/forms/script-tests/ValidityState-tooLong-textarea.js:

2010-02-11 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

Fix two issues on maxLength.
https://bugs.webkit.org/show_bug.cgi?id=34783

  • ValidityState.tooLong behavior was inconsistent with UIs of <input> and <textarea>. tooLong checked Unicode code point length though the UIs checks grapheme cluster length.
  • Setting HTMLTextAreaElement::value didn't update the dirty flag.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::tooLong): Use numGraphemeClusters() instead of length().
  • html/HTMLTextAreaElement.cpp: Rename setValue() to setNonDirtyValue(), and introduce setValue() which calls setNonDirtyValue() and sets the dirty flag. (WebCore::HTMLTextAreaElement::childrenChanged): (WebCore::HTMLTextAreaElement::reset): (WebCore::HTMLTextAreaElement::setValue): (WebCore::HTMLTextAreaElement::setNonDirtyValue): (WebCore::HTMLTextAreaElement::setDefaultValue): (WebCore::HTMLTextAreaElement::tooLong): Use numGraphemeClusters() instead of length().
  • html/HTMLTextAreaElement.h:
6:12 PM Changeset in webkit [54694] by ukai@chromium.org
  • 10 edits
    3 adds in trunk

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket bufferedAmount should not be 0 when send after close.
https://bugs.webkit.org/show_bug.cgi?id=34633

  • websocket/tests/bufferedAmount-after-close-expected.txt: Added.
  • websocket/tests/bufferedAmount-after-close.html: Added.
  • websocket/tests/script-tests/bufferedAmount-after-close.js: Added.

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket bufferedAmount should not be 0 when send after close.
https://bugs.webkit.org/show_bug.cgi?id=34633

Test: websocket/tests/bufferedAmount-after-close.html

  • websockets/ThreadableWebSocketChannelClientWrapper.h: (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
  • websockets/WebSocket.cpp: (WebCore::WebSocket::WebSocket): (WebCore::WebSocket::send): (WebCore::WebSocket::close): (WebCore::WebSocket::bufferedAmount): (WebCore::WebSocket::didConnect): (WebCore::WebSocket::didClose):
  • websockets/WebSocket.h:
  • websockets/WebSocketChannel.cpp: (WebCore::WebSocketChannel::WebSocketChannel): (WebCore::WebSocketChannel::send): (WebCore::WebSocketChannel::bufferedAmount): (WebCore::WebSocketChannel::didClose):
  • websockets/WebSocketChannel.h:
  • websockets/WebSocketChannelClient.h: (WebCore::WebSocketChannelClient::didClose):
  • websockets/WorkerThreadableWebSocketChannel.cpp: (WebCore::workerContextDidClose): (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
  • websockets/WorkerThreadableWebSocketChannel.h:
5:59 PM Changeset in webkit [54693] by dbates@webkit.org
  • 7 edits
    1 add in trunk/WebKitTools

2010-02-11 Daniel Bates <dbates@rim.com>

Reviewed by Adam Barth.

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

Makes method User.prompt static and adds the parameter repeat
to prompt the user up to repeat times.

  • Scripts/test-webkitpy:
  • Scripts/webkitpy/bugzilla.py: Substituted method User.prompt for method raw_input.
  • Scripts/webkitpy/commands/upload.py: Ditto
  • Scripts/webkitpy/credentials.py: Ditto
  • Scripts/mock_bugzillatool.py: Updated prototype of MockUser.prompt to match User.prompt.
  • Scripts/webkitpy/user.py: Made method prompt static and added parameter repeat.
  • Scripts/webkitpy/user_unittest.py: Added.
5:48 PM Changeset in webkit [54692] by ukai@chromium.org
  • 3 edits
    6 adds in trunk

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket in Worker failed to close
https://bugs.webkit.org/show_bug.cgi?id=34785

  • websocket/tests/workers/close-in-shared-worker-expected.txt: Added.
  • websocket/tests/workers/close-in-shared-worker.html: Added.
  • websocket/tests/workers/close-in-worker-expected.txt: Added.
  • websocket/tests/workers/close-in-worker.html: Added.
  • websocket/tests/workers/resources/close-in-worker.js: Added.
  • websocket/tests/workers/resources/echo_wsh.py: Copied from LayoutTests/websocket/tests/echo_wsh.py.

2010-02-11 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket in Worker failed to close
https://bugs.webkit.org/show_bug.cgi?id=34785

Tests: websocket/tests/workers/close-in-shared-worker.html

websocket/tests/workers/close-in-worker.html

  • websockets/WorkerThreadableWebSocketChannel.cpp: (WebCore::WorkerThreadableWebSocketChannel::close):
5:39 PM Changeset in webkit [54691] by eric@webkit.org
  • 1 edit
    37 deletes in trunk/WebKitTools

2010-02-10 Yuzo Fujishima <yuzo@google.com>

Reviewed by Darin Adler.

Allow underscored identifiers in CSSParser.cpp

Flex (http://flex.sourceforge.net/) uses identifiers named as yy_*.
WebCore/css/CSSParser.cpp needs to handle some such identifiers.
We should relax the style rule for the file to allow underscored identifiers.

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

  • Scripts/webkitpy/style/checker.py:
5:29 PM Changeset in webkit [54690] by yuzo@google.com
  • 2 edits in trunk/WebKitTools

2010-02-10 Yuzo Fujishima <yuzo@google.com>

Reviewed by Darin Adler.

Allow underscored identifiers in CSSParser.cpp

Flex (http://flex.sourceforge.net/) uses identifiers named as yy_*.
WebCore/css/CSSParser.cpp needs to handle some such identifiers.
We should relax the style rule for the file to allow underscored identifiers.

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

  • Scripts/webkitpy/style/checker.py:
5:01 PM Changeset in webkit [54689] by Nikolas Zimmermann
  • 1 edit
    2 moves in trunk/LayoutTests

2010-02-11 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Oops, move mac-lepard results for mask-invalidation.svg into the correct folder.

  • platform/mac-leopard/mask-invalidation-expected.checksum: Removed.
  • platform/mac-leopard/mask-invalidation-expected.png: Removed.
  • platform/mac-leopard/svg/custom/mask-invalidation-expected.checksum: Copied from platform/mac-leopard/mask-invalidation-expected.checksum.
  • platform/mac-leopard/svg/custom/mask-invalidation-expected.png: Copied from platform/mac-leopard/mask-invalidation-expected.png.
4:57 PM Changeset in webkit [54688] by eric@webkit.org
  • 5 edits
    1 copy in trunk/WebKitTools

2010-02-11 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Need a command to clear r+ on obsolete patches in the pending-commit queue.
https://bugs.webkit.org/show_bug.cgi?id=34863

Unfortunately our http://webkit.org/pending-commit bugzilla query is not
smart enough to ignore obsolete patches, so bugs show up there which are
still open, but do not have patches ready for landing on them.
This new command "clean-pending-commit" will remove r+ from obsolete patches
in the pending-commit list.

  • Scripts/test-webkitpy: Add grammar_unittest
  • Scripts/webkitpy/commands/upload.py: Add clean-pending-commit and make assign-to-committer ignore cq+'d patches.
  • Scripts/webkitpy/grammar.py: Add join_with_separators
  • Scripts/webkitpy/grammar_unittest.py: Added.
4:48 PM Changeset in webkit [54687] by Nikolas Zimmermann
  • 1 edit
    2 adds in trunk/LayoutTests

2010-02-11 Nikolas Zimmermann <nzimmermann@rim.com>

Rubber-stamped by Dirk Schulze.

Add special mac-leopard pixel test results for svg/mask-invalidation.svg - has marginal 0.01% diff to snow leopard baseline.

  • platform/mac-leopard/mask-invalidation-expected.checksum: Added.
  • platform/mac-leopard/mask-invalidation-expected.png: Added.
4:38 PM Changeset in webkit [54686] by bweinstein@apple.com
  • 2 edits in trunk/WebKitLibraries

Rubber-stamped by Eric Seidel.

Turn back on SVG Filters on Windows, as they were accidentally disabled and cause
test breakage.

  • win/tools/vsprops/FeatureDefines.vsprops:
4:36 PM Changeset in webkit [54685] by eric@webkit.org
  • 1 edit
    1 add in trunk/WebCore

2010-02-11 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Add dummy Cursor
https://bugs.webkit.org/show_bug.cgi?id=34672

  • platform/brew/CursorBrew.cpp: Added. (WebCore::Cursor::Cursor): (WebCore::Cursor::~Cursor): (WebCore::Cursor::operator=): (WebCore::dummyCursor): (WebCore::pointerCursor): (WebCore::crossCursor): (WebCore::handCursor): (WebCore::moveCursor): (WebCore::iBeamCursor): (WebCore::waitCursor): (WebCore::helpCursor): (WebCore::eastResizeCursor): (WebCore::northResizeCursor): (WebCore::northEastResizeCursor): (WebCore::northWestResizeCursor): (WebCore::southResizeCursor): (WebCore::southEastResizeCursor): (WebCore::southWestResizeCursor): (WebCore::westResizeCursor): (WebCore::northSouthResizeCursor): (WebCore::eastWestResizeCursor): (WebCore::northEastSouthWestResizeCursor): (WebCore::northWestSouthEastResizeCursor): (WebCore::columnResizeCursor): (WebCore::rowResizeCursor): (WebCore::verticalTextCursor): (WebCore::cellCursor): (WebCore::contextMenuCursor): (WebCore::noDropCursor): (WebCore::copyCursor): (WebCore::progressCursor): (WebCore::aliasCursor): (WebCore::noneCursor): (WebCore::notAllowedCursor): (WebCore::zoomInCursor): (WebCore::zoomOutCursor): (WebCore::middlePanningCursor): (WebCore::eastPanningCursor): (WebCore::northPanningCursor): (WebCore::northEastPanningCursor): (WebCore::northWestPanningCursor): (WebCore::southPanningCursor): (WebCore::southEastPanningCursor): (WebCore::southWestPanningCursor): (WebCore::westPanningCursor): (WebCore::grabCursor): (WebCore::grabbingCursor):
4:20 PM Changeset in webkit [54684] by eric@webkit.org
  • 1 edit
    1 add in trunk/JavaScriptCore

2010-02-11 Chris Rogers <crogers@google.com>

Reviewed by David Levin.

audio engine: add Complex number class
https://bugs.webkit.org/show_bug.cgi?id=34538

  • wtf/Complex.h: Added. (WebCore::complexFromMagnitudePhase):
3:38 PM Changeset in webkit [54683] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

2010-02-11 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

run-chromium-webkit-tests fails random pixel tests on Mac
https://bugs.webkit.org/show_bug.cgi?id=34862

This is due to the fact that the Mac port has an
invalid path to the image diff tool. Currently it points
to image_diff even though ImageDiff would be correct. We
can't change it to the right path yet without causing the
script to hang. ImageDiff expects to be long-running and
be passed image data over stdin. image_diff (chromium's fork)
expects to be passed command line arguments.
This fix works around the random failures by disabling pixel
tests on mac and logging if the user was trying to run with pixel
tests enabled.

  • Scripts/webkitpy/layout_tests/port/mac.py:
3:23 PM Changeset in webkit [54682] by bweinstein@apple.com
  • 2 edits in trunk

Touch prefix files to force a rebuild, also so anyone who updates will get a working build

3:15 PM Changeset in webkit [54681] by bweinstein@apple.com
  • 2 edits in trunk

Add a missing semicolon to FeatureDefines.vsprops, so both ENABLE_RUBY and ENABLE_SHARED_WORKERS are parsed

2:26 PM Changeset in webkit [54680] by Nate Chapin
  • 4 edits in trunk/WebCore

2010-02-11 Nate Chapin <Nate Chapin>

Reviewed by Dimitri Glazkov.

[V8] Add back in a fast path for v8 object wrapping
when it's not possible we're in a WorkerContext (the fast
path is important for performance).

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

  • bindings/scripts/CodeGeneratorV8.pm:
  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::instantiateV8ObjectInWorkerContext): (WebCore::V8DOMWrapper::instantiateV8Object):
  • bindings/v8/V8DOMWrapper.h:
2:23 PM Changeset in webkit [54679] by bweinstein@apple.com
  • 1 edit in trunk/WebCore/bindings/js/JSDOMWindowCustom.cpp

Touch JSDOMWindowCustom.cpp to get it to build.

2:20 PM Changeset in webkit [54678] by kov@webkit.org
  • 1 edit
    2 deletes in trunk/LayoutTests

2010-02-11 Gustavo Noronha Silva <Gustavo Noronha Silva>

Remove platform-specific expected results that only existed
because we diverged from other ports regarding enabling
GeoLocation (Apple ports now enable it).

  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt: Removed.
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt: Removed.
2:12 PM Changeset in webkit [54677] by kov@webkit.org
  • 3 edits in trunk/LayoutTests

2010-02-11 Gustavo Noronha Silva <Gustavo Noronha Silva>

Rebaseline test after 54646, and skip tests that need results
generated.

  • platform/gtk/Skipped:
  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
2:12 PM Changeset in webkit [54676] by bweinstein@apple.com
  • 1 edit in trunk/WebCore/page/DOMWindow.idl

Touch DOMWindow.idl to force a rebuild of some of the DOM bindings

1:53 PM Changeset in webkit [54675] by bweinstein@apple.com
  • 1 edit in trunk/WebKit/win/WebKitPrefix.h

Touch WebKitPrefix.h to force a WebKit rebuild

1:44 PM Changeset in webkit [54674] by bweinstein@apple.com
  • 1 edit in trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def

That wasn't a fix, rolling it out

1:34 PM Changeset in webkit [54673] by bweinstein@apple.com
  • 1 edit in trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def

Hopefully final build fix for Windows (I really mean it this time)

1:28 PM Changeset in webkit [54672] by ggaren@apple.com
  • 8 edits in trunk

JavaScriptCore: Added an SPI for asking about all the different live objects on the heap.
Useful for memory debugging.

Reviewed by Oliver Hunt.

  • runtime/Collector.cpp:

(JSC::typeName): Use a little capitalization. Don't crash in the case of
a non-object cell, since it might just be an uninitialized cell.

(JSC::Heap::objectTypeCounts): The new SPI.

  • runtime/Collector.h:
  • runtime/CollectorHeapIterator.h:

(JSC::CollectorHeapIterator::advance):
(JSC::LiveObjectIterator::operator++):
(JSC::DeadObjectIterator::operator++):
(JSC::ObjectIterator::operator++): Made 2 tweaks to these iterators:
(1) Skip the last cell in the block, since it's a dummy sentinel, and
we don't want it to confuse the object count; (2) Fixed a logic error
in LiveObjectIterator that could cause it to iterate dead objects if
m_block were equal to m_heap.nextBlock and m_cell were less than
m_heap.nextCell. No test for this since I can't think of a way that this
could make WebKit behave badly.

WebKit/mac: Exported some new JavaScript heap introspection.

Reviewed by Oliver Hunt.

  • Misc/WebCoreStatistics.h:
  • Misc/WebCoreStatistics.mm:

(+[WebCoreStatistics javaScriptObjectTypeCounts]): Just like
javaScriptProtectedObjectTypeCounts, except this function enumerates all
live objects, not just protected objects.

1:20 PM Changeset in webkit [54671] by bweinstein@apple.com
  • 2 edits in trunk

Turn off 3D_CANVAS and touch WebCorePrefix.h to force a rebuild.

1:04 PM Changeset in webkit [54670] by bweinstein@apple.com
  • 1 edit in trunk/WebKit/win/WebView.cpp

Build fix for Windows

12:59 PM Changeset in webkit [54669] by Nikolas Zimmermann
  • 2 edits in trunk/WebKitTools

2010-02-11 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Adam Roben.
Try to fix build breakage from r54665.


  • Scripts/check-for-global-initializers:
12:53 PM Changeset in webkit [54668] by Nikolas Zimmermann
  • 8 edits in trunk/WebCore

2010-02-11 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Small cleanups in SVG render tree code.
Centralize calls to inflateShadow(), in SVGRenderSupport::computeRectForRepaint,
instead of spreading them around the subclasses. All classes should inherit
protected from SVGRenderBase, made it consistent.


Doesn't affect layout tests.

  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::computeRectForRepaint):
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::computeRectForRepaint):
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::computeRectForRepaint): (WebCore::RenderSVGText::layout):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::computeRectForRepaint):
  • rendering/SVGRootInlineBox.h:
12:44 PM Changeset in webkit [54667] by mnaganov@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-02-11 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Pavel Feldman.

[Chromium] Ignore subsequent requests of the same profiler log
chunks. This eliminates emission of several instances for the same
heap snapshot.

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

  • src/js/ProfilerAgent.js: (devtools.ProfilerAgent): (devtools.ProfilerAgent.prototype.initializeProfiling): (devtools.ProfilerAgent.prototype._getNextLogLines): (devtools.ProfilerAgent.prototype.startProfiling): (devtools.ProfilerAgent.prototype._didGetActiveProfilerModules): (devtools.ProfilerAgent.prototype._didGetLogLines):
12:40 PM Changeset in webkit [54666] by xan@webkit.org
  • 2 edits in trunk

2010-02-11 Xan Lopez <xlopez@igalia.com>

Try to fix GTK+ build.

  • configure.ac:
12:05 PM Changeset in webkit [54665] by hyatt@apple.com
  • 8 edits
    3 adds in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=34857
Move InlineIterator and BidiRun into new files so subclasses can access them.

Reviewed by Dan Bernstein.

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/BidiRun.cpp: Added.

(WebCore::BidiRun::destroy):
(WebCore::throw):
(WebCore::BidiRun::operator delete):

  • rendering/BidiRun.h: Added.

(WebCore::BidiRun::BidiRun):
(WebCore::BidiRun::next):

  • rendering/InlineIterator.h: Added.

(WebCore::InlineIterator::InlineIterator):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::bidiNext):
(WebCore::bidiFirst):
(WebCore::InlineIterator::increment):
(WebCore::InlineIterator::atEnd):
(WebCore::InlineIterator::current):
(WebCore::InlineIterator::direction):
(WebCore::InlineBidiResolver::increment):
(WebCore::InlineBidiResolver::appendRun):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::appendRunsForObject):
(WebCore::RenderBlock::requiresLineBox):

12:03 PM Changeset in webkit [54664] by bweinstein@apple.com
  • 1 edit in trunk/WebCore/platform/graphics/GraphicsContext3D.h

Add a PLATFORM(WIN) check for NO_ERROR, attempted build fix

12:01 PM Changeset in webkit [54663] by bweinstein@apple.com
  • 7 edits in trunk/WebCore

Revert accidental commit

11:55 AM Changeset in webkit [54662] by bweinstein@apple.com
  • 7 edits in trunk/WebCore

Attempt to fix the Windows build

11:43 AM Changeset in webkit [54661] by bweinstein@apple.com
  • 1 edit in trunk/WebCore/WebCorePrefix.h

Touch WebCorePrefix.h to force a rebuild.

11:00 AM Changeset in webkit [54660] by tonikitoo@webkit.org
  • 2 edits in trunk

2010-02-11 Antonio Gomes <tonikitoo@webkit.org>

Adjust gstreamer-plugins-base minimum version check (from 0.10 to 0.10.23).

Reviewed by Xan Lopez.

  • configure.ac:
10:55 AM Changeset in webkit [54659] by yurys@chromium.org
  • 32 edits
    1 move
    5 adds in trunk/LayoutTests

2010-02-11 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Test that Web Inspector can inspect styles of elements in iframe from a domain
different from main frame domain.

inspector-tests.js moved to LayoutTests/http/tests/inspector because it can
be referenced by relative path from LayoutTests/inspector but not vice versa
(html files served from LayoutTests/http/tests cannot refer it because WebKit
tests httpd doesn't serve content not under LayoutTests/http).

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

  • http/tests/inspector/inspect-iframe-from-different-domain-expected.txt: Added.
  • http/tests/inspector/inspect-iframe-from-different-domain.html: Added.
  • http/tests/inspector/inspector-test.js: Renamed from LayoutTests/inspector/inspector-test.js. (onload): (evaluateInWebInspector): (notifyDone): (output): (didEvaluateForTestInFrontend):
  • http/tests/inspector/resources/iframe-from-different-domain-data.html: Added.
  • inspector/console-clear.html:
  • inspector/console-dir.html:
  • inspector/console-dirxml.html:
  • inspector/console-format-collections-expected.txt:
  • inspector/console-format-collections.html:
  • inspector/console-format.html:
  • inspector/console-log-before-inspector-open.html:
  • inspector/console-tests.html:
  • inspector/cookie-resource-match.html:
  • inspector/elements-img-tooltip.html:
  • inspector/elements-panel-rewrite-href-expected.txt:
  • inspector/elements-panel-rewrite-href.html:
  • inspector/elements-panel-selection-on-refresh.html:
  • inspector/elements-panel-structure.html:
  • inspector/evaluate-in-frontend.html:
  • inspector/inspected-objects-not-overriden.html:
  • inspector/styles-iframe.html:
  • inspector/syntax-highlight-css.html:
  • inspector/syntax-highlight-javascript.html:
  • inspector/timeline-enum-stability.html:
  • inspector/timeline-event-dispatch.html:
  • inspector/timeline-layout.html:
  • inspector/timeline-mark-timeline.html:
  • inspector/timeline-network-resource.html:
  • inspector/timeline-paint.html:
  • inspector/timeline-parse-html.html:
  • inspector/timeline-recalculate-styles.html:
  • inspector/timeline-script-tag-1.html:
  • inspector/timeline-script-tag-2.html:
  • inspector/timeline-trivial.html:
  • platform/qt/Skipped:
10:27 AM Changeset in webkit [54658] by steveblock@google.com
  • 2 edits in trunk/WebCore

Fixes CodeGeneratorV8.pm to include the header for the indexer type when using setCollectionIndexedGetter()
https://bugs.webkit.org/show_bug.cgi?id=34836

setCollectionIndexedGetter() uses getIndexedPropertyOfCollection(),
which in turn uses toV8() with the indexer type, which is declared in
the header for the indexer type.

9:16 AM Changeset in webkit [54657] by pfeldman@chromium.org
  • 11 edits
    2 adds
    3 deletes in trunk/WebCore

2010-02-11 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: split source code into chunks in order to improve text
viewer performance on large files.

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

This change brings back SourceFrame's canvas+style magic, restores line
wrapping and makes things a lot like they used to be.
It removes TextEditor for now and renames NativeTextViewer into TextViewer.
TextViewer is no longer derived from TextEditor.
This TextViewer is still based on TextEditorModel, no iframes are involved.

Instead of creating div per line, TextViewer splits source code into 50 line
chunks. Upon scroll event, visible chunks are sharded into lines and individual
lines are highlighted. Whenever highlighted region gets outside of the visible
area, highlight spans are thrown away and region is replaced with the original
plain text chunk.

Complex stuff:

  • Whenever there is a need to manipulate individual lines (add message bubble / set breakpoint / reveal / etc.), individual chunks for such lines are created.
  • There is also an implicit machinery that is maintaining selection when it goes beyond the visible area.
  • Search occurrences are implemented as artificial spans interweaving highlighting markup.
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/front-end/NativeTextViewer.js: Removed.
  • inspector/front-end/ScriptView.js: (WebInspector.ScriptView):
  • inspector/front-end/Settings.js:
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame): (WebInspector.SourceFrame.prototype.set visible): (WebInspector.SourceFrame.prototype.set executionLine): (WebInspector.SourceFrame.prototype.revealLine): (WebInspector.SourceFrame.prototype.addBreakpoint): (WebInspector.SourceFrame.prototype.removeBreakpoint): (WebInspector.SourceFrame.prototype.addMessage): (WebInspector.SourceFrame.prototype.clearMessages): (WebInspector.SourceFrame.prototype.sizeToFitContentHeight): (WebInspector.SourceFrame.prototype.setContent): (WebInspector.SourceFrame.prototype.highlightLine): (WebInspector.SourceFrame.prototype._createViewerIfNeeded): (WebInspector.SourceFrame.prototype.markAndRevealRange): (WebInspector.SourceFrame.prototype.clearMarkedRange): (WebInspector.SourceFrame.prototype._breakpointChanged): (WebInspector.SourceFrame.prototype._updateExecutionLine): (WebInspector.SourceFrame.prototype._addMessageToSource): (WebInspector.SourceFrame.prototype._addExistingBreakpointsToSource): (WebInspector.SourceFrame.prototype._addBreakpointToSource): (WebInspector.SourceFrame.prototype._removeBreakpointFromSource): (WebInspector.SourceFrame.prototype._mouseDown): (WebInspector.SourceFrame.prototype._editBreakpointCondition.committed): (WebInspector.SourceFrame.prototype._editBreakpointCondition.dismissed): (WebInspector.SourceFrame.prototype._editBreakpointCondition): (WebInspector.SourceFrame.prototype._showBreakpointConditionPopup): (WebInspector.SourceFrame.prototype._createConditionElement): (WebInspector.SourceFrame.prototype._keyDown): (WebInspector.SourceFrame.prototype.resize): (WebInspector.SourceFrame.prototype._drawProgramCounterInContext): (WebInspector.SourceFrame.prototype._drawProgramCounterImageIfNeeded): (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded.drawBreakpoint): (WebInspector.SourceFrame.prototype._drawBreakpointImagesIfNeeded):
  • inspector/front-end/SourceView.js: (WebInspector.SourceView): (WebInspector.SourceView.prototype._removeBreakpoint): (WebInspector.SourceView.prototype.searchCanceled): (WebInspector.SourceView.prototype._jumpToSearchResult):
  • inspector/front-end/TextEditor.js: Removed.
  • inspector/front-end/TextViewer.js: Added. (WebInspector.TextViewer): (WebInspector.TextViewer.prototype.set mimeType): (WebInspector.TextViewer.prototype.get textModel): (WebInspector.TextViewer.prototype.revealLine): (WebInspector.TextViewer.prototype.addDecoration): (WebInspector.TextViewer.prototype.removeDecoration): (WebInspector.TextViewer.prototype.markAndRevealRange): (WebInspector.TextViewer.prototype.highlightLine): (WebInspector.TextViewer.prototype._textChanged): (WebInspector.TextViewer.prototype._createChunkRow): (WebInspector.TextViewer.prototype._makeLineAChunk): (WebInspector.TextViewer.prototype._indexChunks): (WebInspector.TextViewer.prototype._highlightChanged): (WebInspector.TextViewer.prototype._scroll): (WebInspector.TextViewer.prototype.setCoalescingUpdate): (WebInspector.TextViewer.prototype._repaintAll): (WebInspector.TextViewer.prototype._chunkForOffset): (WebInspector.TextViewer.prototype._chunkNumberForLine): (WebInspector.TextViewer.prototype._chunkStartLine): (WebInspector.TextViewer.prototype._restoreChunks): (WebInspector.TextViewer.prototype._repaint): (WebInspector.TextViewer.prototype._getSelection): (WebInspector.TextViewer.prototype._restoreSelection): (WebInspector.TextViewer.prototype._selectionToPosition): (WebInspector.TextViewer.prototype._createLineRow): (WebInspector.TextViewer.prototype._paintLine): (WebInspector.TextViewer.prototype._createSpan): (WebInspector.TextViewer.prototype._createLink): (WebInspector.TextViewer.prototype._rewriteHref): (WebInspector.TextViewer.prototype._markRange): (WebInspector.TextViewer.prototype._decimalDigits): (WebInspector.TextViewer.prototype.resize):
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.css:
  • inspector/front-end/inspector.html:
  • inspector/front-end/textEditor.css: Removed.
  • inspector/front-end/textViewer.css: Added.
  • inspector/front-end/utilities.js: (Node.prototype.traverseNextTextNode): (Node.prototype.rangeBoundaryForOffset):
8:18 AM Changeset in webkit [54656] by Csaba Osztrogonác
  • 2 edits in trunk/WebCore

[Qt] ENABLE_RUBY flag was restored by r54649, but default value wasn't added for Qt port.
https://bugs.webkit.org/show_bug.cgi?id=34698

Reviewed by Tor Arne Vestbø.

  • WebCore.pri: Add ENABLE_RUBY=1 as default setting.
8:03 AM Changeset in webkit [54655] by steveblock@google.com
  • 2 edits in trunk/JavaScriptCore

Guard cmath using declarations in MathExtras.h on Android
https://bugs.webkit.org/show_bug.cgi?id=34840

7:44 AM Changeset in webkit [54654] by Simon Hausmann
  • 2 edits in trunk/WebKitTools

Make it possible to toggle accelerated compositing from the menu
at run-time.

Reviewed by Tor Arne Vestbø.

  • QtLauncher/main.cpp:

(LauncherWindow::toggleAcceleratedCompositing):
(LauncherWindow::setupUI):

7:37 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
7:33 AM QtWebKitTableOfFeatures46 edited by Henry Haverinen
(diff)
5:29 AM Changeset in webkit [54653] by steveblock@google.com
  • 2 edits in trunk/WebCore

2010-02-11 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Updates Android V8 Makefile to generate Notifications and WebSockets headers required by V8DOMWrapper.cpp
https://bugs.webkit.org/show_bug.cgi?id=34815

No new tests, build fix only.

  • Android.derived.v8bindings.mk:
5:27 AM Changeset in webkit [54652] by steveblock@google.com
  • 2 edits in trunk/WebCore

2010-02-11 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Updates Android V8 Makefile to generate XPath header required by V8Proxy.cpp
https://bugs.webkit.org/show_bug.cgi?id=34814

No new tests, build fix only.

  • Android.derived.v8bindings.mk:
3:40 AM Changeset in webkit [54651] by steveblock@google.com
  • 2 edits in trunk/WebCore

Update Android V8 Makefile to generate Inspector headers required by V8 ScriptObject.cpp
https://bugs.webkit.org/show_bug.cgi?id=34806

3:27 AM Changeset in webkit [54650] by steveblock@google.com
  • 5 edits in trunk/WebCore

Guards SVG code in V8 bindings with ENABLE(SVG)
https://bugs.webkit.org/show_bug.cgi?id=34812

Also updates Android V8 Makefile to generate required SVG headers.

No new tests, build fix only.

2:55 AM Changeset in webkit [54649] by mjs@apple.com
  • 25 edits in trunk

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • win/tools/vsprops/FeatureDefines.vsprops:

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • GNUmakefile.am:
  • html/HTMLTagNames.in: Make the ruby-related tag names conditional.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::createObject): ifdef the code that would create ruby elements.
  • rendering/RenderObject.h: ditto above
  • rendering/RenderRuby.cpp: ifdef this whole file
  • rendering/RenderRuby.h: ditto
  • rendering/RenderRubyBase.cpp: ditto
  • rendering/RenderRubyBase.h: ditto
  • rendering/RenderRubyRun.cpp: ditto
  • rendering/RenderRubyRun.h: ditto
  • rendering/RenderRubyText.cpp: ditto
  • rendering/RenderRubyText.h: ditto

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • configure.ac:

2010-02-08 Maciej Stachowiak <mjs@apple.com>

Reviewed by Cameron Zwarich.

Restore ENABLE_RUBY flag so vendors can ship with Ruby disabled if they choose.
https://bugs.webkit.org/show_bug.cgi?id=34698

  • Scripts/build-webkit:
1:26 AM Changeset in webkit [54648] by abecsi@webkit.org
  • 5 edits in trunk/LayoutTests

Rubber-stamped by Kenneth Rohde Christiansen.

[Qt] Update expected results for the following tests after r54646 because of ImageData support.

  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt/fast/dom/prototype-inheritance-expected.txt:
  • platform/qt/fast/js/global-constructors-expected.txt:
12:34 AM Changeset in webkit [54647] by tkent@chromium.org
  • 11 edits
    6 adds in trunk

2010-02-11 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

Step attribute support for date&time types.
https://bugs.webkit.org/show_bug.cgi?id=30847

Add tests for ValidityState.stepMismatch, stepUp() and stepDown()
for date, datetime, datetime-local, month, time, week types.
Update valueAsDate and valueAsNumber tests for a string representation
change.

  • fast/forms/ValidityState-stepMismatch-expected.txt: Added.
  • fast/forms/ValidityState-stepMismatch.html: Added.
  • fast/forms/input-stepup-stepdown-expected.txt: Added.
  • fast/forms/input-stepup-stepdown.html: Added.
  • fast/forms/input-valueasdate-datetime-expected.txt:
  • fast/forms/input-valueasdate-time-expected.txt:
  • fast/forms/input-valueasnumber-datetime-expected.txt:
  • fast/forms/input-valueasnumber-datetimelocal-expected.txt:
  • fast/forms/input-valueasnumber-time-expected.txt:
  • fast/forms/script-tests/ValidityState-stepMismatch.js: Added.
  • fast/forms/script-tests/input-stepup-stepdown.js: Added.
  • fast/forms/script-tests/input-valueasdate-datetime.js:
  • fast/forms/script-tests/input-valueasnumber-datetime.js:

2010-02-11 Kent Tamura <tkent@chromium.org>

Reviewed by Darin Adler.

Step attribute support for date&time types.
https://bugs.webkit.org/show_bug.cgi?id=30847

  • Add implementation for ValidityState.stepMismatch, stepUp() and stepDown() for date, datetime, datetime-local, month, time, week types.
  • Fix string representation of DateComponents.

Tests: fast/forms/ValidityState-stepMismatch.html

fast/forms/input-stepup-stepdown.html

  • html/HTMLInputElement.cpp:
    • Change monthDefaultMaximum so that DateComponents::m_year doesn't overflow.

(WebCore::HTMLInputElement::stepBase):
(WebCore::HTMLInputElement::stepMismatch):
(WebCore::HTMLInputElement::getStepParameters):
(WebCore::HTMLInputElement::getAllowedValueStep):
(WebCore::HTMLInputElement::applyStep):

Renamed from applyStepForNumberOrRange(), and add support for other types.

(WebCore::HTMLInputElement::stepUp): Rename applyStepForNumberOrRange().
(WebCore::HTMLInputElement::stepDown): Rename applyStepForNumberOrRange().
(WebCore::HTMLInputElement::setValueAsDate): Use setDateValue().
(WebCore::HTMLInputElement::setDateValue):

A helper function to make the best representation of DateComponents.

(WebCore::HTMLInputElement::setValueAsNumber): Use setDateValue().

  • html/HTMLInputElement.h:
12:30 AM Changeset in webkit [54646] by oliver@apple.com
  • 13 edits in trunk

2010-02-10 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

postMessage does not send ImageData
https://bugs.webkit.org/show_bug.cgi?id=34825

Add test for postMessage passing ImageData

Update a few other tests to cover the fact that ImageData's constructor
is now available on the window object.

  • fast/dom/Window/window-postmessage-clone-expected.txt:
  • fast/dom/Window/window-postmessage-clone.html:
  • fast/dom/Window/window-properties-expected.txt:
  • fast/dom/Window/window-property-descriptors-expected.txt:
  • fast/dom/prototype-inheritance-2-expected.txt:
  • fast/dom/prototype-inheritance-expected.txt:
  • fast/js/global-constructors-expected.txt:

2010-02-10 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

postMessage does not send ImageData
https://bugs.webkit.org/show_bug.cgi?id=34825

Implement serialisation of ImageData, and for testing reasons
expose the ImageData constructor (which should already have
been exposed).

  • bindings/js/SerializedScriptValue.cpp: (WebCore::SerializedImageData::create): (WebCore::SerializedImageData::width): (WebCore::SerializedImageData::height): (WebCore::SerializedImageData::data): (WebCore::SerializedImageData::SerializedImageData): (WebCore::SerializedScriptValueData::SerializedScriptValueData): (WebCore::SharedSerializedData::asImageData): (WebCore::SerializingTreeWalker::convertIfTerminal): (WebCore::DeserializingTreeWalker::convertIfTerminal): (WebCore::TeardownTreeWalker::convertIfTerminal):
  • bindings/js/SerializedScriptValue.h: (WebCore::SerializedScriptValueData::): (WebCore::SerializedScriptValueData::asImageData):
  • html/canvas/CanvasPixelArray.h: (WebCore::CanvasPixelArray::data):
  • page/DOMWindow.idl:
Note: See TracTimeline for information about the timeline view.