Timeline



Dec 13, 2011:

11:34 PM Changeset in webkit [102744] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Add the new plugin files into the build system.
https://bugs.webkit.org/show_bug.cgi?id=74483

Patch by Wei Charles <charles.wei@torchmobile.com.cn> on 2011-12-13
Reviewed by Daniel Bates.

No new tests, just add new files to the build system.

  • PlatformBlackBerry.cmake:
11:16 PM Changeset in webkit [102743] by fpizlo@apple.com
  • 18 edits in trunk/Source/JavaScriptCore

DFG should infer when local variables are doubles
https://bugs.webkit.org/show_bug.cgi?id=74480

Reviewed by Oliver Hunt.

Introduced the notion that a local variable (though not an argument, yet!) can
be stored as a double, and will be guaranteed to always contain a double. This
requires more magic in the OSR (conversion in both entry and exit). The inference
is quite unorthodox: all uses of a variable vote on whether they think it should
be a double or a JSValue, based on how they use it. If they use it in an integer
or boxed value context, they vote JSValue. If they use it in a double context,
they vote double. This voting is interleaved in the propagator's fixpoint, so
that variables voted double then have a double prediction propagated from them.
This interleaving is needed because a variable that actually always contains an
integer that always gets used in arithmetic that involves doubles may end up
being voted double, which then means that all uses of the variable will see a
double rather than an integer.

This is worth 18% to SunSpider/3d-cube, 7% to Kraken/audio-beat-detection, 7%
to Kraken/audio-fft, 6% to Kraken/imaging-darkroom, 20% to
Kraken/imaging-gaussian-blur, and just over 1% to Kraken/json-parse-financial.
It results in a 1% speed-up on SunSpider and a 4% speed-up in Kraken. Similar
results on JSVALUE32_64, though with a bigger win on Kraken (5%) and no overall
win on SunSpider.

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::alreadyInRegisterFileAsUnboxedDouble):
(JSC::ValueRecovery::dump):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::boxDouble):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::noticeOSREntry):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSREntry.h:
  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::vote):
(JSC::DFG::Propagator::doRoundOfDoubleVoting):
(JSC::DFG::Propagator::propagatePredictions):
(JSC::DFG::Propagator::fixupNode):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::ValueSource::dump):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::clearVotes):
(JSC::DFG::VariableAccessData::vote):
(JSC::DFG::VariableAccessData::doubleVoteRatio):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::tallyVotesForShouldUseDoubleFormat):

  • runtime/Arguments.cpp:

(JSC::Arguments::tearOff):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
10:49 PM Changeset in webkit [102742] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed morning gardening.

  • platform/qt/Skipped: Skip new failing tests.
10:14 PM Changeset in webkit [102741] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

[Forms] Default selection of select(menulist) should not be disabled
https://bugs.webkit.org/show_bug.cgi?id=74270

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

Source/WebCore:

This patch changes default selection of select(menulist) element to

  1. Selected option element. If there are multiple options which have selected state, we pick the largest index option up. (same as current)
  2. Non-disabled option element (new behavior)
  3. The first option if all options are disabled. (new behavior)

Tests: fast/forms/select/menulist-disabled-option-expected.html

fast/forms/select/menulist-disabled-option.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::recalcListItems): Implement new logic for selection.

LayoutTests:

basic-selects.html will fail because select element displays disabled
option element "foo" at index 0 as default selection. This should be
non-disabled option "bar" at index 1.

menulist-disabled-option-expected.html checks default selection of
select(menulist) with disabled option element.

  • fast/forms/select/menulist-disabled-option-expected.html: Added.
  • fast/forms/select/menulist-disabled-option.html: Added.
  • platform/chromium/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/gtk/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/mac/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/qt/test_expectations.txt: Add fast/forms/basic-selects.html
  • platform/win/test_expectations.txt: Add fast/forms/basic-selects.html
9:52 PM Changeset in webkit [102740] by Simon Fraser
  • 18 edits
    1 add in trunk

Share blend progress code
https://bugs.webkit.org/show_bug.cgi?id=74464

Reviewed by Dean Jackson.

Lots of places in the code had copies of the animation interpolation
logic "from + (to - from) * progress", in various forms.

Coalesce all these into calls to a few new inline functions in a new
AnimationUtilities.h header. Color and Length get their own blend fuctions
in their respective headers.

Covered by existing tests.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSGradientValue.cpp:
  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc):

  • platform/Length.h:

(WebCore::Length::blend):

  • platform/animation/AnimationUtilities.h: Added.

(WebCore::blend):

  • platform/graphics/Color.h:

(WebCore::blend):

  • platform/graphics/transforms/PerspectiveTransformOperation.cpp:

(WebCore::PerspectiveTransformOperation::blend):

  • platform/graphics/transforms/RotateTransformOperation.cpp:

(WebCore::RotateTransformOperation::blend):

  • platform/graphics/transforms/ScaleTransformOperation.cpp:

(WebCore::ScaleTransformOperation::blend):

  • platform/graphics/transforms/SkewTransformOperation.cpp:

(WebCore::SkewTransformOperation::blend):

  • platform/graphics/transforms/TranslateTransformOperation.cpp:

(WebCore::TranslateTransformOperation::blend):

  • svg/SVGLength.h:

(WebCore::SVGLength::blend):

  • svg/SVGPathBlender.cpp:

(WebCore::blendFloatPoint):
(WebCore::SVGPathBlender::blendAnimatedDimensonalFloat):
(WebCore::SVGPathBlender::blendArcToSegment):

9:22 PM Changeset in webkit [102739] by commit-queue@webkit.org
  • 1 edit
    3 adds in trunk/Source/WebCore

Upstream 3 files into WebCore/platform/blackberry
ClipboardBlackBerry.cpp/h, PasteboardBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74381

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-13
Reviewed by Rob Buis.

Main contributor:
Mike Fenton <mifenton@rim.com>

Initial upstream, no new tests.

  • platform/blackberry/ClipboardBlackBerry.cpp: Added.
  • platform/blackberry/ClipboardBlackBerry.h: Added.
  • platform/blackberry/PasteboardBlackBerry.cpp: Added.
9:19 PM Changeset in webkit [102738] by jamesr@google.com
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r102726.
http://trac.webkit.org/changeset/102726
https://bugs.webkit.org/show_bug.cgi?id=74154

Does not compile on clang

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::createTile):

  • platform/graphics/chromium/cc/CCLayerTilingData.cpp:

(WebCore::CCLayerTilingData::addTile):
(WebCore::CCLayerTilingData::takeTile):
(WebCore::CCLayerTilingData::tileAt):

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::DrawableTile):
(WebCore::CCTiledLayerImpl::createTile):

9:15 PM Changeset in webkit [102737] by andersca@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Try to fix the Windows build.

Remove the callOnMainThread overload that takes a WTF::Function since it's not being used.

  • wtf/MainThread.cpp:
  • wtf/MainThread.h:
9:13 PM Changeset in webkit [102736] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] Remove several global variables from prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74389

Reviewed by David Kilzer.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables being used only through parameter passing.

  • %paths
  • $changedFiles
  • $conflictFiles
  • $functionLists
  • $bugURL
  • Scripts/prepare-ChangeLog:

(findChangeLogs):
(generateNewChangeLogs):
(processPaths):
(generateFileList):
(firstDirectoryOrCwd):

9:07 PM Changeset in webkit [102735] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r102732.
http://trac.webkit.org/changeset/102732

The last fix makes no sense...

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
8:59 PM Changeset in webkit [102734] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

HTML details summary not working with form controls
https://bugs.webkit.org/show_bug.cgi?id=74398

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

Source/WebCore:

Allowed HTMLSummaryElement to skip the toggle logic if the event
target is a form control.

Test: fast/html/details-click-controls.html

  • html/HTMLSummaryElement.cpp:

(WebCore::isClickableControl):
(WebCore::HTMLSummaryElement::defaultEventHandler):

LayoutTests:

  • fast/html/details-click-controls-expected.txt: Added.
  • fast/html/details-click-controls.html: Added.
8:56 PM Changeset in webkit [102733] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Optimize to not use pow() in the inner loop in AudioParamTimeline
https://bugs.webkit.org/show_bug.cgi?id=73530

Patch by James Wei <james.wei@intel.com> on 2011-12-13
Reviewed by Kenneth Russell.

No new tests.

  • webaudio/AudioParamTimeline.cpp:

(WebCore:AudioParamTimeline:valuesForTimeRangeImpl):

8:49 PM Changeset in webkit [102732] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed Chromium-Mac build fix trial.

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
8:11 PM Changeset in webkit [102731] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Initialize Settings::m_perTileDrawingEnabled properly.
https://bugs.webkit.org/show_bug.cgi?id=74476

Patch by David Reveman <reveman@chromium.org> on 2011-12-13
Reviewed by James Robinson.

Add m_perTileDrawingEnabled(false) to WebCore::Settings initialize list.

No new tests.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

7:12 PM Changeset in webkit [102730] by andersca@apple.com
  • 13 edits
    3 adds in trunk

Add a very bare-bones implementation of bind and Function to WTF
https://bugs.webkit.org/show_bug.cgi?id=74462

Reviewed by Sam Weinig.

Source/JavaScriptCore:

In order to make it easier to package up function calls and send them across
threads, add a (currently very simple) implementation of WTF::bind and WTF::Function to a new
wtf/Functional.h header.

Currently, all bind can do is bind a nullary function and return a Function object that can be called and copied,
but I'll add more as the need arises.

(WTF::R):
(WTF::FunctionImplBase::~FunctionImplBase):
(WTF::FunctionWrapper::ResultType):
(WTF::FunctionBase::isNull):
(WTF::FunctionBase::FunctionBase):
(WTF::FunctionBase::impl):
(WTF::bind):

  • wtf/MainThread.cpp:

(WTF::callFunctionObject):
(WTF::callOnMainThread):

  • wtf/MainThread.h:
  • wtf/wtf.pro:

Source/WebCore:

Add a forwarding header for Functional.h.

  • ForwardingHeaders/wtf/Functional.h: Added.

Tools:

Add basic tests for WTF::Function and WTF::bind.

  • TestWebKitAPI/TestWebKitAPI.gypi:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/Functional.cpp: Added.

(TestWebKitAPI::returnFortyTwo):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/win/TestWebKitAPI.vcproj:
6:56 PM Changeset in webkit [102729] by dslomov@google.com
  • 2 edits
    4 adds in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=74456
[V8][Chromium] Reenable dedicated worker layout tests.

Chromium-specific results are caused by exception message text differences between JSC and V8.

Reviewed by David Levin.

  • platform/chromium/fast/workers/use-machine-stack-expected.txt: Added.
  • platform/chromium/fast/workers/worker-constructor-expected.txt: Added.
  • platform/chromium/fast/workers/worker-location-expected.txt: Added.
  • platform/chromium/fast/workers/worker-script-error-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
6:55 PM Changeset in webkit [102728] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

<rdar://problem/10577239> GC Crash introduced in r102545

Reviewed by Gavin Barraclough.

MarkedArgumentBuffer was still marking items in forwards order, even though
the argument order has been reversed.

I fixed this bug, and replaced address calculation code with some helper
functions -- mallocBase() and slotFor() -- so it stays fixed everywhere.

  • runtime/ArgList.cpp:

(JSC::MarkedArgumentBuffer::markLists):
(JSC::MarkedArgumentBuffer::slowAppend):

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::at):
(JSC::MarkedArgumentBuffer::append):
(JSC::MarkedArgumentBuffer::last):
(JSC::MarkedArgumentBuffer::slotFor):
(JSC::MarkedArgumentBuffer::mallocBase):

6:32 PM Changeset in webkit [102727] by dpranke@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

chromium port - remove nacl hack in DEPS/gyp_webkit
https://bugs.webkit.org/show_bug.cgi?id=74150

Reviewed by Tony Chang.

This change reverts the change added in r101011; it is
no longer necessary to pull in anything from Native Client for
the chromium port to build.

  • DEPS:
  • gyp_webkit:
5:52 PM Changeset in webkit [102726] by enne@google.com
  • 5 edits in trunk/Source/WebCore

[chromium] Use HashMap<..., OwnPtr<Tile>> for compositor tilemap
https://bugs.webkit.org/show_bug.cgi?id=74154

Reviewed by James Robinson.

After r102410 landed, it's now possible to properly use an OwnPtr to
store tiles rather than hackily use a RefPtr.

Covered by the compositing/ layout tests.

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::create):
(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::createTile):

  • platform/graphics/chromium/cc/CCLayerTilingData.cpp:

(WebCore::CCLayerTilingData::addTile):
(WebCore::CCLayerTilingData::takeTile):
(WebCore::CCLayerTilingData::tileAt):

  • platform/graphics/chromium/cc/CCLayerTilingData.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::create):
(WebCore::DrawableTile::DrawableTile):
(WebCore::CCTiledLayerImpl::createTile):

5:52 PM Changeset in webkit [102725] by rniwa@webkit.org
  • 2 edits
    2 copies in branches/chromium/963

Line breaks are lost when pasted into textarea text starting with a blank line set while textarea is hidden
https://bugs.webkit.org/show_bug.cgi?id=74126

Reviewed by Tony Chang.

The bug was caused by the code that generated text out of pre-rendered text was generating div's inside the fragment
pasted into textarea even though serialization algorithm in textarea doesn't handle block elements.

Fixed the bug by special-casing this in createFragmentFromText. In the long run, we should really get rid of this
whole pre-rendering trick.

  • editing/markup.cpp:

(WebCore::createFragmentFromText):
Merge 102392 - Line breaks are lost when pasted into textarea text starting with a blank line set while textarea is hidden
https://bugs.webkit.org/show_bug.cgi?id=74126

Reviewed by Tony Chang.

The bug was caused by the code that generated text out of pre-rendered text was generating div's inside the fragment
pasted into textarea even though serialization algorithm in textarea doesn't handle block elements.

Fixed the bug by special-casing this in createFragmentFromText. In the long run, we should really get rid of this
whole pre-rendering trick.

  • editing/markup.cpp:

(WebCore::createFragmentFromText):

http://crbug.com/104620
Review URL: http://codereview.chromium.org/8907027

5:51 PM Changeset in webkit [102724] by kov@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix.

  • GNUmakefile.am: make sure we do not derreference the target link

if it already exists, and replace it with the new one instead,
otherwise we end up with a gtk link inside
Source/WebKit2/UIProcess/API/gtk, which causes the documentation
build to produce warnings, and make the build fail.

5:46 PM Changeset in webkit [102723] by fpizlo@apple.com
  • 14 edits
    3 adds in trunk

DFG OSR exit for UInt32ToNumber should roll forward, not roll backward
https://bugs.webkit.org/show_bug.cgi?id=74463

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Implements roll-forward OSR exit for UInt32ToNumber, which requires ValueRecoveries knowing
how to execute the slow path of UInt32ToNumber.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::lastOSRExit):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::operator!=):

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::uint32InGPR):
(JSC::ValueRecovery::gpr):
(JSC::ValueRecovery::dump):

  • dfg/DFGAssemblyHelpers.cpp:
  • dfg/DFGAssemblyHelpers.h:
  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::valueRecoveryForOperand):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-uint32-to-number-expected.txt: Added.
  • fast/js/dfg-uint32-to-number.html: Added.
  • fast/js/script-tests/dfg-uint32-to-number.js: Added.

(foo):

5:17 PM Changeset in webkit [102722] by dslomov@google.com
  • 5 edits in trunk

https://bugs.webkit.org/show_bug.cgi?id=73691
[JSC] Implement correct order of window.postMessage arguments.
This change supports a new signature of windowPostMessage:

postMessage(message, targetOrigin[, transferrables])

as well as the legacy webkit-proprietary:

postMessage(message, [transferrables,] targetOrigin)

The latter is only supported for cases when targetOrigin is a String.

Reviewed by David Levin.

Source/WebCore:

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::handlePostMessage):

  • page/DOMWindow.idl:

LayoutTests:

  • fast/dom/Window/window-postmessage-args-expected.txt:
5:03 PM Changeset in webkit [102721] by adamk@chromium.org
  • 9 edits in trunk/Source/WebCore

[MutationObservers] Avoid allocations if no observers are present
https://bugs.webkit.org/show_bug.cgi?id=74423

Patch by Rafael Weinstein <rafaelw@chromium.org> on 2011-12-13
Reviewed by Ojan Vafai.

This patch adds Node::mayHaveMutationObserversOfType which can be used to check
if there are any observers at all which could receive a give type of mutation.
MutationObserverInterestGroup uses this to possibly exit early (returning
null) if no observers are present.

No tests needed. This patch is just a refactor.

  • css/CSSMutableStyleDeclaration.cpp:
  • dom/CharacterData.cpp:

(WebCore::CharacterData::dispatchModifiedEvent):

  • dom/ChildListMutationScope.cpp:

(WebCore::ChildListMutationAccumulator::MutationAccumulationRouter::incrementScopingLevel):

  • dom/Element.cpp:

(WebCore::enqueueAttributesMutationRecord):

  • dom/Node.cpp:

(WebCore::Node::mayHaveMutationObserversOfType):

  • dom/Node.h:
  • dom/WebKitMutationObserver.cpp:

(WebCore::MutationObserverInterestGroup::createIfNeeded):
(WebCore::MutationObserverInterestGroup::createForChildListMutation):
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation):
(WebCore::MutationObserverInterestGroup::createForAttributesMutation):
(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):

  • dom/WebKitMutationObserver.h:
4:20 PM Changeset in webkit [102720] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Export WebArrayBuffer::byteLength
https://bugs.webkit.org/show_bug.cgi?id=74438

Patch by Dave Michael <dmichael@chromium.org> on 2011-12-13
Reviewed by Darin Fisher.

  • public/WebArrayBuffer.h:
4:07 PM Changeset in webkit [102719] by ojan@chromium.org
  • 3 edits in trunk/Websites/bugs.webkit.org

Expanding context is broken for prepare-ChangeLog in the code review tool.
https://bugs.webkit.org/show_bug.cgi?id=74458

Reviewed by Adam Barth.

  • code-review-test.html:

-Moved all the tests into test* functions.
-Automated calling all test* functions.
-Added testIsChangeLog.

  • code-review.js:

Made the check for whether it's a ChangeLog file more robust.

4:00 PM Changeset in webkit [102718] by kevino@webkit.org
  • 3 edits in trunk/Source/WebCore

[wx] Don't make the bitmap transparent when using theme drawing
calls that don't support transparent bitmaps.
https://bugs.webkit.org/show_bug.cgi?id=74319

Reviewed by Kevin Ollivier.

3:59 PM Changeset in webkit [102717] by kling@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r102652): New window opens with zero size at produbanco.com
<http://webkit.org/b/74418> and <rdar://problem/10565998>

Reviewed by Anders Carlsson.

Don't use the cached window frame if it's empty (meaning we haven't received
a WindowAndViewFramesChanged message yet.) Instead use the synchronous
GetWindowFrame (WP->UIP) message.

This situation occurs when opening a new window via window.open(), in which
WebCore::createWindow() will query the windowRect() on the new window.

I spent a long time trying to write a layout test for this but couldn't come
up with something reliable. The windowRect() is non-empty before we get a
chance to run JS in/on the new window, and we can't check against the
requested geometry since it varies depending on whether the window manager
has shown the new window yet.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):

3:54 PM Changeset in webkit [102716] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Rolling out r102461, a change to a layout test to try to remove flakiness on Chromium.

http://trac.webkit.org/changeset/102461
Test is still flaky on Chromium, so rollout the change.

  • fast/replaced/width100percent-textarea.html:
3:50 PM Changeset in webkit [102715] by kevino@webkit.org
  • 10 edits in trunk

[wx] Add a URL argument to the wxWebView constructor,
and fix page calculations and margins on Windows and Mac.
https://bugs.webkit.org/show_bug.cgi?id=74316

Reviewed by Kevin Ollivier.

3:50 PM Changeset in webkit [102714] by tony@chromium.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Inline all of initForRegionStyling except for the rarely used part for non-null regions.
https://bugs.webkit.org/show_bug.cgi?id=74435

Reviewed by Andreas Kling.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling): Inline setting of m_regionForStyling
(WebCore::CSSStyleSelector::initRegionRules): Move code that only
applies to CSSRegions into non-inlined code.

  • css/CSSStyleSelector.h:
3:39 PM Changeset in webkit [102713] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[Blackberry] Fix a leak in BackingStore class

Don't leak the blit generation condvar and mutex.

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

Patch by Arvid Nilsson <anilsson@rim.com> on 2011-12-13
Reviewed by Antonio Gomes.

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::~BackingStorePrivate):

3:38 PM Changeset in webkit [102712] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

inline setting m_regionForStyling since region is rarely set
https://bugs.webkit.org/show_bug.cgi?id=74435

Reviewed by Andreas Kling.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling):
(WebCore::CSSStyleSelector::initRegionRules):

  • css/CSSStyleSelector.h:
3:26 PM Changeset in webkit [102711] by ojan@chromium.org
  • 3 edits in trunk/Websites/bugs.webkit.org

Fix bug in the code review tool when readding a discarded comment
https://bugs.webkit.org/show_bug.cgi?id=74450

Reviewed by Adam Barth.

If you discard a comment that has a corresponding previousComment,
then we would incorrectly remove the comment baseline. So, the next
time you added a comment by clicking on the previousComment, we
would get undefined as the start line for the new comment.

All of this works fine until you try to restore the comment from
localStorage, at which point we throw an error because the start
line is undefined.

Also added some failsafes to better handle the case of corrupted comments.

  • code-review-test.html:
  • code-review.js:
3:19 PM Changeset in webkit [102710] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium expectations update. Expand a couple of existing suppressions.

  • platform/chromium/test_expectations.txt:
3:17 PM Changeset in webkit [102709] by oliver@apple.com
  • 6 edits in trunk

Arguments object doesn't handle mutation of length property correctly
https://bugs.webkit.org/show_bug.cgi?id=74454

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Correct handling of arguments objects with overridden length property

  • interpreter/Interpreter.cpp:

(JSC::loadVarargs):

  • runtime/Arguments.cpp:

(JSC::Arguments::copyToArguments):
(JSC::Arguments::fillArgList):

LayoutTests:

Add tests of mutated arguments.length

  • fast/js/arguments-expected.txt:
  • fast/js/script-tests/arguments.js:

(argumentLengthIs5):
(duplicateArgumentAndReturnLast_call):
(duplicateArgumentAndReturnFirst_call):
(duplicateArgumentAndReturnLast_apply):
(duplicateArgumentAndReturnFirst_apply):

2:24 PM Changeset in webkit [102708] by simonjam@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, Chromium Mac build fix.

  • page/PerformanceTiming.h:
2:12 PM Changeset in webkit [102707] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG GetByVal CSE rule should match PutByValAlias
https://bugs.webkit.org/show_bug.cgi?id=74390

Reviewed by Geoff Garen.

Tiny win on some benchmarks. Maybe a 0.2% win on SunSpider.

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getByValLoadElimination):

2:10 PM Changeset in webkit [102706] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix interpreter debug build.
https://bugs.webkit.org/show_bug.cgi?id=74439

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-13
Reviewed by Geoffrey Garen.

  • bytecode/ValueRecovery.h: Include stdio.h on debug builds.
2:05 PM Changeset in webkit [102705] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Update variable names in NamedNodeMap methods to match WebKit style
https://bugs.webkit.org/show_bug.cgi?id=74437

Reviewed by Ojan Vafai.

While reading these methods in preparation for a refactor, I found
them hard to understand due to short or confusing variable names.
I think the new names are much clearer, and match WebKit style.

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::setNamedItem):
(WebCore::NamedNodeMap::removeNamedItem):

1:50 PM Changeset in webkit [102704] by kubo@profusion.mobi
  • 2 edits in trunk/Tools

watchlist: Add watchlist for EFL, CMake and libsoup code and put myself on it.
https://bugs.webkit.org/show_bug.cgi?id=74430

Reviewed by David Levin.

  • Scripts/webkitpy/common/config/watchlist:
1:42 PM Changeset in webkit [102703] by kbr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r102693.
http://trac.webkit.org/changeset/102693
https://bugs.webkit.org/show_bug.cgi?id=74334

Broke Chromium Windows DRT build

  • features.gypi:
1:42 PM Changeset in webkit [102702] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Implement a function of vector multiply with SSE2 optimization in VectorMath.cpp.
https://bugs.webkit.org/show_bug.cgi?id=74048

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2011-12-13
Reviewed by Benjamin Poulain.

The vmul is a function for an element-by-element multiply of two float vectors and we
get about 3.4x performance improvement with SSE2 optimization compared with the common
multiply.

Use vmul in AudioBus::copyWithSampleAccurateGainValuesFrom().

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::copyWithSampleAccurateGainValuesFrom):

  • platform/audio/VectorMath.cpp:

(WebCore::VectorMath::vmul):

  • platform/audio/VectorMath.h:
1:27 PM Changeset in webkit [102701] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Regression] ResourceHeadersView sections should be expanded by default.
https://bugs.webkit.org/show_bug.cgi?id=74434

Reviewed by Pavel Feldman.

  • inspector/front-end/treeoutline.js:
1:23 PM Changeset in webkit [102700] by peter@chromium.org
  • 5 edits in trunk

[Chromium] Pull in FreeType and decrease check-out complexity for Android
https://bugs.webkit.org/show_bug.cgi?id=74401

Source/WebKit/chromium:

Pull in FreeType in the third_party/ directory from a separate git
repository at Chromium. This introduces a new prerequisite for checking
out the Chromium WebKit port for Android, namely that git needs to be
available on the system. gclient can handle this just fine.

Reviewed by Adam Barth.

  • DEPS:

Tools:

Decrease the check-out complexity by removing the need to first run
"update-webkit-chromium --chromium" prior to running it with
"--chromium-android", which was caused by an unversioned third_party/
directory being created. This moves the Android NDK to Source/WebKit/
chromium/, coming from third_party/ in that directory.

Reviewed by Adam Barth.

  • Scripts/update-webkit-chromium:
  • Scripts/webkitdirs.pm:

(buildChromiumMakefile):

1:19 PM Changeset in webkit [102699] by vsevik@chromium.org
  • 3 edits
    2 adds in trunk

Web Inspector: Network item view does not correctly decode "+" in request parameters.
https://bugs.webkit.org/show_bug.cgi?id=74422

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/request-parameters-decoding.html

  • inspector/front-end/ResourceHeadersView.js:

(WebInspector.ResourceHeadersView.prototype._formatParameter):
(WebInspector.ResourceHeadersView.prototype._refreshParms):

LayoutTests:

  • http/tests/inspector/network/request-parameters-decoding-expected.txt: Added.
  • http/tests/inspector/network/request-parameters-decoding.html: Added.
1:12 PM Changeset in webkit [102698] by alokp@chromium.org
  • 13 edits in trunk/Source

[chromium] compositing/masks layout tests fail with accelerated drawing
https://bugs.webkit.org/show_bug.cgi?id=72760

Reviewed by Stephen White.

Source/WebCore:

Accelerated drawing path used to render bottom-up upright textures, which was opposite of what the software path rendered.
The textures produced by the accelerated path was flipped along Y in the shader to make it upside down as expected by the compositor.
This strategy does not work in case of masks which do not go through a shader and hence do not get flipped,
which results in a case where texture in the render surface is top-down, while that in the mask is bottom-up.
This patch makes accelerated drawing path render textures in the same orientation as the software path.
LayerTextureUpdater::Orientation was added to support the difference in texture orientation between software and accelerated paths.
Now that both paths produce textures in the same orientation, there is no need for it.

No new tests needed. Covered by existing compositing tests.

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/ImageLayerChromium.cpp:
  • platform/graphics/chromium/LayerTextureUpdater.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::setLayerTreeHost):
(WebCore::TiledLayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::drawTiles):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:

(WebCore::CCTiledLayerImpl::setSkipsDraw):

Source/WebKit/chromium:

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeLayerTextureUpdater::createTexture):

12:53 PM Changeset in webkit [102697] by zmo@google.com
  • 9 edits in trunk

Implement GLES2 CheckFramebufferStatus() behavior
https://bugs.webkit.org/show_bug.cgi?id=74228

Reviewed by Kenneth Russell.

Source/WebCore:

  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::getColorBufferWidth): Add ColorBuffer to the function name - this is more accurate.
(WebCore::WebGLFramebuffer::getColorBufferHeight): Ditto.
(WebCore::WebGLFramebuffer::checkStatus): Implement full semantics of GLES2 glCheckFramebufferStatus().
(WebCore::WebGLFramebuffer::onAccess): Call checkStatus().

  • html/canvas/WebGLFramebuffer.h:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::checkFramebufferStatus): Call checkStatus().
(WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): No longer check framebuffer status.
(WebCore::WebGLRenderingContext::getBoundFramebufferWidth): Call getColorBufferWidth.
(WebCore::WebGLRenderingContext::getBoundFramebufferHeight): Call getColorBufferHeight.

LayoutTests:

  • fast/canvas/webgl/framebuffer-object-attachment-expected.txt:
  • fast/canvas/webgl/framebuffer-object-attachment.html: sync with khronos side, the whole file
  • fast/canvas/webgl/resources/webgl-test.js: synced with khronos side, two listed functions

(shouldGenerateGLError):
(glErrorShouldBe):

  • platform/chromium/test_expectations.txt: Mark framebuffer-object-*.html as failing due to mesa lib bug.
12:48 PM Changeset in webkit [102696] by simonjam@chromium.org
  • 20 edits
    1 copy
    1 add in trunk

[Navigation Timing] Use monotonicallyIncreasingTime() instead of currentTime()
https://bugs.webkit.org/show_bug.cgi?id=58354

Reviewed by Pavel Feldman.

No new tests. Relies on existing webtiming-* tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp: Use monotonic times.

(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didFinishLoadingImpl): Convert monotonicFinishTime to wall time if needed.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::buildObjectForTiming): Convert monotonic requestTime to wall time.
(WebCore::buildObjectForResourceResponse): Plumbing for above.
(WebCore::buildObjectForCachedResource): Ditto.
(WebCore::InspectorResourceAgent::willSendRequest): Ditto.
(WebCore::InspectorResourceAgent::didReceiveResponse): Ditto.
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): Ditto.

  • loader/DocumentLoadTiming.cpp: Added.

(WebCore::DocumentLoadTiming::DocumentLoadTiming):
(WebCore::DocumentLoadTiming::setNavigationStart): Determine reference time and root reference time.
(WebCore::DocumentLoadTiming::addRedirect): Moved logic from MainResourceLoader.
(WebCore::DocumentLoadTiming::convertMonotonicTimeToDocumentTime): Helper to compute wall time from monotonic time.

  • loader/DocumentLoadTiming.h: Turned into class. Made times monotonic.

(WebCore::DocumentLoadTiming::setUnloadEventStart):
(WebCore::DocumentLoadTiming::setUnloadEventEnd):
(WebCore::DocumentLoadTiming::setRedirectStart):
(WebCore::DocumentLoadTiming::setRedirectEnd):
(WebCore::DocumentLoadTiming::setFetchStart):
(WebCore::DocumentLoadTiming::setResponseEnd):
(WebCore::DocumentLoadTiming::setLoadEventStart):
(WebCore::DocumentLoadTiming::setLoadEventEnd):
(WebCore::DocumentLoadTiming::setHasSameOriginAsPreviousDocument):
(WebCore::DocumentLoadTiming::navigationStart):
(WebCore::DocumentLoadTiming::unloadEventStart):
(WebCore::DocumentLoadTiming::unloadEventEnd):
(WebCore::DocumentLoadTiming::redirectStart):
(WebCore::DocumentLoadTiming::redirectEnd):
(WebCore::DocumentLoadTiming::redirectCount):
(WebCore::DocumentLoadTiming::fetchStart):
(WebCore::DocumentLoadTiming::responseEnd):
(WebCore::DocumentLoadTiming::loadEventStart):
(WebCore::DocumentLoadTiming::loadEventEnd):
(WebCore::DocumentLoadTiming::hasCrossOriginRedirect):
(WebCore::DocumentLoadTiming::hasSameOriginAsPreviousDocument):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::willSendRequest): Moved logic to DocumentLoadTiming.
(WebCore::MainResourceLoader::didReceiveData): Use monotonic time.
(WebCore::MainResourceLoader::didFinishLoading): Ditto.
(WebCore::MainResourceLoader::load):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchLoadEvent):

  • page/DOMWindow.h: Removed dispatchTimedEvent. It doesn't really help in the new model.
  • page/PerformanceNavigation.cpp:

(WebCore::PerformanceNavigation::redirectCount):

  • page/PerformanceTiming.cpp: Removed skew correction code. This should never happen now.

(WebCore::PerformanceTiming::navigationStart):
(WebCore::PerformanceTiming::unloadEventStart):
(WebCore::PerformanceTiming::unloadEventEnd):
(WebCore::PerformanceTiming::redirectStart):
(WebCore::PerformanceTiming::redirectEnd):
(WebCore::PerformanceTiming::fetchStart):
(WebCore::PerformanceTiming::responseEnd):
(WebCore::PerformanceTiming::domLoading):
(WebCore::PerformanceTiming::domInteractive):
(WebCore::PerformanceTiming::domContentLoadedEventStart):
(WebCore::PerformanceTiming::domContentLoadedEventEnd):
(WebCore::PerformanceTiming::domComplete):
(WebCore::PerformanceTiming::loadEventStart):
(WebCore::PerformanceTiming::loadEventEnd):
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): Used for ResourceLoadTiming.
(WebCore::PerformanceTiming::monotonicTimeToIntegerMilliseconds): Used for DocumentTiming and DocumentLoadTiming.

  • page/PerformanceTiming.h:
  • platform/network/ResourceLoadTiming.cpp:

(WebCore::ResourceLoadTiming::convertResourceLoadTimeToDocumentTime):

  • platform/network/ResourceLoadTiming.h: Added helper function to convert to wall times. Added instructions for use.
12:40 PM Changeset in webkit [102695] by adamk@chromium.org
  • 3 edits in trunk/Source/WebCore

Reduce code duplication in Element::setAttribute methods
https://bugs.webkit.org/show_bug.cgi?id=74425

Reviewed by Ryosuke Niwa.

Two overloads of Element::setAttribute share almost all their code,
including tricky logic around updating the appropriate Attribute and
Attr objects and notifying the Inspector and MutationObservers.

This patch puts the common logic in a new setAttributeInternal method
which is called by the other two.

No new tests, refactoring only.

  • dom/Element.cpp:

(WebCore::Element::setAttribute):
(WebCore::Element::setAttributeInternal):

  • dom/Element.h:
11:49 AM Changeset in webkit [102694] by fpizlo@apple.com
  • 20 edits
    1 copy
    1 add in trunk/Source/JavaScriptCore

DFG should know exactly why recompilation was triggered
https://bugs.webkit.org/show_bug.cgi?id=74362

Reviewed by Oliver Hunt.

Each OSR exit is now individually counted, as well as counting the total number
of OSR exits that occurred in a code block. If recompilation is triggered, we
check to see if there are OSR exit sites that make up a sufficiently large
portion of the total OSR exits that occurred. For any such OSR exit sites, we
add a description of the site (bytecode index, kind) to a data structure in the
corresponding baseline CodeBlock. Then, when we recompile the code, we immediately
know which speculations would be unwise based on the fact that previous such
speculations proved to be fruitless.

This means 2% win on two of the SunSpider string tests, a 4% win on V8's deltablue,
and 5% on Kraken's imaging-darkroom. It is only a minor win in the averages, less
than 0.5%.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::addFrequentExitSite):
(JSC::CodeBlock::exitProfile):
(JSC::CodeBlock::reoptimize):
(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/DFGExitProfile.cpp: Added.

(JSC::DFG::ExitProfile::ExitProfile):
(JSC::DFG::ExitProfile::~ExitProfile):
(JSC::DFG::ExitProfile::add):
(JSC::DFG::QueryableExitProfile::QueryableExitProfile):
(JSC::DFG::QueryableExitProfile::~QueryableExitProfile):

  • bytecode/DFGExitProfile.h: Added.

(JSC::DFG::exitKindToString):
(JSC::DFG::exitKindIsCountable):
(JSC::DFG::FrequentExitSite::FrequentExitSite):
(JSC::DFG::FrequentExitSite::operator!):
(JSC::DFG::FrequentExitSite::operator==):
(JSC::DFG::FrequentExitSite::hash):
(JSC::DFG::FrequentExitSite::bytecodeOffset):
(JSC::DFG::FrequentExitSite::kind):
(JSC::DFG::FrequentExitSite::isHashTableDeletedValue):
(JSC::DFG::FrequentExitSiteHash::hash):
(JSC::DFG::FrequentExitSiteHash::equal):
(JSC::DFG::QueryableExitProfile::hasExitSite):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::baselineCodeBlockForOriginAndBaselineCodeBlock):
(JSC::DFG::AssemblyHelpers::baselineCodeBlockFor):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):

  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::considerAddingAsFrequentExitSite):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnByteArray):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayLength):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileInstanceOfForObject):
(JSC::DFG::SpeculativeJIT::compileSoftModulo):
(JSC::DFG::SpeculativeJIT::compileArithMul):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
11:43 AM Changeset in webkit [102693] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Enable CSS_FILTERS in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=74334

Reviewed by Kenneth Russell.

  • features.gypi:
11:39 AM Changeset in webkit [102692] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Cleanup of StringImpl::equal in r102631 post commit
https://bugs.webkit.org/show_bug.cgi?id=74421

Reviewed by Darin Adler.

  • wtf/text/AtomicString.h:

(WTF::operator==): Removed cast no longer needed.

  • wtf/text/StringImpl.h:

(WTF::equal): Changed template to several overloaded methods.

10:48 AM Changeset in webkit [102691] by beidson@apple.com
  • 3 edits in trunk/Source/WebCore

<http://webkit.org/b/74420> Disable deprecation warnings around more code where we
cannot easily switch away from the deprecated APIs.

Reviewed by Mark Rowe.

  • bindings/objc/DOMInternal.mm:
  • bridge/objc/objc_instance.mm:
10:34 AM Changeset in webkit [102690] by robert@webkit.org
  • 3 edits
    2 adds in trunk

CSS 2.1 failure: eof-002.htm fails
https://bugs.webkit.org/show_bug.cgi?id=74309

Reviewed by Dean Jackson.

Source/WebCore:

Test: css2.1/20110323/eof-002-expected.html

  • css/CSSGrammar.y: Treat EOF during a function expression with an open parenthesis as a close parenthesis.

LayoutTests:

  • css2.1/20110323/eof-002-expected.html: Added.
  • css2.1/20110323/eof-002.htm: Added.
10:23 AM Changeset in webkit [102689] by jamesr@google.com
  • 4 edits in branches/chromium/963/Source

Merge 102611 - [chromium] Remove assumption that empty surface is always at end of list
https://bugs.webkit.org/show_bug.cgi?id=74037

Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-12-12
Reviewed by James Robinson.

Source/WebCore:

Test case added to CCLayerTreeHostCommonTest.cpp, which reproduces
a crash reported in http://code.google.com/p/chromium/issues/detail?id=106734

This patch fixes the crash in a less risky way to be merged into
m17, but the root of the issue needs to be addressed in a
follow-up patch.

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::calculateDrawTransformsAndVisibilityInternal):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::TEST):

BUG=106734
TBR=jamesr@chromium.org
Review URL: http://codereview.chromium.org/8890079

10:20 AM Changeset in webkit [102688] by adamk@chromium.org
  • 4 edits in trunk/Source/WebCore

V8Proxy cleanup: replace custom logging methods with standard WebCore calls
https://bugs.webkit.org/show_bug.cgi?id=74220

Reviewed by Adam Barth.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

10:19 AM Changeset in webkit [102687] by Nate Chapin
  • 3 edits in branches/chromium/963/Source/WebKit/chromium

Revert 102683 - Revert 96912 - Always call setActive() in WebViewImpl::setFocus(),
not just when enabling focus.
https://bugs.webkit.org/show_bug.cgi?id=65220

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setFocus):

  • tests/FrameTestHelpers.cpp: Added, refactored out of WebFrameTest.cpp.

(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::loadFrame):
(WebKit::FrameTestHelpers::defaultWebFrameClient):
(WebKit::FrameTestHelpers::defaultWebViewClient):
(WebKit::FrameTestHelpers::createWebViewAndLoad):

  • tests/FrameTestHelpers.h: Added, refactored out of WebFrameTest.cpp.
  • tests/WebFrameTest.cpp:
  • tests/WebViewTest.cpp: Added.

TBR=Nate Chapin
Review URL: http://codereview.chromium.org/8895026

TBR=Nate Chapin
Review URL: http://codereview.chromium.org/8929009

10:12 AM Changeset in webkit [102686] by Martin Robinson
  • 1 edit in trunk/Tools/ChangeLog

Fix the 'Reviewed by' field in my last ChangeLog entry.

10:10 AM Changeset in webkit [102685] by Martin Robinson
  • 3 edits in trunk/Tools

build-jsc passing incorrect args to buildGtkProject
https://bugs.webkit.org/show_bug.cgi?id=74308

Reviewed by NOBODY.

  • Scripts/build-webkit: Instead of invoking buildGtkProject with

another argument about webkit2, unshift a --disable-webkit2
argument onto the buildArgs.

  • Scripts/webkitdirs.pm: Remove $enableWebKit2 arg. Only save autogen.sh

arguments for WebKit to prevent unnecessary reconfiguration when build-webkit
and build-jsc are run one after the other.

9:20 AM Changeset in webkit [102684] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] REGRESSION(102679): It broke Qt5-WK1 build
https://bugs.webkit.org/show_bug.cgi?id=74413

Unreviewed buildfix.

  • qmake/mkspecs/features/webcore.prf: Temporarily revert a part of r102679 until a proper fix.
9:13 AM Changeset in webkit [102683] by Nate Chapin
  • 4 edits in branches/chromium/963/Source/WebKit/chromium

Revert 96912 - Always call setActive() in WebViewImpl::setFocus(),
not just when enabling focus.
https://bugs.webkit.org/show_bug.cgi?id=65220

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • WebKit.gypi:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setFocus):

  • tests/FrameTestHelpers.cpp: Added, refactored out of WebFrameTest.cpp.

(WebKit::FrameTestHelpers::registerMockedURLLoad):
(WebKit::FrameTestHelpers::loadFrame):
(WebKit::FrameTestHelpers::defaultWebFrameClient):
(WebKit::FrameTestHelpers::defaultWebViewClient):
(WebKit::FrameTestHelpers::createWebViewAndLoad):

  • tests/FrameTestHelpers.h: Added, refactored out of WebFrameTest.cpp.
  • tests/WebFrameTest.cpp:
  • tests/WebViewTest.cpp: Added.

TBR=Nate Chapin
Review URL: http://codereview.chromium.org/8895026

8:31 AM Changeset in webkit [102682] by reed@google.com
  • 2 edits in trunk/LayoutTests

[skia] need new baselines when SKIA_TEXT is enabled
https://bugs.webkit.org/show_bug.cgi?id=74408

Reviewed by NOBODY. unreviewed, update expectations

  • platform/chromium/test_expectations.txt:
8:26 AM Changeset in webkit [102681] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

[Qt] Unreviewed speculativ debug buildfix after r102679.

  • QtTestBrowser/QtTestBrowser.pro:
  • QtTestBrowser/main.cpp:
7:47 AM Changeset in webkit [102680] by caio.oliveira@openbossa.org
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Make QtPageClient dispatch directly to WebView when possible
https://bugs.webkit.org/show_bug.cgi?id=74407

Reviewed by Simon Hausmann.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::~QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::pageDidRequestScroll):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewPrivate::didRelaunchProcess):
(QQuickWebViewPrivate::viewSize):
(QQuickWebViewPrivate::didReceiveMessageFromNavigatorQtObject):
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebView::QQuickWebView):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::QtPageClient):
(QtPageClient::setViewNeedsDisplay):
(QtPageClient::pageDidRequestScroll):
(QtPageClient::processDidCrash):
(QtPageClient::didRelaunchProcess):
(QtPageClient::didChangeContentsSize):
(QtPageClient::didChangeViewportProperties):
(QtPageClient::createPopupMenuProxy):
(QtPageClient::didReceiveMessageFromNavigatorQtObject):
(QtPageClient::viewSize):
(QtPageClient::isViewFocused):
(QtPageClient::isViewVisible):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::initialize):

  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
7:19 AM Changeset in webkit [102679] by vestbo@webkit.org
  • 17 edits in trunk

[Qt] Get rid of layering violations in includes

WebKit/qt/API and WebKit/qt/WebCoreSupport should not be included
in the webcore.prf, but rather in each target that specificly needs
headers in these location. We used to include them directly in webcore
since we had layering violations between WebCore and WebKit, but now
that they are gone there's no reason to do that.

Reviewed by Simon Hausmann.

7:13 AM Changeset in webkit [102678] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, skip 4 new failing tests on GTK.

  • platform/gtk/Skipped:
5:41 AM Changeset in webkit [102677] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[NRWT] It crashes intermittently when there are WebProcess crashes
https://bugs.webkit.org/show_bug.cgi?id=73451

Use self.poll() instead of self._proc.poll() because it checks if self._proc is None or not.

Patch by János Badics <dicska@gmail.com> on 2011-12-13
Reviewed by Kenneth Rohde Christiansen.

  • Scripts/webkitpy/layout_tests/port/server_process.py:

(ServerProcess._check_for_crash):

5:39 AM Changeset in webkit [102676] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Fix GTK+ API docs build.

  • gtk/generate-gtkdoc:

(get_webkit2_options): Ignore WebKitUIClient since it's private
API.

5:31 AM Changeset in webkit [102675] by Carlos Garcia Campos
  • 7 edits in trunk/Source/WebKit2

[GTK] Add support for javascript dialogs in WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=71362

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitUIClient.cpp:

(runJavaScriptAlert): Call webkitWebViewRunJavaScriptAlert().
(runJavaScriptConfirm): Call webkitWebViewRunJavaScriptConfirm().
(runJavaScriptPrompt): Call webkitWebViewRunJavaScriptPrompt().
(webkitUIClientAttachUIClientToPage): Add implementation for
runJavaScriptAlert, runJavaScriptConfirm and runJavaScriptPrompt
callbacks.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewCreateJavaScriptDialog): Helper function to create
javascript dialogs.
(webkitWebViewScriptAlert): Default implementation of signal
WebKitWebView::script-alert that shows a message dialog.
(webkitWebViewScriptConfirm): Default implementation of signal
WebKitWebView::script-confirm that shows a question dialog.
(webkitWebViewScriptPrompt): Default implementation of signal
WebKitWebView::script-prompt that shows a question dialog with a
text entry.
(webkit_web_view_class_init):
(webkitWebViewRunJavaScriptAlert): Emit WebKitWebView::script-alert.
(webkitWebViewRunJavaScriptConfirm): Emit WebKitWebView::script-confirm.
(webkitWebViewRunJavaScriptPrompt): Emit WebKitWebView::script-prompt.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(testWebViewJavaScriptDialogs):
(beforeAll):

  • UIProcess/API/gtk/webkit2marshal.list:
5:28 AM Changeset in webkit [102674] by kenneth@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt] Make sure that touch events result in the page view gaining focus

Reviewed by Simon Hausmann.

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::touchEvent): Force active focus.

  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h: Remove ::touchEvent override.
5:23 AM Changeset in webkit [102673] by Carlos Garcia Campos
  • 7 edits
    2 adds in trunk/Source/WebKit2

[GTK] Initial UI client implementation for WebKit2 GTK +API
https://bugs.webkit.org/show_bug.cgi?id=69753

Reviewed by Martin Robinson.

  • GNUmakefile.am: Add new files to compilation.
  • UIProcess/API/gtk/WebKitUIClient.cpp: Added.

(createNewPage): Call webkitWebViewCreateNewPage.
(showPage): Call webkitWebViewReadyToShowPage.
(closePage): Call webkitWebViewClosePage.
(webkitUIClientAttachUIClientToPage): Initialize UI client and
attach it to the given page.
(webkit_ui_client_init):
(webkit_ui_client_class_init):

  • UIProcess/API/gtk/WebKitUIClient.h: Added.
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewCreate): Default implementation of signal
WebKitWebView::create that simply returns NULL.
(webkitWebViewConstructed): Create the default UI client.
(webkitWebViewAccumulatorObjectHandled):
(webkit_web_view_class_init):
(webkitWebViewCreateNewPage): Emit create signal.
(webkitWebViewReadyToShowPage): Emit ready-to-show signal.
(webkitWebViewClosePage): Emit close signal.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(testWebViewCreateReadyClose):
(beforeAll):

  • UIProcess/API/gtk/webkit2marshal.list:
5:13 AM Changeset in webkit [102672] by Csaba Osztrogonác
  • 1 edit
    3 adds in trunk/LayoutTests

[Qt] Add Qt platform specific expected result after r102602.

Unreviewed gardening.

Patch by Oliver Varga <voliver@inf.u-szeged.hu> on 2011-12-13

  • platform/qt/http/tests/cache/cancel-during-revalidation-succeeded-expected.png: Added.
  • platform/qt/http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
4:45 AM Changeset in webkit [102671] by vsevik@chromium.org
  • 18 edits
    2 adds in trunk

Web Inspector: Add scripts navigator sidebar to scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=73086

Reviewed by Pavel Feldman.

Source/WebCore:

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Images/domain.png: Added.
  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):

  • inspector/front-end/ScriptsNavigator.js: Added.
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype._removeSourceFrame):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
(WebInspector.ScriptsPanel.prototype._sourceFrameLoaded):
(WebInspector.ScriptsPanel.prototype._updateExecutionLine):
(WebInspector.ScriptsPanel.prototype._scriptSelectedInNavigator):
(WebInspector.ScriptsPanel.prototype._createDebugToolbar):

  • inspector/front-end/Settings.js:
  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.appendTab):
(WebInspector.TabbedPane.prototype.selectTab):
(WebInspector.TabbedPane.prototype.highlightLine):
(WebInspector.TabbedPane.prototype.elementsToRestoreScrollPositionsFor):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype.get domain):
(WebInspector.UISourceCode.prototype.get folderName):
(WebInspector.UISourceCode.prototype.get displayName):
(WebInspector.UISourceCode.prototype._parseURL):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.css:

(.tabbed-pane):
(.tabbed-pane-content):

  • inspector/front-end/inspector.html:
  • inspector/front-end/networkPanel.css:
  • inspector/front-end/scriptsPanel.css:

(#scripts-navigator-resizer-widget):
(.scripts-navigator-domain-tree-item .icon):
(.scripts-navigator-folder-tree-item .icon):
(.scripts-navigator-script-tree-item .icon):
(.scripts.panel .navigator):
(#scripts-navigator-tabbed-pane .tabbed-pane-header):
(#scripts-navigator-tabbed-pane .tabbed-pane-content):
(.scripts.panel .navigator li):
(.scripts.panel .navigator :focus li.selected):
(.scripts.panel .navigator li.selected .selection):
(.scripts.panel .navigator :focus li.selected .selection):
(.scripts.panel .navigator .icon):
(.scripts.panel .base-navigator-tree-element-title):

  • inspector/front-end/treeoutline.js:

(TreeOutline):
(TreeOutline.prototype.appendChild):

LayoutTests:

  • inspector/debugger/scripts-panel.html:
  • inspector/debugger/scripts-sorting.html:
4:35 AM Changeset in webkit [102670] by caio.oliveira@openbossa.org
  • 6 edits in trunk/Source/WebKit2

[Qt][WK2] Move load & navigation related functions out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74395

Reviewed by Simon Hausmann.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::_q_onVisibleChanged):
(QQuickWebViewPrivate::updateViewportSize):
(QQuickWebViewPrivate::computeViewportConstraints):
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebViewPrivate::webPageProxy):
(QQuickWebView::load):
(QQuickWebView::goBack):
(QQuickWebView::goForward):
(QQuickWebView::stop):
(QQuickWebView::reload):
(QQuickWebView::url):
(QQuickWebView::canGoBack):
(QQuickWebView::canGoForward):
(QQuickWebView::loading):
(QQuickWebView::canReload):
(QQuickWebView::title):
(QQuickWebView::loadHtml):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::didReceiveMessageFromNavigatorQtObject):

  • UIProcess/qt/QtWebPageProxy.h:
4:03 AM Changeset in webkit [102669] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

CollectionCache: Remove unused copy constructor and make it noncopyable.
<http://webkit.org/b/74378>

Reviewed by Simon Hausmann.

  • html/CollectionCache.cpp:
  • html/CollectionCache.h:
2:37 AM Changeset in webkit [102668] by bashi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update. Changed expectation of
editing/spelling/grammer-paste.html.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • platform/chromium/test_expectations.txt:
2:29 AM Changeset in webkit [102667] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r102640.

  • GNUmakefile.am: Add DownloadProxy sources again.
2:24 AM Changeset in webkit [102666] by caio.oliveira@openbossa.org
  • 8 edits
    2 moves in trunk/Source/WebKit2

[Qt][WK2] Move undo & edit command PageClient callbacks into QtWebUndoController
https://bugs.webkit.org/show_bug.cgi?id=74364

Reviewed by Simon Hausmann.

The four callbacks in PageClient related to Undo depend only on the QUndoStack. So we
move their handling to a QtWebUndoController (owned by QQuickWebViewPrivate). This also
make QtWebUndoCommand an implementation detail.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::registerEditCommand):
(QtPageClient::clearAllEditCommands):
(QtPageClient::canUndoRedo):
(QtPageClient::executeUndoRedo):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::initialize):

  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/QtWebPageProxy.h:
  • UIProcess/qt/QtWebUndoController.cpp: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoCommand.cpp.

(QtWebUndoCommand::inUndoRedo):
(QtWebUndoCommand::QtWebUndoCommand):
(QtWebUndoCommand::~QtWebUndoCommand):
(QtWebUndoCommand::redo):
(QtWebUndoCommand::undo):
(QtWebUndoController::QtWebUndoController):
(QtWebUndoController::registerEditCommand):
(QtWebUndoController::clearAllEditCommands):
(QtWebUndoController::canUndoRedo):
(QtWebUndoController::executeUndoRedo):

  • UIProcess/qt/QtWebUndoController.h: Renamed from Source/WebKit2/UIProcess/qt/QtWebUndoCommand.h.
2:14 AM Changeset in webkit [102665] by jarred@sencha.com
  • 3 edits in trunk/Source/WebCore

XHR should use m_responseTypeCode internally to be consistent with WebKit coding style
https://bugs.webkit.org/show_bug.cgi?id=74330

Reviewed by Alexey Proskuryakov.

No new tests needed, no behavioral changes.

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseText):
(WebCore::XMLHttpRequest::responseXML):
(WebCore::XMLHttpRequest::responseBlob):
(WebCore::XMLHttpRequest::didReceiveData):

  • xml/XMLHttpRequest.h:

(WebCore::XMLHttpRequest::asBlob):

2:05 AM Changeset in webkit [102664] by bashi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • platform/chromium/test_expectations.txt:
2:04 AM Changeset in webkit [102663] by haraken@chromium.org
  • 6 edits
    1 add in trunk/Source/WebCore

Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

  • Overview: Using the [Supplemental] IDL, this patch moves the attribute

declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

  • This patch changes the build flow of WebCore.gyp as follows:

Previous build flow:

foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl;
generate-bindings.pl reads $idl;
generate-bindings.pl generates .h and .cpp files for $idl;

}

New build flow (See the discussions in bug 72138 for more details):

resolve-supplemental.pl depends on all IDL files;
resolve-supplemental.pl reads all IDL files;
resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
resolve-supplemental.pl outputs supplemental_dependency.tmp;
foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
generate-bindings.pl reads $idl;
generate-bindings.pl reads supplemental_dependency.tmp;
generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;

}

  • This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL

will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

  • DerivedSources.make
  • DerivedSources.pri
  • GNUmakefile.am
  • PlatformBlackBerry.cmake
  • UseJSC.cmake
  • UseV8.cmake
  • WebCore.vcproj/MigrateScripts
  • WebCore.vcproj/WebCore.vcproj
  • bindings/gobject/GNUmakefile.am
  • WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

DOMWindowWebAudio.idl:

interface [

Supplemental=DOMWindow

] DOMWindowWebAudio {

attribute attr1;
attribute attr2;

};

DOMWindow.idl:

interface [
] DOMWindow {

attribute [Supplemented] attr1; This line will be removed after all build scripts support the [Su IDL
attribute [Supplemented] attr2;
This line will be removed after all build scripts support the [Su IDL.
attribute attr3;
attribute attr4;

};

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

  • If a given build script supports the [Supplemental] IDL, generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
  • Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL as normal attributes and instead ignores all attributes with the [Supplemental] IDL (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

  • WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp),
which are described at the first column of each line in the input file.
If the file name is a "/cygdrive/c/..."-style path, it is converted to a "C:\cygwin\..."-style
path by the cygpath command.

  • WebCore.gypi: Added DOMWindowWebAudio.idl.
  • bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not

support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead
uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and
instead uses the [Supplemental] IDL.
Added the --additionalIdlFilesList option to specify the IDL files that are not listed in
supplemental-dependency.tmp but should generate .h and .cpp files.

  • page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes.

As I described above, the [Supplemented] IDL will be removed after all platforms support
the [Supplemental] IDL.

  • webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL.

The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.

1:33 AM Changeset in webkit [102662] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk/LayoutTests

Asynchronous text checking should check the grammar.
https://bugs.webkit.org/show_bug.cgi?id=56368

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-13
Reviewed by Hajime Morita.

From r102553, we had capability of grammar checking for asynchronous text checking.
This patch adds a test for it.

  • editing/spelling/grammar-paste-expected.txt: Added.
  • editing/spelling/grammar-paste.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac-leopard/Skipped:
  • platform/qt/Skipped:
12:17 AM Changeset in webkit [102661] by bashi@chromium.org
  • 2 edits in trunk/Tools

Reviewed, removed one of my email addresses to use the apprpriate one.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-13

  • Scripts/webkitpy/common/config/committers.py:
12:17 AM Changeset in webkit [102660] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

RenderTheme should have a function for disabled text color adjustment
https://bugs.webkit.org/show_bug.cgi?id=74143

Change disabledTextColor to private method.

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-13
Reviewed by Kent Tamura.

No new tests / existing tests cover this change.

  • rendering/RenderThemeChromiumMac.h: Change disabledTextColor to private.
  • rendering/RenderThemeChromiumSkia.h: Change disabledTextColor to private.
12:02 AM Changeset in webkit [102659] by bashi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update.
Clean out passing tests from test_expectations.txt.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-12

  • platform/chromium/test_expectations.txt:

Dec 12, 2011:

10:37 PM Changeset in webkit [102658] by tkent@chromium.org
  • 7 edits in branches/chromium/963

Merge 101998 - "Raw" pseudo selectors don't match if immediately after a child or descendant combinator
https://bugs.webkit.org/show_bug.cgi?id=72933

Source/WebCore:

Remove shortcut that prevents universal selectors from being created before shadow pseudo-elements.

Reviewed by Antti Koivisto.

  • css/CSSParser.cpp:

(WebCore::CSSParser::updateSpecifiersWithElementName):

LayoutTests:

Add tests cases for "raw" shadow pseudo-element selectors with various combinators.
Also add cases with explicit universal '*' selector.

Reviewed by Antti Koivisto.

  • fast/css/css-selector-text-expected.txt:
  • fast/css/css-selector-text.html:
  • fast/css/css-set-selector-text-expected.txt:
  • fast/css/css-set-selector-text.html:
  • fast/css/unknown-pseudo-element-matching-expected.txt:
  • fast/css/unknown-pseudo-element-matching.html:

TBR=rolandsteiner@chromium.org
BUG=97744
Review URL: http://codereview.chromium.org/8931002

9:11 PM Changeset in webkit [102657] by dbates@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r102656.
http://trac.webkit.org/changeset/102656
https://bugs.webkit.org/show_bug.cgi?id=74313

Broke the Mac, Windows and WinCairo builds. We need to look
into this patch some more.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

8:07 PM Changeset in webkit [102656] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Implement the JavaScriptCore bindings for eventListenerHandlerLocation
https://bugs.webkit.org/show_bug.cgi?id=74313

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-12
Reviewed by Geoffrey Garen.

Open any page in Web Inspector and look at the event listeners. They should now
link to the script which created them.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

7:48 PM Changeset in webkit [102655] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

RenderTheme should have a function for disabled text color adjustment
https://bugs.webkit.org/show_bug.cgi?id=74143

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-12
Reviewed by Kent Tamura.

No new tests / existing tests cover this change.

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::adjustInnerTextStyle): Use RenderTheme::disabledTextColor instead of PLATFORM wraped static function.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::disabledTextColor): Moved from RenderTextControl.cpp. This method implements for non-Chromium color.

  • rendering/RenderTheme.h: Add new virtual method disabledTextColor.
  • rendering/RenderThemeChromiumMac.h: Implementation of RenderTheme::disabledTextColor for Chrimium Mac.
  • rendering/RenderThemeChromiumSkia.h: Implementation of RenderTheme::disabledTextColor for Chrimium.
7:28 PM Changeset in webkit [102654] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update. Actually skip
plugins/netscape-plugin-page-cache-works.html as it looks like its
timeout is causing other tests to fail.

  • platform/chromium/test_expectations.txt:
7:13 PM Changeset in webkit [102653] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r102648.
http://trac.webkit.org/changeset/102648
https://bugs.webkit.org/show_bug.cgi?id=74313

Broke the Snow Leopard and Windows builds

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

7:08 PM Changeset in webkit [102652] by kling@webkit.org
  • 13 edits in trunk/Source

Resizing Cappuccino is very laggy on WebKit since Safari 5.1
<http://webkit.org/b/71354> and <rdar://problem/10565998>

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.exp.in: Export FloatPoint(const NSPoint&)

Source/WebKit2:

On Mac, we already cache the window rect through the WindowAndViewFramesChanged
message, so simply return that in WebChromeClient::windowRect() instead of
sending a synchronous query to the UIProcess.

Changed WindowAndViewFramesChanged to pass FloatRect/FloatPoint rather than
IntRect/IntPoint to match the ChromeClient::windowRect() return type.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateWindowAndViewFrames]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::setWindowFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::windowAndViewFramesChanged):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::windowFrameInScreenCoordinates):
(WebKit::WebPage::viewFrameInWindowCoordinates):
(WebKit::WebPage::accessibilityPosition):

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

(-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):

6:56 PM Changeset in webkit [102651] by jarred@sencha.com
  • 2 edits in trunk/Source/WebCore

[Qt] QTKIT-based video support must target OS X 10.5 or higher
https://bugs.webkit.org/show_bug.cgi?id=74294

WebCore on OS X Lion fails to build when QTKIT video support is enabled, unless a
deployment target of 10.5+ is specified explicitly.

Reviewed by Noam Rosenthal.

No new tests as this is a build issue.

  • Target.pri:
6:36 PM Changeset in webkit [102650] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Implement CSS text-decoration property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74258

Reviewed by Andreas Kling.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyTextDecoration::applyValue):
(WebCore::ApplyPropertyTextDecoration::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

6:32 PM Changeset in webkit [102649] by enne@google.com
  • 3 edits
    6 adds in trunk

iframe fails to scroll in composited page
https://bugs.webkit.org/show_bug.cgi?id=72682

Reviewed by Simon Fraser.

Source/WebCore:

FrameView::scrollContentsSlowPath only was catching the case where a
child iframe had a composited parent. Now detect if the child iframe
has any composited ancestor.

Test: compositing/iframes/scroll-grandchild-iframe.html

  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsSlowPath):

LayoutTests:

  • compositing/iframes/resources/scrollgrandchild-grandparent.html: Added.
  • compositing/iframes/resources/scrollgrandchild-inner.html: Added.
  • compositing/iframes/resources/scrollgrandchild-parent.html: Added.
  • compositing/iframes/scroll-grandchild-iframe-expected.png: Added.
  • compositing/iframes/scroll-grandchild-iframe-expected.txt: Added.
  • compositing/iframes/scroll-grandchild-iframe.html: Added.
6:23 PM Changeset in webkit [102648] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Implement the JavaScriptCore bindings for eventListenerHandlerLocation
https://bugs.webkit.org/show_bug.cgi?id=74313

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-12
Reviewed by Geoffrey Garen.

Open any page in Web Inspector and look at the event listeners. They should now
link to the script which created them.

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerLocation):

5:45 PM Changeset in webkit [102647] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Chromium test expectations update to get the bots green.

  • platform/chromium/test_expectations.txt:
5:34 PM Changeset in webkit [102646] by arv@chromium.org
  • 6 edits
    2 deletes in trunk/Source/WebCore

[V8] CodeGeneratorV8.pm does not correctly work with inherited HasIndexGetter
https://bugs.webkit.org/show_bug.cgi?id=74027

Reviewed by Adam Barth.

Instead of having to write a custom indexer when the interface has an inherited indexer
we get the signature from the super interface.

Tested by existing tests.

  • Target.pri: Remove V8DOMSettableTokenListCustom.cpp and V8WebKitCSSFilterValueCustom.cpp.
  • UseV8.cmake: Ditto.
  • WebCore.gypi: Ditto.
  • bindings/scripts/CodeGenerator.pm:

(FindSuperMethod): Returns the first matching function in one of the ancestor interfaces.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementationIndexer): If the current interface has no indexer try to find an

indexer in one of the super interfaces.

(GenerateImplementationNamedPropertyGetter): Ditto for named property getter.

  • bindings/v8/custom/V8DOMSettableTokenListCustom.cpp: Removed.
  • bindings/v8/custom/V8WebKitCSSFilterValueCustom.cpp: Removed.
5:14 PM Changeset in webkit [102645] by rniwa@webkit.org
  • 4 edits in trunk/LayoutTests

Mac rebaselines after r102612 and r102538.

  • platform/mac-snowleopard/fast/text/hyphenate-limit-lines-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
5:05 PM Changeset in webkit [102644] by Simon Fraser
  • 12 edits
    2 copies in trunk/Source/WebCore

Make it possible to substitute a different CALayer implementation for the main root layer
https://bugs.webkit.org/show_bug.cgi?id=74369

Reviewed by Anders Carlsson.

Some platforms may wish to have the main root layer (which corresponds with
the main frame's RenderView's layer) implemented by a custom platform layer,
for example to contain a cache of tiles.

Make this possible on Mac by adding a new method to GraphicsLayerClient(),
and implementing it in RenderLayerBacking. This new behavior is not yet enabled.

Also clean up some WebLayer/WebTiledLayer code.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::shouldUseTileCache): New client method that indicates that the GraphicsLayer
should host a tile cache layer instead of a normal layer.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::GraphicsLayerCA): Ask the client, if any, whether to create a tile cache layer.

  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm: NSClassFromString(@"CATransformLayer") was for Leopard;

we can just use the classname now. Handle LayerTypeTileCacheLayer.
(PlatformCALayer::PlatformCALayer):

  • platform/graphics/ca/mac/WebTileCacheLayer.h: Copied from Source/WebCore/platform/graphics/mac/WebLayer.h.
  • platform/graphics/ca/mac/WebTileCacheLayer.mm: Copied from Source/WebCore/platform/graphics/mac/WebLayer.h.
  • platform/graphics/mac/WebLayer.h: Remove the setLayerNeedsDisplayInRect() hackery.
  • platform/graphics/mac/WebLayer.mm: setLayerNeedsDisplayInRect() tried to share code between WebLayer and WebTiledLayer

by using Obj-C runtime methods to find the superclass. This causes infinite recursion if Web[Tiled]Layer is subclassed,
so remove it.
(-[WebLayer setNeedsDisplayInRect:]): Code moved here from setLayerNeedsDisplayInRect.

  • platform/graphics/mac/WebTiledLayer.mm:

(-[WebTiledLayer setNeedsDisplayInRect:]): Code copied here from setLayerNeedsDisplayInRect.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking): Find out, and cache if we're the main frame's layer.
(WebCore::RenderLayerBacking::shouldUseTileCache): Return m_usingTiledCacheLayer, which is always false for now.
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Use m_isMainFrameRenderViewLayer.
(WebCore::RenderLayerBacking::paintingGoesToWindow): The tile cache layer needs to paint itself.

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.h: m_compositeForFixedPosition was unused.
4:59 PM Changeset in webkit [102643] by rniwa@webkit.org
  • 7 edits in trunk/Source/WebCore

REGRESSION(r102357): respondToUnappliedEditing exits early for CreateLinkCommand
https://bugs.webkit.org/show_bug.cgi?id=74356

Reviewed by Enrica Casucci.

The problem was that isCreateLinkCommand was called on EditCommandComposition by respondToUnappliedEditing.
Fixed the bug by propagating the value of isCreteLinkCommand from CompositeEditCommand to
EditCommandComposition via wasCreateLinkCommand.

Also move isCreateLinkCommand from EditCommand to CompositeEditCommand to prevent this mistake in the future.

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::create):
(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::CompositeEditCommand::ensureComposition):
(WebCore::CompositeEditCommand::isCreateLinkCommand):

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::wasCreateLinkCommand):

  • editing/SpellingCorrectionController.cpp:

(WebCore::SpellingCorrectionController::respondToUnappliedEditing):

  • editing/SpellingCorrectionController.h:
4:58 PM Changeset in webkit [102642] by Lucas Forschler
  • 5 edits in branches/safari-534.53-branch/Source

Versioning.

4:56 PM Changeset in webkit [102641] by tony@chromium.org
  • 4 edits in trunk

[CSSRegions]Revert RenderObject::style() to its state before region styling
https://bugs.webkit.org/show_bug.cgi?id=74315

Patch by Mihnea Ovidenie <mihnea@adobe.com> on 2011-12-12
Reviewed by Tony Chang.

Source/WebCore:

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

  • platform/mac-snowleopard/Skipped:
4:52 PM Changeset in webkit [102640] by jberlin@webkit.org
  • 12 edits
    1 copy
    2 adds in trunk/Source/WebKit2

Add EventDispatcher class to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=74344

Patch by Anders Carlsson <andersca@apple.com> on 2011-12-12
Reviewed by Sam Weinig.

The EventDispatcher is a singleton which will be in charge of dispatching events to WebPage objects.

  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.am:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:

Add new files.

  • Platform/CoreIPC/MessageID.h:

Add EventDispatcher.

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
(WebKit::WebConnectionToUIProcess::invalidate):

  • WebProcess/WebConnectionToUIProcess.h:

WebConnectionToUIProcess doesn't need to be a QueueClient. Also, move the call to open into WebProcess since
we don't want to add queue clients after the connection has been opened.

  • WebProcess/WebPage/EventDispatcher.cpp: Added.

(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::~EventDispatcher):
(WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
(WebKit::EventDispatcher::wheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/EventDispatcher.messages.in: Added.

Add new stub files.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize):
Add the event dispatcher as a queue client.

  • WebProcess/WebProcess.h:

Add an EventDispatcher member variable to the web process.

4:48 PM Changeset in webkit [102639] by adamk@chromium.org
  • 3 edits
    2 adds in trunk

Don't crash in StyleAttributeMutationScope if the style declaration's element has been GCed
https://bugs.webkit.org/show_bug.cgi?id=74321

Reviewed by Ryosuke Niwa.

Source/WebCore:

In r101101, Rafael Weinstein added code to CSSMutableStyleDeclaration.cpp
which depended on isInlineStyleDeclaration returning true iff the
element it pointed to was non-null (it will be nulled-out if the
element is garbage collected).

Then, in r101172, Andreas Kling changed the semantics so that
isInlineStyleDeclaration only described the type of the declaration,
not the state of the related element.

This change updates Rafael's code with an explicit check that the
element is still alive.

Test: fast/dom/css-inline-style-declaration-crash.html

  • css/CSSMutableStyleDeclaration.cpp:

LayoutTests:

  • fast/dom/css-inline-style-declaration-crash-expected.txt: Added.
  • fast/dom/css-inline-style-declaration-crash.html: Added.
4:46 PM Changeset in webkit [102638] by Lucas Forschler
  • 1 copy in tags/Safari-534.53.9

New tag.

4:14 PM Changeset in webkit [102637] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

4:10 PM Changeset in webkit [102636] by Lucas Forschler
  • 1 copy in tags/Safari-535.13

New Tag.

4:09 PM Changeset in webkit [102635] by bfulgham@webkit.org
  • 2 edits in trunk/LayoutTests

[WinCairo] Unreviewed update to Skipped list to get bot green.

  • platform/wincairo/Skipped: Exclude current failures (and turn on a few new successes).
3:54 PM Changeset in webkit [102634] by Chris Fleizach
  • 6 edits
    2 adds in trunk

AX: aria-hidden inheritance broken when applying to some descendants
https://bugs.webkit.org/show_bug.cgi?id=73940

Reviewed by Darin Adler.

Source/WebCore:

When adding children, we were not updating the children cache for direct AX descendants.
This meant that toggling aria-hidden could result in a stale cache where elements would not be reachable.

Making this fix also exposed a problem in AccessibilityTable where the AccessibilityHeaderObject was not
being managed correctly as a mock element.

Test: platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::addChildren):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::clearChildren):
(WebCore::AccessibilityTable::headerContainer):

  • accessibility/AccessibilityTable.h:

LayoutTests:

  • platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements-expected.txt: Added.
  • platform/mac/accessibility/aria-hidden-changes-for-non-ignored-elements.html: Added.
3:51 PM Changeset in webkit [102633] by weinig@apple.com
  • 10 edits in trunk/Source/WebKit2

Prefix internal methods in Objective-C API files with an underscore
https://bugs.webkit.org/show_bug.cgi?id=74363

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(-[WKBrowsingContextController _pageRef]):
(-[WKBrowsingContextController loadRequest:]):
(-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:]):
(-[WKBrowsingContextController stopLoading]):
(-[WKBrowsingContextController reload]):
(-[WKBrowsingContextController reloadFromOrigin]):
(-[WKBrowsingContextController goForward]):
(-[WKBrowsingContextController canGoForward]):
(-[WKBrowsingContextController goBack]):
(-[WKBrowsingContextController canGoBack]):
(-[WKBrowsingContextController activeURL]):
(-[WKBrowsingContextController provisionalURL]):
(-[WKBrowsingContextController committedURL]):
(-[WKBrowsingContextController title]):
(-[WKBrowsingContextController textZoom]):
(-[WKBrowsingContextController setTextZoom:]):
(-[WKBrowsingContextController pageZoom]):
(-[WKBrowsingContextController setPageZoom:]):
(-[WKBrowsingContextController setPaginationMode:]):
(-[WKBrowsingContextController paginationMode]):
(-[WKBrowsingContextController setPageLength:]):
(-[WKBrowsingContextController pageLength]):
(-[WKBrowsingContextController setGapBetweenPages:]):
(-[WKBrowsingContextController gapBetweenPages]):
(-[WKBrowsingContextController pageCount]):
(-[WKBrowsingContextController _initWithPageRef:]):

  • UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
  • UIProcess/API/mac/WKBrowsingContextGroup.mm:

(-[WKBrowsingContextGroup allowsJavaScript]):
(-[WKBrowsingContextGroup setAllowsJavaScript:]):
(-[WKBrowsingContextGroup allowsPlugIns]):
(-[WKBrowsingContextGroup setAllowsPlugIns:]):
(-[WKBrowsingContextGroup _pageGroupRef]):

  • UIProcess/API/mac/WKBrowsingContextGroupInternal.h:
  • UIProcess/API/mac/WKConnection.mm:

(-[WKConnection _initWithConnectionRef:]):

  • UIProcess/API/mac/WKConnectionInternal.h:
  • UIProcess/API/mac/WKProcessGroup.mm:

(didCreateConnection):
(-[WKProcessGroup _contextRef]):

  • UIProcess/API/mac/WKProcessGroupInternal.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView initWithFrame:processGroup:browsingContextGroup:]):
(-[WKView browsingContextController]):

3:51 PM Changeset in webkit [102632] by commit-queue@webkit.org
  • 4 edits
    1 move
    1 add
    1 delete in trunk

When the mouse is dragged out of an :active element, it should lose :hover.
https://bugs.webkit.org/show_bug.cgi?id=57206

Patch by Jeremy Apthorp <jeremya@chromium.org> on 2011-12-12
Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/css/hover-active-drag.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseMoveEvent): Don't mark mouse-drag hit tests read-only, since they no longer are.
(WebCore::EventHandler::dragSourceEndedAt): Send a hit test request when the mouse goes up after a drag, so
RenderLayer has a chance to update the hover/active status.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateHoverActiveState): Only allow the :active state to change on mouse down or mouse up.

LayoutTests:

  • fast/css/hover-active-drag-expected.txt: Added.
  • fast/css/hover-active-drag.html: Added.
  • platform/mac/fast/css/hover-active-drag-expected.txt: Removed.
  • platform/chromium/fast/css/hover-active-drag-expected.txt: Removed.
3:21 PM Changeset in webkit [102631] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Eliminate Duplicate word at a time equal code in StringImpl.cpp and StringHash.h
https://bugs.webkit.org/show_bug.cgi?id=73622

Reviewed by Oliver Hunt.

Moved equal(charType1 *, charType2, unsigned) template methods
from static StringImpl.cpp to StringImpl.h and then replaced the
processor specific character comparison code in StringHash::equal
with calls to these methods.

This change is worth 3% on SunSpider string-unpack-code as reported
by the SunSpider command line harness. No other tests appear to
have measurable performance changes.

  • wtf/text/AtomicString.h:

(WTF::operator==):

  • wtf/text/StringHash.h:

(WTF::StringHash::equal):

  • wtf/text/StringImpl.cpp:
  • wtf/text/StringImpl.h:

(WTF::LChar):
(WTF::UChar):
(WTF::equal):

3:17 PM Changeset in webkit [102630] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium expectations update; skip
plugins/netscape-plugin-page-cache-works.html.

  • platform/chromium/test_expectations.txt:
3:08 PM Changeset in webkit [102629] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ARMv7 version of DFG soft modulo does register allocation inside of control flow
https://bugs.webkit.org/show_bug.cgi?id=74354

Reviewed by Gavin Barraclough.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileSoftModulo):

3:05 PM Changeset in webkit [102628] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed Windows build fix after http://trac.webkit.org/changeset/102619 .
Remove OVERRIDE specifier from virtual destructor.

  • html/HTMLPlugInImageElement.h:
2:53 PM Changeset in webkit [102627] by rniwa@webkit.org
  • 13 edits in trunk/Source

WebKit code shouldn't be calling applyCommand directly
https://bugs.webkit.org/show_bug.cgi?id=74337

Reviewed by Darin Adler.

Source/WebCore:

Make WebKit-layer code call Editor::replaceSelectionWithFragment and Editor::replaceSelectionWithText
instead of manually creating and applying ReplaceSelectionCommand.

The only behavioral difference is that new code will end up checking for spell checks. However, this
difference appears to be unintentional since the code predates http://trac.webkit.org/changeset/73886,
which introduced an invocation of spellcheck code.

Unfortunately no tests since there doesn't seem to be anyway to test this change.

  • WebCore.exp.in:
  • editing/EditCommand.cpp:

(WebCore::applyCommand):

  • editing/EditCommand.h:
  • editing/Editor.h:

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::replaceSelection):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_replace_selection):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::replaceSelectionWithText):

2:49 PM Changeset in webkit [102626] by abarth@webkit.org
  • 12 edits in trunk/LayoutTests

Update html5lib test data to latest version
https://bugs.webkit.org/show_bug.cgi?id=74343

Reviewed by Eric Seidel.

This patch imports the latest version of the "dat" files from
http://code.google.com/p/html5lib/

  • html5lib/resources/pending-spec-changes.dat:
  • html5lib/resources/plain-text-unsafe.dat:
  • html5lib/resources/tables01.dat:
  • html5lib/resources/tests16.dat:
  • html5lib/resources/tests19.dat:
  • html5lib/resources/tests26.dat:
  • html5lib/resources/tests_innerHTML_1.dat:
  • html5lib/resources/webkit01.dat:
  • html5lib/runner-expected.txt:
  • html5lib/webkit-resumer-expected.txt:
  • platform/chromium/html5lib/runner-expected.txt:
2:41 PM Changeset in webkit [102625] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove unused getter on WKConnection.

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKConnection.mm:
2:33 PM Changeset in webkit [102624] by commit-queue@webkit.org
  • 4 edits in trunk

Simplify autotools configure.ac
https://bugs.webkit.org/show_bug.cgi?id=74312

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-12
Reviewed by Martin Robinson.

.:

  • configure.ac: Don't AC_DEFINE so many things. Many of the

defines were stale (ENABLE_YARR, ENABLE_JIT_OPTIMIZE_CALL, etc),
and with Platform.h we don't need to make an explicit decision
here. If the user does pass --enable-jit or --disable-jit, effect
that choice via setting JSC_CPPFLAGS.

Source/JavaScriptCore:

  • GNUmakefile.am: Add JSC_CPPFLAGS to javascriptcore_cppflags.
2:13 PM Changeset in webkit [102623] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG GetByVal CSE incorrectly assumes that a non-matching PutByVal cannot clobber
https://bugs.webkit.org/show_bug.cgi?id=74329

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getByValLoadElimination):

LayoutTests:

  • fast/js/dfg-get-by-val-clobber-expected.txt: Added.
  • fast/js/dfg-get-by-val-clobber.html: Added.
  • fast/js/script-tests/dfg-get-by-val-clobber.js: Added.

(doAccesses):

2:13 PM Changeset in webkit [102622] by abarth@webkit.org
  • 5 edits
    1 delete in trunk/Source/WebCore

Remove platform/audio/fftw
https://bugs.webkit.org/show_bug.cgi?id=73163

Reviewed by Eric Seidel.

The FFTW library is GPL, not LGPL, like WebKit. This patch removes the
integration with the library so folks who use WebAudio don't
accidentially violate the GPL by linking in FFTW.

  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • platform/audio/FFTFrame.h:
  • platform/audio/FFTFrameStub.cpp:
  • platform/audio/fftw: Removed.
  • platform/audio/fftw/FFTFrameFFTW.cpp: Removed.
2:09 PM Changeset in webkit [102621] by kbr@google.com
  • 2 edits in trunk/Source/WebCore

COMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
https://bugs.webkit.org/show_bug.cgi?id=74327

Unreviewed build fix. True fix should follow under above bug.

  • css/CSSStyleSelector.cpp:
2:04 PM Changeset in webkit [102620] by dgrogan@chromium.org
  • 7 edits in trunk/Source

Fix compilation error when !ENABLE(WORKERS)
https://bugs.webkit.org/show_bug.cgi?id=74029

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • storage/IDBFactory.cpp:

(WebCore::IDBFactory::open): add #if ENABLE(WORKERS) guard

Source/WebKit/chromium:

  • features.gypi:
  • src/IDBFactoryBackendProxy.cpp:

(WebKit::IDBFactoryBackendProxy::openFromWorker):

  • src/PlatformSupport.cpp:
  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgent::disconnectEventAsText):

  • src/WebWorkerRunLoop.cpp:
2:00 PM Changeset in webkit [102619] by beidson@apple.com
  • 20 edits
    3 adds in trunk

Page cache should support pages with plugins.
<rdar://problem/5190122> and https://bugs.webkit.org/show_bug.cgi?id=13634

Source/WebCore:

Reviewed by Anders Carlsson.

By making plugin elements renderers go display:none when entering the page cache,
we destroy the plug-in in a cross platform way as well as handle invalidating script
objects created by that plugin.

By restoring the original style when leaving the page cache and forcing a style recalc
on the plugin element, the plugin is gracefully reinstantiated when the user goes back.

Test: plugins/netscape-plugin-page-cache-works.html

  • dom/Document.cpp:

(WebCore::Document::documentDidBecomeActive): Copy this collection before iterating over

it, as the callbacks might result in mutating the set.

  • dom/Node.h:

(WebCore::Node::setHasCustomStyleForRenderer):
(WebCore::Node::clearHasCustomStyleForRenderer): Expose the ability to stop using a

custom renderer and go back to the default renderer.

  • history/CachedFrame.cpp:

(WebCore::CachedFrame::CachedFrame): Move the document inactivation call to the same place

we suspend active DOM objects. It is important this call be *after* the beforeunload event
is dispatched, and was coincidental non of the elements that using Document activation
had run in to this problem yet.

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame): If the page contains plugins but

the PageCacheSupportsPlugins setting is true, allow this page.

Kill and recreate the plugin by listening for Document activation callbacks and setting a custom
display:none render style:

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::~HTMLPlugInImageElement): Unregister for document activation

callbacks.

(WebCore::HTMLPlugInImageElement::createRenderer): Once a renderer (ie. plugin instance) is

created, this element needs Document (in)activation callbacks.

(WebCore::HTMLPlugInImageElement::willMoveToNewOwnerDocument): Manage Document activation

callback registration.

(WebCore::HTMLPlugInImageElement::didMoveToNewOwnerDocument): Ditto.
(WebCore::HTMLPlugInImageElement::documentWillBecomeInactive): Clone the element's current style

and set the clone's display value to None. Start using this custom style and force a style
recall. This destroys the renderer and therefore the plugin instance.

(WebCore::HTMLPlugInImageElement::documentDidBecomeActive): Stop using the custom style and

force a style recall to reinstantiate the plugin.

(WebCore::HTMLPlugInImageElement::customStyleForRenderer): Return the stand-in style that has

display:none set.

  • html/HTMLPlugInImageElement.h:

Add a setting that allows runtime configuration of whether or not the page cache supports plugins:

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setPageCacheSupportsPlugins):
(WebCore::Settings::pageCacheSupportsPlugins):

Source/WebKit/mac:

Expose a WebKit preference for the page cache supporting plugins (on by default).

Reviewed by Anders Carlsson.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences pageCacheSupportsPlugins]):
(-[WebPreferences setPageCacheSupportsPlugins:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

Expose a WebKit2 preference for the page cache supporting plugins (on by default).

Reviewed by Anders Carlsson.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetPageCacheSupportsPlugins):
(WKPreferencesGetPageCacheSupportsPlugins):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

LayoutTests:

Reviewed by Anders Carlsson.

  • plugins/netscape-plugin-page-cache-works-expected.txt: Added.
  • plugins/netscape-plugin-page-cache-works.html: Added.
  • plugins/resources/go-back.html: Added.
1:56 PM Changeset in webkit [102618] by Lucas Forschler
  • 2 edits in branches/safari-534.53-branch/Source/WebKit/mac

<rdar://problem/10565832> After installing Duches 53.8, Mail Hangs on Reply all

Fixing a mis-merge of r99617 where an observer was incorrectly added.

  • WebView/WebView.mm:

(-[WebView addWindowObserversForWindow:]):

1:41 PM Changeset in webkit [102617] by Lucas Forschler
  • 3 edits in branches/safari-534.53-branch/Source/WebKit/mac

Merge 97407.

1:41 PM Changeset in webkit [102616] by weinig@apple.com
  • 5 edits
    3 adds in trunk/Source/WebKit2

Add WKConnection objective-c wrapper around WKConnectionRef
<rdar://problem/10446092>
https://bugs.webkit.org/show_bug.cgi?id=74324

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKConnection.h: Added.
  • UIProcess/API/mac/WKConnection.mm: Added.

(-[WKConnection dealloc]):
(-[WKConnection connectionRef]):
(-[WKConnection delegate]):
(-[WKConnection setDelegate:]):
(didReceiveMessage):
(didClose):
(setUpClient):
(-[WKConnection initWithConnectionRef:]):

  • UIProcess/API/mac/WKConnectionInternal.h: Added.

Added new class.

  • UIProcess/API/mac/WKProcessGroup.h:
  • UIProcess/API/mac/WKProcessGroup.mm:

(didCreateConnection):
(setUpConnectionClient):
(-[WKProcessGroup initWithInjectedBundleURL:]):
(-[WKProcessGroup delegate]):
(-[WKProcessGroup setDelegate:]):
Add WKProcessGroupDelegate to inform the user of when connections are established.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

1:41 PM Changeset in webkit [102615] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Rename QueueClient::willProcessMessageOnClientRunLoop
https://bugs.webkit.org/show_bug.cgi?id=74325

Reviewed by Sam Weinig.

Rename the QueueClient willProcessMessageOnClientRunLoop function to didReceiveMessageOnConnectionWorkQueue
and give it an out parameter to indicate whether the message was handled or not. This makes it more clear that
the function is expected to handle the message.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::processIncomingMessage):

  • Platform/CoreIPC/Connection.h:
  • Scripts/webkit2/messages.py:

(async_case_statement):

  • Scripts/webkit2/messages_unittest.py:
  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebConnectionToUIProcess.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):

  • WebProcess/WebProcess.h:
1:26 PM Changeset in webkit [102614] by Nate Chapin
  • 2 edits
    3 copies in branches/chromium/963

Merge 102602 - Source/WebCore: A SubresourceLoader in the middle of revalidating
a resource should be treated as finishing (similar to
didFinishLoading and didFail) to ensure that willCancel()
doesn't declare the revalidation as having failed reentrantly.
https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

Test: http/tests/cache/cancel-during-revalidation-succeeded.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

  • http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
  • http/tests/cache/cancel-during-revalidation-succeeded.html: Added.
  • http/tests/cache/resources/stylesheet304.php: Added.

TBR=Nate Chapin
Review URL: http://codereview.chromium.org/8920011

1:25 PM Changeset in webkit [102613] by ojan@chromium.org
  • 2 edits in trunk/Source/WebCore

r102234 caused RuleData to use 33 bits in its bitmask
https://bugs.webkit.org/show_bug.cgi?id=74314

Reviewed by Antti Koivisto.

Lower m_position to something more reasonable. A million
should be plenty. Current large sites (e.g. gmail) seem to use
tens of thousands.

Added a COMPILE_ASSERT to ensure this doesn't regress.

No new tests.

  • css/CSSStyleSelector.cpp:
12:58 PM Changeset in webkit [102612] by commit-queue@webkit.org
  • 11 edits in trunk

Rename webkitCancelRequestAnimationFrame to webkitCancelAnimationFrame to match spec change
https://bugs.webkit.org/show_bug.cgi?id=74231

Patch by James Robinson <jamesr@chromium.org> on 2011-12-12
Reviewed by Simon Fraser.

Source/WebCore:

The RequestAnimationFrame spec has renamed cancelRequestAnimationFrame to cancelAnimationFrame in response to
feedback from Mozilla and Microsoft that the old name was too long and didn't parallel setTimeout/clearTimeout
and setInterval/clearInterval very well. This updates our IDL to match, while preserving the old name as an
alias to be compatible with current content.

  • dom/Document.cpp:

(WebCore::Document::webkitCancelAnimationFrame):

  • dom/Document.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::webkitCancelAnimationFrame):

  • page/DOMWindow.h:

(WebCore::DOMWindow::webkitCancelRequestAnimationFrame):

  • page/DOMWindow.idl:

LayoutTests:

Update requestAnimationFrame tests to refer to the new function name.

  • fast/animation/request-animation-frame-missing-arguments.html:
  • fast/animation/script-tests/request-animation-frame-cancel.js:

(window):

  • fast/animation/script-tests/request-animation-frame-cancel2.js:
12:53 PM Changeset in webkit [102611] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[chromium] Remove assumption that empty surface is always at end of list
https://bugs.webkit.org/show_bug.cgi?id=74037

Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-12-12
Reviewed by James Robinson.

Source/WebCore:

Test case added to CCLayerTreeHostCommonTest.cpp, which reproduces
a crash reported in http://code.google.com/p/chromium/issues/detail?id=106734

This patch fixes the crash in a less risky way to be merged into
m17, but the root of the issue needs to be addressed in a
follow-up patch.

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::calculateDrawTransformsAndVisibilityInternal):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::TEST):

12:47 PM Changeset in webkit [102610] by dcheng@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Remove BufferDrag from WebClipboard::Buffer enum.
https://bugs.webkit.org/show_bug.cgi?id=74227

Reviewed by Tony Chang.

This enum value was intended for asynchronous data retrieval during drop operations; since
that was never implemented, I'm removing this enum value.

  • public/platform/WebClipboard.h:
  • src/AssertMatchingEnums.cpp:
12:29 PM Changeset in webkit [102609] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium gardening. Mark flaky crashing transitions/
test and update previously added flaky compositing test expectations.

  • platform/chromium/test_expectations.txt:
11:16 AM Changeset in webkit [102608] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Share code that checks for matching sets of transform operations
https://bugs.webkit.org/show_bug.cgi?id=74265

Reviewed by Dan Bernstein.

Add TransformOperations::operationsMatch() and call it from the
three places that used this same code.

Tested by existing tests.

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::validateTransformFunctionList):

  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::validateTransformFunctionList):

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::fetchTransformOperationList):

  • platform/graphics/transforms/TransformOperations.cpp:

(WebCore::TransformOperations::operationsMatch):

  • platform/graphics/transforms/TransformOperations.h:
11:11 AM Changeset in webkit [102607] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, remove X86_64 modifier from GTK test_expectations list.

  • platform/gtk/test_expectations.txt:
10:56 AM Changeset in webkit [102606] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

Cache visited link hash
https://bugs.webkit.org/show_bug.cgi?id=74095

Reviewed by Darin Adler.

Visited link hash is relatively expensive to compute. We can cache it for anchor elements
with minimal relative memory cost for faster style resolve.

On my machine this speeds up style matching on full HTML spec by ~100ms or ~1% of the total
CPU usage. It makes link elements 8 bytes larger, a relatively minor increase to their overall size.

Invalidate the hashes on base URL for completeness sake (lack of style invalidation means
that this scenario is not properly supported currently).

Covered by existing tests. No specific test for visited hash invalidation on dynamic base URL
change as the effect is not testable due to lack of style invalidation.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::determineLinkStateSlowCase):
(WebCore::SelectorChecker::visitedStateChanged):

  • html/Document.cpp:
  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::HTMLAnchorElement):
(WebCore::HTMLAnchorElement::parseMappedAttribute):

  • html/HTMLAnchorElement.h:

(WebCore::HTMLAnchorElement::visitedLinkHash):

10:48 AM Changeset in webkit [102605] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

<rdar://problem/10328474> Text highlight changes to gray selection color when menu extra is shown

Reviewed by John Sullivan.

  • WebView/WebView.mm:

(-[WebView _updateActiveState]): Changed to use -[NSWindow _hasKeyAppearance] instead
of -isKeyWindow. The former also returns YES when a menu extra is open.
(-[WebView addWindowObserversForWindow:]): Removed code to observe
NSWindowDidBecomeKeyNotification and NSWindowDidResignKeyNotification.
(-[WebView removeWindowObservers]): Removed code to stop observing the above.
(-[WebView _windowChangedKeyState]): Overridden this to call _updateActiveState.
This is called when the result of -_hasKeyAppearance changes.
(-[WebView _windowWillOrderOnScreen:]): Removed call to _updateActiveState,
previously needed for popovers, because _windowChangedKeyState is invoked
at the right time for them.
(-[WebView _windowWillOrderOffScreen:]): Ditto.

10:44 AM Changeset in webkit [102604] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[GTK] gtk_widget_size_allocate for plugin widgets should happen in the WebView size-allocate method
https://bugs.webkit.org/show_bug.cgi?id=72805

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-12-12
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

No new tests. This is only a performance tweak.

Instead of immediately calling gtk_widget_size during painting, defer
this until the size-allocate method of the WebView.

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::updateWidgetAllocationAndClip): Instead of immediately changing
the widget allocation, just record it in a GObject data attachment.

Source/WebKit/gtk:

Instead of immediately calling gtk_widget_size during painting, defer
this until the size-allocate method of the WebView.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::paint): If any child widgets have a pending allocation
call gtk_widget_size_allocate.

  • webkit/webkitwebview.cpp:

(updateChildAllocationFromPendingAllocation): Added this helper.
(webkit_web_view_size_allocate): Call the helper on all child widgets.

10:40 AM Changeset in webkit [102603] by tommyw@google.com
  • 9 edits
    1 copy in trunk/Source/WebKit/chromium

[chromium] MediaStream API: Moving WebMediaStreamSource.h
https://bugs.webkit.org/show_bug.cgi?id=74081

Moving WebMediaStreamSource.h to public/platform.
Keeping a stub in public as to not affect chromium right now.

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • public/WebMediaStreamSource.h:
  • public/platform/WebMediaStreamSource.h: Copied from Source/WebKit/chromium/public/WebMediaStreamSource.h.

(WebKit::WebMediaStreamSource::WebMediaStreamSource):
(WebKit::WebMediaStreamSource::~WebMediaStreamSource):
(WebKit::WebMediaStreamSource::isNull):

  • src/AssertMatchingEnums.cpp:
  • src/UserMediaClientImpl.cpp:
  • src/WebMediaStreamDescriptor.cpp:
  • src/WebMediaStreamRegistry.cpp:
  • src/WebMediaStreamSource.cpp:
  • src/WebUserMediaRequest.cpp:
10:27 AM Changeset in webkit [102602] by Nate Chapin
  • 4 edits
    3 adds in trunk

Source/WebCore: A SubresourceLoader in the middle of revalidating
a resource should be treated as finishing (similar to
didFinishLoading and didFail) to ensure that willCancel()
doesn't declare the revalidation as having failed reentrantly.
https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

Test: http/tests/cache/cancel-during-revalidation-succeeded.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=72762

Reviewed by Adam Barth.

  • http/tests/cache/cancel-during-revalidation-succeeded-expected.txt: Added.
  • http/tests/cache/cancel-during-revalidation-succeeded.html: Added.
  • http/tests/cache/resources/stylesheet304.php: Added.
10:18 AM Changeset in webkit [102601] by kubo@profusion.mobi
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Add API to query the validity of a frame's SSL certificate.
https://bugs.webkit.org/show_bug.cgi?id=74302

Reviewed by Gustavo Noronha Silva.

  • ewk/ewk_frame.cpp:

(ewk_frame_certificate_status_get):

  • ewk/ewk_frame.h:
10:18 AM Changeset in webkit [102600] by kubo@profusion.mobi
  • 7 edits in trunk/Source/WebKit/efl

[EFL] Add API to notify that mixed content has been loaded.
https://bugs.webkit.org/show_bug.cgi?id=74301

Reviewed by Gustavo Noronha Silva.

When mixed content is displayed/run, both frames and views
emit the proper signals to notify API users.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::didDisplayInsecureContent):
(WebCore::FrameLoaderClientEfl::didRunInsecureContent):

  • ewk/ewk_frame.cpp:

(ewk_frame_view_create_for_view):
(ewk_frame_mixed_content_displayed_get):
(ewk_frame_mixed_content_run_get):
(ewk_frame_mixed_content_displayed_set):
(ewk_frame_mixed_content_run_set):

  • ewk/ewk_frame.h:
  • ewk/ewk_private.h:
  • ewk/ewk_view.cpp:

(ewk_view_frame_main_cleared):
(ewk_view_mixed_content_displayed_get):
(ewk_view_mixed_content_run_get):
(ewk_view_mixed_content_displayed_set):
(ewk_view_mixed_content_run_set):

  • ewk/ewk_view.h:
10:18 AM Changeset in webkit [102599] by kubo@profusion.mobi
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Add API to manage root X.509 CA certificates.
https://bugs.webkit.org/show_bug.cgi?id=74300

Reviewed by Martin Robinson.

  • ewk/ewk_network.cpp:

(ewk_network_tls_ca_certificates_path_get):
(ewk_network_tls_ca_certificates_path_set):

  • ewk/ewk_network.h:
10:17 AM Changeset in webkit [102598] by kubo@profusion.mobi
  • 4 edits in trunk/Source/WebKit/efl

[EFL] Add API to control whether SSL certificates should be checked.
https://bugs.webkit.org/show_bug.cgi?id=74299

Reviewed by Martin Robinson.

  • ewk/ewk_main.cpp:

(_ewk_init_body): Explicitly disable certificate checks by default.

  • ewk/ewk_network.cpp:

(ewk_network_tls_certificate_check_get):
(ewk_network_tls_certificate_check_set):

  • ewk/ewk_network.h:
10:10 AM Changeset in webkit [102597] by alexis.menard@openbossa.org
  • 1 edit
    1 add
    3 deletes in trunk/Source/WebKit2

Unreviewed cleanup fix.

Add missing files from https://bugs.webkit.org/show_bug.cgi?id=73016

Also remove the files that should be removed.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_navigationHistory.qml: Added.
  • UIProcess/qt/qwkhistory.cpp: Removed.
  • UIProcess/qt/qwkhistory.h: Removed.
  • UIProcess/qt/qwkhistory_p.h: Removed.
10:03 AM Changeset in webkit [102596] by Csaba Osztrogonác
  • 1 edit
    16 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Add Qt5 specific expected results after r102388.

  • platform/qt-5.0/animations/cross-fade-background-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-background-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.png: Added.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.png: Added.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.txt: Added.
9:49 AM Changeset in webkit [102595] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Mark a couple of flaky compositing tests as failing.

  • platform/chromium/test_expectations.txt:
9:48 AM Changeset in webkit [102594] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] Fix skip list search path and expected file search path in ORWT
https://bugs.webkit.org/show_bug.cgi?id=74281

Expected file search path fixed.

Print all used skipped list and expected search path in verbose mode similar to NRWT.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2011-12-12
Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests:

(buildPlatformResultHierarchy):
(buildPlatformTestHierarchy):
(readSkippedFiles):

9:40 AM Changeset in webkit [102593] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[qt][wk2] Postpone scroll effects when page transition is ongoing.
https://bugs.webkit.org/show_bug.cgi?id=74177

Patch by Michael Bruning <michael.bruning@nokia.com> on 2011-12-12
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::scrollPositionRequested):

  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::PostTransitionState::apply):

9:30 AM Changeset in webkit [102592] by commit-queue@webkit.org
  • 10 edits in trunk

[Qt] Missing layoutTestController.dumpWillCacheResponse
https://bugs.webkit.org/show_bug.cgi?id=74287

Patch by Nándor Huszka <huszka.nandor@stud.u-szeged.hu> on 2011-12-12
Reviewed by Csaba Osztrogonác.

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::dumpWillCacheResponseCallbacks):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:
  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::dispatchDidReceiveResponse):

  • WebCoreSupport/FrameLoaderClientQt.h:

Tools:

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::reset):
(LayoutTestController::dumpWillCacheResponse):

  • DumpRenderTree/qt/LayoutTestControllerQt.h:

LayoutTests:

  • platform/qt/Skipped: Unskip http/tests/misc/willCacheResponse-delegate-callback.html
9:26 AM Changeset in webkit [102591] by commit-queue@webkit.org
  • 5 edits in trunk

[GTK] platform/gtk/fonts/custom-font-missing-glyphs.html fails on 64-bit Debug
https://bugs.webkit.org/show_bug.cgi?id=73771

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-12-12
Reviewed by Gustavo Noronha Silva.

Tools:

When using a fallback font during testing, always use DejaVu Sans. This prevents
falling back to DejaVu Serif on some systems.

  • DumpRenderTree/gtk/fonts/fonts.conf: Fall back to DejaVu Sans.

LayoutTests:

  • platform/gtk/fonts/custom-font-missing-glyphs-expected.txt: Update results to reflect DejaVu Sans.
  • platform/gtk/Skipped: Unskip a test that is now passing.
8:47 AM Changeset in webkit [102590] by commit-queue@webkit.org
  • 1 edit
    3 adds in trunk/Source/WebCore

Upstream 3 files into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=74275

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-12
Reviewed by Rob Buis.

Initial upstream, no new tests.

  • platform/blackberry/ContextMenuBlackBerry.cpp: Added.
  • platform/blackberry/ContextMenuItemBlackBerry.cpp: Added.
  • platform/blackberry/TemporaryLinkStubs.cpp: Added.
8:44 AM Changeset in webkit [102589] by pierre.rossi@gmail.com
  • 2 edits in trunk/Source/WebCore

[Qt] Rendering issues with sliders and QStyle
https://bugs.webkit.org/show_bug.cgi?id=73921

With QStyle's origins being deeply rooted with widgets,
several styles make wrong assumptions, leading to sliders
not being painted properly in WebKit. We can solve a lot
of problems by systematically translating the painter to
the top left corner of the render object.

Reviewed by Simon Hausmann.

No new tests. The Qt tests are ran with the Windows
style, this fixes some quirks affecting other styles.

  • platform/qt/RenderThemeQStyle.cpp:

(WebCore::RenderThemeQStyle::paintSliderTrack):
(WebCore::RenderThemeQStyle::paintSliderThumb):

8:35 AM Changeset in webkit [102588] by commit-queue@webkit.org
  • 1 edit
    5 adds in trunk/Source/WebCore

Upstream 5 files into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=73798

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-12
Reviewed by Rob Buis.

Main contributors:
Genevieve Mak <gmak@rim.com>
Mike Lattanzio <mlattanzio@rim.com>
George Staikos <gstaikos@rim.com>

Initial upstream, no new tests.

  • platform/blackberry/PlatformTouchEventBlackBerry.cpp: Added.

(WebCore::PlatformTouchEvent::PlatformTouchEvent):

  • platform/blackberry/PlatformTouchPointBlackBerry.cpp: Added.

(WebCore::PlatformTouchPoint::PlatformTouchPoint):

  • platform/blackberry/SharedBufferBlackBerry.cpp: Added.

(WebCore::SharedBuffer::createWithContentsOfFile):

  • platform/blackberry/SharedTimerBlackBerry.cpp: Added.

(WebCore::SharedTimerBlackBerry::SharedTimerBlackBerry):
(WebCore::SharedTimerBlackBerry::~SharedTimerBlackBerry):
(WebCore::SharedTimerBlackBerry::instance):
(WebCore::SharedTimerBlackBerry::start):
(WebCore::SharedTimerBlackBerry::stop):
(WebCore::setSharedTimerFiredFunction):
(WebCore::setSharedTimerFireInterval):
(WebCore::stopSharedTimer):

  • platform/blackberry/SystemTimeBlackBerry.cpp: Added.

(WebCore::userIdleTime):

8:28 AM Changeset in webkit [102587] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, mark
http/tests/security/cross-origin-xsl-redirect-BLOCKED.html as
expected crasher on GTK 64-bit Debug.

  • platform/gtk/test_expectations.txt:
8:14 AM Changeset in webkit [102586] by caio.oliveira@openbossa.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Remove dead code from QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74296

Reviewed by Andreas Kling.

  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/QtWebPageProxy.h:
7:50 AM Changeset in webkit [102585] by Simon Hausmann
  • 2 edits
    3 adds in trunk/Source/WebKit2

Unreviewed build fix.

Add missing files from https://bugs.webkit.org/show_bug.cgi?id=73016

  • UIProcess/API/qt/qwebnavigationhistory.cpp: Added.

(QWebNavigationListModelPrivate::QWebNavigationListModelPrivate):
(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::reset):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationListModel::~QWebNavigationListModel):
(QWebNavigationListModel::rowCount):
(QWebNavigationListModel::data):
(QWebNavigationHistory::QWebNavigationHistory):
(QWebNavigationHistory::~QWebNavigationHistory):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h: Added.
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h: Added.
7:47 AM Changeset in webkit [102584] by apavlov@chromium.org
  • 4 edits in trunk/Source/WebCore

Implement a cache for CSSStyleRule::selectorText()
https://bugs.webkit.org/show_bug.cgi?id=74269

This change is geared towards speeding up the CSS selector profiler,
its implementation tracked at https://bugs.webkit.org/show_bug.cgi?id=74004.
Using a proof-of-concept implementation of the profiler, this change reduces
the profiler temporal overhead on PerformanceTests/Parser/html5-full-render.html
roughly by 86% (from ~72 seconds down to ~10 seconds). This change also does not
considerably increase average memory usage, as reading selectorText is a relatively
rare case during normal web browsing.

Reviewed by Andreas Kling.

No new tests, as this functionality is covered by existing tests.

  • css/CSSRule.h:
  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::~CSSStyleRule):
(WebCore::selectorTextCache):
(WebCore::CSSStyleRule::cleanup):
(WebCore::CSSStyleRule::generateSelectorText):
(WebCore::CSSStyleRule::selectorText):
(WebCore::CSSStyleRule::setSelectorText):

  • css/CSSStyleRule.h:
7:42 AM Changeset in webkit [102583] by Simon Hausmann
  • 4 edits in trunk/Source/WebKit2

[Qt] Move postMessage/messageReceived APIS to experimental

Reviewed by Tor Arne Vestbø.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::setPageProxy):
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebViewExperimental::postMessage):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml:
7:39 AM Changeset in webkit [102582] by alexis.menard@openbossa.org
  • 13 edits in trunk

[Qt][WK2] History is not accessible in QML.
https://bugs.webkit.org/show_bug.cgi?id=73016

Reviewed by Simon Hausmann.

.:

Add the new QWebNavigationHistory in the map file.

  • Source/qtwebkit-export.map:

Source/WebKit/qt:

Register QWebNavigationHistory and QWebNavigationListModel in the QML plugin.

  • declarative/experimental/plugin.cpp:

(WebKitQmlPlugin::registerTypes):

Source/WebKit2:

Remove the old qwkhistory and create QWebNavigationHistory which is QML
friendly with data models you can plug to a view in QML

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::didChangeBackForwardList):
(QQuickWebViewExperimental::navigationHistory):
(QQuickWebViewExperimental::goForwardTo):
(QQuickWebViewExperimental::goBackTo):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebnavigationhistory.cpp: Added.

(QWebNavigationListModelPrivate::QWebNavigationListModelPrivate):
(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::reset):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationListModel::~QWebNavigationListModel):
(QWebNavigationListModel::rowCount):
(QWebNavigationListModel::data):
(QWebNavigationHistory::QWebNavigationHistory):
(QWebNavigationHistory::~QWebNavigationHistory):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h: Added.
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h: Renamed from Source/WebKit2/UIProcess/qt/qwkhistory_p.h.
  • UIProcess/API/qt/tests/qmltests/WebView/tst_navigationHistory.qml: Added.
  • UIProcess/qt/QtWebPageLoadClient.cpp:

(QtWebPageLoadClient::QtWebPageLoadClient):
(QtWebPageLoadClient::didChangeBackForwardList):

  • UIProcess/qt/QtWebPageLoadClient.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):
(QtWebPageProxy::~QtWebPageProxy):
(QtWebPageProxy::goBackTo):
(QtWebPageProxy::goForwardTo):
(QtWebPageProxy::navigationHistory):

  • UIProcess/qt/QtWebPageProxy.h:
  • UIProcess/qt/qwkhistory.cpp: Removed.
  • UIProcess/qt/qwkhistory.h: Removed.
7:24 AM Changeset in webkit [102581] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: [Styles] Modified selector text needs sanitization
https://bugs.webkit.org/show_bug.cgi?id=74291

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

LayoutTests:

  • inspector/styles/commit-selector-expected.txt:
  • inspector/styles/commit-selector.html:
7:13 AM Changeset in webkit [102580] by reni@webkit.org
  • 4 edits in trunk/Source/WebCore

Fulfill FIXME in HTMLLinkElement.h.
https://bugs.webkit.org/show_bug.cgi?id=74278

Rename HTMLLinkElement::isLoading() to isStyleSheetLoading().

Reviewed by Andreas Kling.

No new tests because the functionality remains the same.

  • dom/Document.cpp:

(WebCore::Document::recalcStyleSelector):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setDisabledState):
(WebCore::HTMLLinkElement::isStyleSheetLoading):
(WebCore::HTMLLinkElement::sheetLoaded):

  • html/HTMLLinkElement.h:
6:54 AM Changeset in webkit [102579] by jesus@webkit.org
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Move startDrag implementation to QtWebPageEventHandler
https://bugs.webkit.org/show_bug.cgi?id=73145

Reviewed by Simon Hausmann.

Move QtWebPageProxy::startDrag to QtWebPageEventHandler::startDrag
and call it straight from QtPageClient.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(dragOperationToDropAction):
(dragOperationToDropActions):
(dropActionToDragOperation):
Now these functions are static inline and not part of QtWebPageEventHandler
anymore.

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::startDrag):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::startDrag): removed.

6:46 AM Changeset in webkit [102578] by apavlov@chromium.org
  • 12 edits in trunk

WebKit does not enumerate over CSS properties in HTMLElement.style
https://bugs.webkit.org/show_bug.cgi?id=23946

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add a few exports to follow the JSCSSStyleDeclaration.cpp changes,
introduce an std::sort() comparator function.

(WTF::codePointCompareLessThan): Used by std::sort() to sort properties.

Source/WebCore:

This change generates a list of JavaScript mirrors of the CSS properties and allows to enumerate them
using the "in" operator on the CSSStyleDeclaration object.

Test: fast/css/style-enumerate-properties.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::getOwnPropertyNames): Added.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): A small drive-by optimization (local initialization moved down).

  • css/CSSStyleDeclaration.idl: Use a custom property enumerator.
  • css/makeprop.pl: Add a function to convert CSS property names into JS ones.

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Added.
  • fast/css/style-enumerate-properties.html: Added.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
6:27 AM Changeset in webkit [102577] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Web Inspector: unreviewed test fix for r102574

  • inspector/profiler/detailed-heapshots-test.js:
6:09 AM Changeset in webkit [102576] by pierre.rossi@gmail.com
  • 2 edits in trunk/Tools

Add myself as a committer

  • Scripts/webkitpy/common/config/committers.py:
6:06 AM Changeset in webkit [102575] by apavlov@chromium.org
  • 12 edits
    2 deletes in trunk

Unreviewed, build fix.

Revert r102570 which broke SnowLeopard builders.

Source/JavaScriptCore:

Source/WebCore:

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:
  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyGetter):

  • css/CSSStyleDeclaration.idl:
  • css/makeprop.pl:

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Removed.
  • fast/css/style-enumerate-properties.html: Removed.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
5:58 AM Changeset in webkit [102574] by loislo@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: chromium: UI: Detailed Heap snapshot shows too many objects' hidden properties.
https://bugs.webkit.org/show_bug.cgi?id=74289

WebCore objects have many hidden properties.
The Detailed Heap shapshot view shows all these props for a selected object.
The result view looks too heavy and users usually failed to find a useful information about the object.
Looks like such ability is unnecessary in the most cases.
I'd like to introduce a configurable property that will show/hide these props from the view.

Reviewed by Yury Semikhatsky.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DetailedHeapshotGridNodes.js:
  • inspector/front-end/DetailedHeapshotView.js:
  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotProxy.prototype.createPathFinder):

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsScreen):

5:53 AM Changeset in webkit [102573] by caio.oliveira@openbossa.org
  • 14 edits
    3 adds
    2 deletes in trunk

[Qt] [WK2] Support customizing popup menus with QML
https://bugs.webkit.org/show_bug.cgi?id=73560

Reviewed by Tor Arne Vestbø.

Source/WebKit2:

Add a new property 'itemSelector' to WebView (experimental for now) that contains
the QML component used when it needs to spawn a popup menu. For example, <select>
HTML tag may trigger a popup menu.

When loaded the component will have the 'model' available in its context with two
properties: 'elementRect', describing the position of the element which spawned
the item selector, and 'items', which is a model ready to be used by ListView. The
'model' also have methods to accept/reject the selection.

Option groups are available as a property for each row in the 'items' model. This
can be used together with ListView to create sections, as demonstrated in the
MiniBrowser. QML tests were added as well.

The existing Desktop version is removed since after the Qt5 refactoring isn't
working correctly. Once Qt have its own QML components for popup, we hope to use
it as a default if no other popupMenu is specified.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewExperimental::itemSelector):
(QQuickWebViewExperimental::setItemSelector):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::get):

  • UIProcess/API/qt/tests/qmltests/WebView/tst_itemSelector.qml: Added.
  • UIProcess/API/qt/tests/qmltests/common/select.html: Added.
  • UIProcess/API/qt/tests/qmltests/qmltests.pro:
  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::createPopupMenuProxy):

  • UIProcess/qt/WebPopupMenuProxyQt.cpp:

(WebKit::PopupMenuItemModel::rowCount):
(WebKit::PopupMenuItemModel::Item::Item):
(WebKit::ItemSelectorContextObject::elementRect):
(WebKit::ItemSelectorContextObject::items):
(WebKit::ItemSelectorContextObject::reject):
(WebKit::ItemSelectorContextObject::ItemSelectorContextObject):
(WebKit::ItemSelectorContextObject::accept):
(WebKit::createRoleNamesHash):
(WebKit::PopupMenuItemModel::PopupMenuItemModel):
(WebKit::PopupMenuItemModel::data):
(WebKit::PopupMenuItemModel::select):
(WebKit::PopupMenuItemModel::selectedOriginalIndex):
(WebKit::PopupMenuItemModel::buildItems):
(WebKit::WebPopupMenuProxyQt::WebPopupMenuProxyQt):
(WebKit::WebPopupMenuProxyQt::showPopupMenu):
(WebKit::WebPopupMenuProxyQt::hidePopupMenu):
(WebKit::WebPopupMenuProxyQt::selectIndex):
(WebKit::WebPopupMenuProxyQt::createItem):
(WebKit::WebPopupMenuProxyQt::createContext):
(WebKit::WebPopupMenuProxyQt::notifyValueChanged):

  • UIProcess/qt/WebPopupMenuProxyQt.h:

(WebKit::WebPopupMenuProxyQt::create):

  • UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp: Removed.
  • UIProcess/qt/WebPopupMenuProxyQtDesktop.h: Removed.

Tools:

Add an Item Selector to our WebView using the experimental API.

  • MiniBrowser/qt/MiniBrowser.pro:
  • MiniBrowser/qt/MiniBrowser.qrc:
  • MiniBrowser/qt/qml/BrowserWindow.qml:
  • MiniBrowser/qt/qml/ItemSelector.qml: Added.
5:41 AM Changeset in webkit [102572] by haraken@chromium.org
  • 6 edits
    1 delete in trunk/Source/WebCore

Unreviewed, rolling out r102556.
http://trac.webkit.org/changeset/102556
https://bugs.webkit.org/show_bug.cgi?id=73394

clobber build failure

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main):

  • WebCore.gypi:
  • bindings/scripts/generate-bindings.pl:
  • page/DOMWindow.idl:
  • webaudio/DOMWindowWebAudio.idl: Removed.
5:39 AM Changeset in webkit [102571] by haraken@chromium.org
  • 3 edits
    1 delete in trunk/Source/WebCore

Unreviewed, rolling out r102558.
http://trac.webkit.org/changeset/102558
https://bugs.webkit.org/show_bug.cgi?id=74160

clobber build failure

  • WebCore.gypi:
  • page/DOMWindow.idl:
  • websockets/DOMWindowWebSocket.idl: Removed.
5:23 AM Changeset in webkit [102570] by apavlov@chromium.org
  • 12 edits
    2 adds in trunk

WebKit does not enumerate over CSS properties in HTMLElement.style
https://bugs.webkit.org/show_bug.cgi?id=23946

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add a few exports to follow the JSCSSStyleDeclaration.cpp changes,
introduce an std::sort() comparator function.

(WTF::codePointCompareLessThan): Used by std::sort() to sort properties.

Source/WebCore:

This change generates a list of JavaScript mirrors of the CSS properties and allows to enumerate them
using the "in" operator on the CSSStyleDeclaration object.

Test: fast/css/style-enumerate-properties.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::getOwnPropertyNames): Added.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyQuery): Added.
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): A small drive-by optimization (local initialization moved down).

  • css/CSSStyleDeclaration.idl: Use a custom property enumerator.
  • css/makeprop.pl: Add a function to convert CSS property names into JS ones, and a string comparator.

LayoutTests:

  • fast/css/style-enumerate-properties-expected.txt: Added.
  • fast/css/style-enumerate-properties.html: Added.
  • fast/dom/domListEnumeration-expected.txt:
  • fast/dom/script-tests/domListEnumeration.js:
5:09 AM Changeset in webkit [102569] by yurys@chromium.org
  • 12 edits
    1 add in trunk/Source/WebCore

Web Inspector: provide per Document Node count statistics
https://bugs.webkit.org/show_bug.cgi?id=74100

Memory agent now returns counters for nodes with given names. For each
object group root user will see total number of its descendtants and per
tag name counts.

This patch also moves generic CounterVisitor code out of V8 bindings. It
may well be used with both JS engines.

Reviewed by Pavel Feldman.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::visitJSDOMWrappers):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitJSDOMWrappers):

  • bindings/v8/ScriptProfiler.h:
  • inspector/DOMWrapperVisitor.h: Added.

(WebCore::DOMWrapperVisitor::~DOMWrapperVisitor):

  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getDOMNodeCount):

  • inspector/InspectorMemoryAgent.h:
5:08 AM Changeset in webkit [102568] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] MiniBrowser should only visualize mock touch points when in non-desktop mode
https://bugs.webkit.org/show_bug.cgi?id=74283

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-12
Reviewed by Simon Hausmann.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::sendTouchEvent):

4:30 AM Changeset in webkit [102567] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, skip flaky fast/events/overflow-events.html test on GTK.

  • platform/gtk/test_expectations.txt:
3:54 AM Changeset in webkit [102566] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, skip failing test on GTK.

  • platform/gtk/Skipped: Skip editing/pasteboard/emacs-ctrl-k-with-move.html
2:54 AM Changeset in webkit [102565] by Philippe Normand
  • 3 edits in trunk/LayoutTests

Unreviewed, skip a flaky test and a failing test on GTK.

  • platform/gtk/Skipped: Skip fast/events/dont-loose-last-event.html
  • platform/gtk/test_expectations.txt: Mark

fullscreen/full-screen-iframe-legacy.html flaky.

2:03 AM Changeset in webkit [102564] by Carlos Garcia Campos
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Fix make distcheck issues.

  • GNUmakefile.list.am:
1:39 AM Changeset in webkit [102563] by Philippe Normand
  • 1 edit
    7 adds in trunk/LayoutTests

Unreviewed, GTK baselines for tests added in r102388.

  • platform/gtk/animations/cross-fade-background-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/gtk/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/gtk/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/gtk/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/gtk/transitions/cross-fade-border-image-expected.txt: Added.
12:58 AM Changeset in webkit [102562] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, move into a method the top-level code
to show ChangeLogs diff and open ChangeLogs in an editor
https://bugs.webkit.org/show_bug.cgi?id=74266

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog
in a run-leaks_unittest manner. This patch is one of the incremental
refactorings to remove all top-level code and global variables from
prepare-ChangeLog.

  • Scripts/prepare-ChangeLog: Moved the top-level code to show ChangeLogs diff into printDiff().

Moved the top-level code to open ChangeLogs in an editor into openChangeLogs().
Renamed @changed_files to @changedFiles.
Renamed %conflict_files to %conflictFiles.
(generateFunctionLists):
(printDiff):
(openChangeLogs):

12:10 AM Changeset in webkit [102561] by noel.gordon@gmail.com
  • 3 edits in trunk/Source/WebCore

WebPImageDecoder: Increase image/webp decoding performance 10-20%
https://bugs.webkit.org/show_bug.cgi?id=74263

Reviewed by Adam Barth.

Avoid copying data from the RGB buffer of decoded image output to the
backing pixel store. That is slow - costs 10% of the overall decoding
time at libwebp 0.1.2, and 20% at libwebp 0.1.3.

Instead, instruct the decoder to write the decoded pixels directly to
the backing pixel store.

No new tests. Covered by existing tests. No progressive decoding test
exists in DRT, see https://bugs.webkit.org/show_bug.cgi?id=74062

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(outputMode): Define output pixel format. On little-endian machines,
output BGRA pixels to the backing store, for example.
(WebCore::WEBPImageDecoder::WEBPImageDecoder):
(WebCore::WEBPImageDecoder::decode):

  • platform/image-decoders/webp/WEBPImageDecoder.h:

Dec 11, 2011:

11:44 PM Changeset in webkit [102560] by zherczeg@webkit.org
  • 3 edits
    2 adds in trunk

Add new CSS nth-children parsing tests
https://bugs.webkit.org/show_bug.cgi?id=74178

Source/WebCore:

Reviewed by Darin Adler.

Test: fast/css/parsing-css-nth-child.html

  • css/CSSParser.cpp:

(WebCore::isValidNthToken): Add "-n" to the possible identifiers.

LayoutTests:

The test covers several valid and invalid nth-child tokens.

Reviewed by Darin Adler.

  • fast/css/parsing-css-nth-child-expected.txt: Added.
  • fast/css/parsing-css-nth-child.html: Added.
11:07 PM Changeset in webkit [102559] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] Move top-level code to resolve conflicted ChangeLogs into a method
https://bugs.webkit.org/show_bug.cgi?id=74257

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog
in a run-leaks_unittest/ manner. This patch is one of the incremental
refactorings to remove all top-level code and global variables from
prepare-ChangeLog.

  • Scripts/prepare-ChangeLog: Moved top-level code to get the latest ChangeLogs

into getLatestChangeLogs(), and moved top-level code to resolve conflicted ChangeLogs
into resolveConflictedChangeLogs().
(getLatestChangeLogs):
(resolveConflictedChangeLogs):

11:01 PM Changeset in webkit [102558] by haraken@chromium.org
  • 3 edits
    1 add in trunk/Source/WebCore

Use [Supplemental] IDL in WebSocket
https://bugs.webkit.org/show_bug.cgi?id=74160

Reviewed by Adam Barth.

By using the [Supplemental] IDL, this patch moves declarations of WebSocket
attributes from DOMWindow.idl to websocket/DOMWindowWebSocket.idl,
which helps make WebSocket a self-contained module.

No new tests, no change in behavior.
Confirm that http/tests/websocket/* pass.

  • WebCore.gypi: Added DOMWindowWebSocket.idl.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to WebSocket-related attributes. This [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL (See bug 73394 for more details).
  • websockets/DOMWindowWebSocket.idl: Added. Used the [Supplemental=DOMWindow] IDL. The attributes in this IDL file are treated as if they are described in DOMWindow.idl.
8:06 PM Changeset in webkit [102557] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Implement webkit-line-grid and webkit-line-grid-snap CSS properties in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74262

Reviewed by Andreas Kling.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

7:55 PM Changeset in webkit [102556] by haraken@chromium.org
  • 6 edits
    1 add in trunk/Source/WebCore

Use the [Supplemental] IDL for webaudio attributes in Chromium
https://bugs.webkit.org/show_bug.cgi?id=73394

Reviewed by Adam Barth.

  • Overview: Using the [Supplemental] IDL, this patch moves the attribute

declarations of webaudio from DOMWindow.idl into a new IDL file
webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
feature (aka a module).

  • This patch changes the build flow of WebCore.gyp as follows:

Previous build flow:

foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl;
generate-bindings.pl reads $idl;
generate-bindings.pl generates .h and .cpp files for $idl;

}

New build flow (See the discussions in bug 72138 for more details):

resolve-supplemental.pl depends on all IDL files;
resolve-supplemental.pl reads all IDL files;
resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
resolve-supplemental.pl outputs supplemental_dependency.tmp;
foreach $idl (all IDL files) {

generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
generate-bindings.pl reads $idl;
generate-bindings.pl reads supplemental_dependency.tmp;
generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;

}

  • This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL

will be removed after build scripts for all platforms support the [Supplemental] IDL.
The motivation for the [Supplemented] IDL is as follows:

In order to support the [Supplemental] IDL, we need to
(1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
(2) and run generate-bindings.pl with the supplemental_dependency.tmp.

This build flow requires a change on the following build scripts,
but changing all the build scripts all at once without any regression is too difficult:

  • DerivedSources.make
  • DerivedSources.pri
  • GNUmakefile.am
  • PlatformBlackBerry.cmake
  • UseJSC.cmake
  • UseV8.cmake
  • WebCore.vcproj/MigrateScripts
  • WebCore.vcproj/WebCore.vcproj
  • bindings/gobject/GNUmakefile.am
  • WebCore.gyp/WebCore.gyp

Thus, we are planning to change the build scripts one by one, which implies that
we need to allow the temporary state in which some build scripts support [Supplemental] IDL
but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
in another IDL file somewhere, like this:

DOMWindowWebAudio.idl:

interface [

Supplemental=DOMWindow

] DOMWindowWebAudio {

attribute attr1;
attribute attr2;

};

DOMWindow.idl:

interface [
] DOMWindow {

attribute [Supplemented] attr1; This line will be removed after all build scripts support the [Su IDL
attribute [Supplemented] attr2;
This line will be removed after all build scripts support the [Su IDL.
attribute attr3;
attribute attr4;

};

Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:

  • If a given build script supports the [Supplemental] IDL, generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
  • Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL as normal attributes and instead ignores all attributes with the [Supplemental] IDL (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).

Tests: webaudio/*

  • WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file. If the file name is a "/cygdrive/c/..."-style path, it is converted to a "C:\cygwin\..."-style path by the cygpath command.

  • WebCore.gypi: Added DOMWindowWebAudio.idl.
  • bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
  • webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.
7:43 PM Changeset in webkit [102555] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

Micro-optimize CSSStyleSelector::findSiblingForStyleSharing().
<http://webkit.org/b/74261>

Reviewed by Antti Koivisto.

Move the isStyledElement() check from canShareStyleWithElement() into the
loop in findSiblingForStyleSharing(), and tighten up the argument/return
types to StyledElement* as appropriate.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::canShareStyleWithElement):
(WebCore::CSSStyleSelector::findSiblingForStyleSharing):
(WebCore::CSSStyleSelector::locateSharedStyle):

  • css/CSSStyleSelector.h:
7:25 PM Changeset in webkit [102554] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebKit2

[Qt] QQuickWebView missing titleChanged signal tests
https://bugs.webkit.org/show_bug.cgi?id=73923

Patch by Gopal Raghavan <gopal.1.raghavan@nokia.com> on 2011-12-11
Reviewed by Simon Hausmann.

Added tests for QQuickWebView tilteChanged signal.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_titleChanged.qml: Added.
  • UIProcess/API/qt/tests/qmltests/common/test3.html: Added.
  • UIProcess/API/qt/tests/qmltests/qmltests.pro:
7:12 PM Changeset in webkit [102553] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Asynchronous path synchronous path of SpellChecker should share the code to mark misspellings.
https://bugs.webkit.org/show_bug.cgi?id=73616

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-11
Reviewed by Hajime Morita.

Asynchronous spellchecking path should call the same method for the synchronous spellchecking path
to mark misspellings.

No new tests. Covered by existing tests.

  • editing/Editor.cpp:

(WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
(WebCore::Editor::markAndReplaceFor):

Takes SpellCheckRequest object.

  • editing/Editor.h:
  • editing/SpellChecker.cpp:

(WebCore::SpellChecker::didCheck):

Calls the same method of synchronous spellchecking path.

6:24 PM Changeset in webkit [102552] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Implement CSS display property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=73500

Reviewed by Andreas Kling.

Refactoring only / no functionality changed.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):
(WebCore::ApplyPropertyDisplay::applyInheritValue):
(WebCore::ApplyPropertyDisplay::applyInitialValue):
(WebCore::ApplyPropertyDisplay::applyValue):
(WebCore::ApplyPropertyDisplay::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

5:22 PM Changeset in webkit [102551] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when trying to garbage collect JavaScript objects
https://bugs.webkit.org/show_bug.cgi?id=74259
<rdar://problem/10556188>

Reviewed by Sam Weinig.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::garbageCollectJavaScriptObjects):
Use sendToAllProcesses which is more correct and also handles m_process being null.

5:22 PM Changeset in webkit [102550] by weinig@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix another signed vs. unsigned warning

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):

5:05 PM Changeset in webkit [102549] by weinig@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix a signed vs. unsigned warning.

  • runtime/ArgList.cpp:

(JSC::MarkedArgumentBuffer::slowAppend):
Cast inlineCapacity to an int to appease the warning. This is known OK
since inlineCapacity is defined to be 8.

4:50 PM Changeset in webkit [102548] by ggaren@apple.com
  • 2 edits in trunk/Source/WebCore

Try to fix the Qt build.

Unreviewed.

  • css/CSSStyleDeclaration.cpp: Maybe an #include will solve our problem?

Someday, compiler error messages will not suck. Today is not that day.

4:45 PM Changeset in webkit [102547] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Rolled out *another* debugging change I committed accidentally.

Unreviewed.

  • Configurations/Base.xcconfig:
4:40 PM Changeset in webkit [102546] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Rolled out a debug counter I committed accidentally.

Unreviewed.

  • jit/JITStubs.cpp:

(JSC::arityCheckFor):

4:35 PM Changeset in webkit [102545] by ggaren@apple.com
  • 38 edits in trunk/Source/JavaScriptCore

v8 benchmark takes 12-13 million function call slow paths due to extra arguments
https://bugs.webkit.org/show_bug.cgi?id=74244

Reviewed by Filip Pizlo.

.arguments function of order the Reversed

10% speedup on v8-raytrace, 1.7% speedup on v8 overall, neutral on Kraken
and SunSpider.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfileForArgument): Clarified that the interface
to this function is an argument number.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitConstruct):
(JSC::BytecodeGenerator::isArgumentNumber): Switched to using CallFrame
helper functions for computing offsets for arguments, rather than doing
the math by hand.

Switched to iterating argument offsets backwards (--) instead of forwards (++).

  • bytecompiler/BytecodeGenerator.h:

(JSC::CallArguments::thisRegister):
(JSC::CallArguments::argumentRegister):
(JSC::CallArguments::registerOffset): Updated for arguments being reversed.

  • bytecompiler/NodesCodegen.cpp: Allocate arguments in reverse order.
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArgument):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::flush):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::processPhiStack): Use abstract argument indices
that just-in-time convert to bytecode operands (i.e., indexes in the register
file) through helper functions. This means only one piece of code needs
to know how arguments are laid out in the register file.

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump): Ditto.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueProfileFor): Ditto.

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileFunction): The whole point of this patch:
Treat too many arguments as an arity match.

  • dfg/DFGOSRExit.h:

(JSC::DFG::OSRExit::variableForIndex):
(JSC::DFG::OSRExit::operandForIndex): Use helper functions, as above.

  • dfg/DFGOperands.h:

(JSC::DFG::operandToArgument):
(JSC::DFG::argumentToOperand): These are now the only two lines of code in
the DFG compiler that know how arguments are laid out in memory.

(JSC::DFG::Operands::operand):
(JSC::DFG::Operands::setOperand): Use helper functions, as above.

  • dfg/DFGOperations.cpp: The whole point of this patch:

Treat too many arguments as an arity match.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): Use helper functions, as above.

Also, don't tag the caller frame slot as a cell, because it's not a cell.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): Use helper functions, as above.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile): Use helper functions, as above.

(JSC::DFG::SpeculativeJIT::checkArgumentTypes): Use already-computed
argument virtual register instead of recomputing by hand.

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callFrameSlot):
(JSC::DFG::SpeculativeJIT::argumentSlot):
(JSC::DFG::SpeculativeJIT::callFrameTagSlot):
(JSC::DFG::SpeculativeJIT::callFramePayloadSlot):
(JSC::DFG::SpeculativeJIT::argumentTagSlot):
(JSC::DFG::SpeculativeJIT::argumentPayloadSlot): Added a few helper
functions for dealing with callee arguments specifically. These still
build on top of our other helper functions, and have no direct knowledge
of how arguments are laid out in the register file.

(JSC::DFG::SpeculativeJIT::resetCallArguments):
(JSC::DFG::SpeculativeJIT::addCallArgument): Renamed argumentIndex to
argumentOffset to match CallFrame naming.

(JSC::DFG::SpeculativeJIT::valueSourceReferenceForOperand): Use helper
functions, as above.

  • interpreter/CallFrame.h:

(JSC::ExecState::argumentOffset):
(JSC::ExecState::argumentOffsetIncludingThis):
(JSC::ExecState::argument):
(JSC::ExecState::setArgument):
(JSC::ExecState::thisArgumentOffset):
(JSC::ExecState::thisValue):
(JSC::ExecState::setThisValue):
(JSC::ExecState::offsetFor):
(JSC::ExecState::hostThisRegister):
(JSC::ExecState::hostThisValue): Added a bunch of helper functions for
computing where an argument is in the register file. Anything in the
runtime that needs to access arguments should use these helpers.

  • interpreter/CallFrameClosure.h:

(JSC::CallFrameClosure::setThis):
(JSC::CallFrameClosure::setArgument):
(JSC::CallFrameClosure::resetCallFrame): This stuff is a lot simpler, now
that too many arguments counts as an arity match and doesn't require
preserving two copies of our arguments.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::slideRegisterWindowForCall): Only need to do something
special if the caller provided too few arguments.

Key simplification: We never need to maintain two copies of our arguments
anymore.

(JSC::eval):
(JSC::loadVarargs): Use helper functions.

(JSC::Interpreter::unwindCallFrame): Updated for new interface.

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::prepareForRepeatCall): Seriously, though: use helper
functions.

(JSC::Interpreter::privateExecute): No need to check for stack overflow
when calling host functions because they have zero callee registers.

(JSC::Interpreter::retrieveArguments): Explicitly tear off the arguments
object, since there's no special constructor for this anymore.

  • interpreter/Interpreter.h: Reduced the C++ re-entry depth because some

workers tests were hitting stack overflow in some of my testing. We should
make this test more exact in future.

  • interpreter/RegisterFile.h: Death to all runtime knowledge of argument

location that does not belong to the CallFrame class!

  • jit/JIT.cpp:

(JSC::JIT::privateCompile): I am a broken record and I use helper functions.

Also, the whole point of this patch: Treat too many arguments as an arity match.

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs): Updated the argument copying math to use
helper functions, for backwards-correctness. Removed the condition
pertaining to declared argument count because, now that arguments are
always in just one place, this optimization is valid for all functions.
Standardized the if predicate for each line of the optimization. This might
fix a bug, but I couldn't get the bug to crash in practice.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_get_argument_by_val):
(JSC::JIT::emitSlow_op_get_argument_by_val):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_create_arguments):
(JSC::JIT::emit_op_get_argument_by_val):
(JSC::JIT::emitSlow_op_get_argument_by_val): Removed cti_op_create_arguments_no_params
optimization because it's no longer an optimization, now that arguments
are always contiguous in a known location.

Updated argument access opcode math for backwards-correctness.

  • jit/JITStubs.cpp:

(JSC::arityCheckFor): Updated just like slideRegisterWindowForCall. This
function is slightly different because it copies the call frame in
addition to the arguments. (In the Interpreter, the call frame is not
set up by this point.)

(JSC::lazyLinkFor): The whole point of this patch: Treat too many
arguments as an arity match.

(JSC::DEFINE_STUB_FUNCTION): Updated for new iterface to tearOff().

  • jit/JITStubs.h:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::loadDoubleArgument):
(JSC::SpecializedThunkJIT::loadCellArgument):
(JSC::SpecializedThunkJIT::loadInt32Argument): Use helper functions! They
build strong bones and teeth!

  • runtime/ArgList.cpp:

(JSC::ArgList::getSlice):
(JSC::MarkedArgumentBuffer::slowAppend):

  • runtime/ArgList.h:

(JSC::MarkedArgumentBuffer::MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer):
(JSC::MarkedArgumentBuffer::at):
(JSC::MarkedArgumentBuffer::clear):
(JSC::MarkedArgumentBuffer::append):
(JSC::MarkedArgumentBuffer::removeLast):
(JSC::MarkedArgumentBuffer::last):
(JSC::ArgList::ArgList):
(JSC::ArgList::at): Updated for backwards-correctness. WTF::Vector doesn't
play nice with backwards-ness, so I changed to using manual allocation.

Fixed a FIXME about not all values being marked in the case of out-of-line
arguments. I had to rewrite the loop anyway, and I didn't feel like
maintaining fidelity to its old bugs.

  • runtime/Arguments.cpp:

(JSC::Arguments::visitChildren):
(JSC::Arguments::copyToArguments):
(JSC::Arguments::fillArgList):
(JSC::Arguments::getOwnPropertySlotByIndex):
(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::getOwnPropertyDescriptor):
(JSC::Arguments::putByIndex):
(JSC::Arguments::put):
(JSC::Arguments::tearOff):

  • runtime/Arguments.h:

(JSC::Arguments::create):
(JSC::Arguments::Arguments):
(JSC::Arguments::argument):
(JSC::Arguments::finishCreation): Secondary benefit of this patch: deleted
lots of tricky code designed to maintain two different copies of function
arguments. Now that arguments are always contiguous in one place in memory,
this complexity can go away.

Reduced down to one create function for the Arguments class, from three.

Moved tearOff() into an out-of-line function because it's huge.

Moved logic about whether to tear off eagerly into the Arguments class,
so we didn't have to duplicate it elsewhere.

  • runtime/JSActivation.cpp:

(JSC::JSActivation::JSActivation):
(JSC::JSActivation::visitChildren): Renamed m_numParametersMinusThis to
m_numCapturedArgs because if the value really were m_numParametersMinusThis
we would be marking too much. (We shouldn't mark 'this' because it can't
be captured.) Also, use helper functions.

  • runtime/JSActivation.h:

(JSC::JSActivation::tearOff): Use helper functions.

  • runtime/JSArray.cpp:

(JSC::JSArray::copyToArguments):

  • runtime/JSArray.h: Use helper functions, as above.
4:24 PM Changeset in webkit [102544] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Implement CSS resize property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74162

Reviewed by Julien Chaffraix.

No new tests / refactoring only.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyResize::applyValue):
(WebCore::ApplyPropertyResize::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

3:07 PM Changeset in webkit [102543] by kling@webkit.org
  • 12 edits
    2 adds in trunk/Source/WebCore

Move CSSElementStyleDeclaration to its own cpp/h files.
<http://webkit.org/b/74256>

Reviewed by Sam Weinig.

CSSElementStyleDeclaration is old enough to move out of CSSMutableStyleDeclaration's
attic and into her own apartment.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMBinding.h:
  • css/CSSElementStyleDeclaration.cpp: Added.

(WebCore::CSSElementStyleDeclaration::styleSheet):

  • css/CSSElementStyleDeclaration.h: Added.

(WebCore::CSSElementStyleDeclaration::element):
(WebCore::CSSElementStyleDeclaration::setElement):
(WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
(WebCore::CSSElementStyleDeclaration::~CSSElementStyleDeclaration):

  • css/CSSInlineStyleDeclaration.h:
  • css/CSSMutableStyleDeclaration.cpp:
  • css/CSSMutableStyleDeclaration.h:
  • dom/CSSMappedAttributeDeclaration.h:
2:20 PM Changeset in webkit [102542] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Add KillRingNone.cpp to Mac build system
https://bugs.webkit.org/show_bug.cgi?id=74168

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-11
Reviewed by David Kilzer.

Add KillRingNone.cpp so it can be used on iOS, but
blacklist the file from the build in order to avoid
conflicts with KillRingMac.

  • Configurations/WebCore.xcconfig:
  • WebCore.xcodeproj/project.pbxproj:
12:44 PM Changeset in webkit [102541] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [protocol] alter some type names generated from Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=74247

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-11
Reviewed by Pavel Feldman.

Manually-filled map added that contains problem type names and its replacement.

  • inspector/CodeGeneratorInspector.py:

(fix_type_name.Result):
(fix_type_name.Result.output_comment):
(fix_type_name):
(TypeBindings.create_for_named_type_declaration.write_doc):
(TypeBindings.create_for_named_type_declaration.EnumBinding.generate_type_builder):
(TypeBindings.create_for_named_type_declaration.PlainString.generate_type_builder):
(TypeBindings):
(TypeBindings.create_for_named_type_declaration.ClassBinding.generate_type_builder):
(Generator.process_types):

11:38 AM Changeset in webkit [102540] by kling@webkit.org
  • 7 edits
    2 adds in trunk

WK2/NetscapePlugin: Incorrect mouse event coordinates when frameScaleFactor != 1.
<http://webkit.org/b/74209> and <rdar://problem/10438197>

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.exp.in: Export AffineTransform::scale(double).

Source/WebKit2:

  • Shared/WebEvent.h:
  • Shared/WebMouseEvent.cpp:

Remove the WebMouseEvent "copy" constructor that applied a scale factor
to the coordinates of an existing event.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::handleEvent):

Pass the WebMouseEvent through to the plugin unmodified.

(WebKit::PluginView::viewGeometryDidChange):

Plumb a complex translate+scale transform through to the plugin, so coordinate
space transformations in will behave correctly with scale factors other than 1.

LayoutTests:

Add a test verifying that NetscapePlugins receive correctly transformed
mouse events with a page scale factor applied.

  • platform/mac-wk2/plugins/mouse-events-scaled-expected.txt: Added.
  • platform/mac-wk2/plugins/mouse-events-scaled.html: Added.
11:33 AM Changeset in webkit [102539] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove OS(SYMBIAN) block from Settings constructor.
<http://webkit.org/b/74248>

Reviewed by Benjamin Poulain.

Kill the last OS(SYMBIAN) block in WebKit!

  • page/Settings.cpp:

(WebCore::Settings::Settings):

11:06 AM Changeset in webkit [102538] by mitz@apple.com
  • 4 edits
    2 adds in trunk

Source/WebCore: <rdar://problem/10561285> REGRESSION (r80438): First word on a line or after collapsed space may not be hyphenated even though it should
https://bugs.webkit.org/show_bug.cgi?id=74239

Reviewed by Anders Carlsson.

Tests: fast/text/hyphenate-first-word-after-skipped-space-expected.html

fast/text/hyphenate-first-word-after-skipped-space.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::tryHyphenating): Replaced the assumption that the character at lastSpace is a space
iff lastSpace is non-zero with a test of whether it is a space, in the sense that it should
not be counted as part of the prefix when comparing it to the value of hyphenate-limit-before.

LayoutTests: Test and updated results for <rdar://problem/10561285> REGRESSION (r80438): First word on a line or after collapsed space may not be hyphenated even though it should
https://bugs.webkit.org/show_bug.cgi?id=74239

Reviewed by Anders Carlsson.

  • fast/text/hyphenate-first-word-after-skipped-space-expected.html: Added.
  • fast/text/hyphenate-first-word-after-skipped-space.html: Added.
  • platform/mac/fast/text/hyphenate-limit-lines-expected.txt:
10:04 AM Changeset in webkit [102537] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] Move top-level code to generate a new ChangeLog into a method
https://bugs.webkit.org/show_bug.cgi?id=74253

Reviewed by David Kilzer.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing,
which requires to remove top-level code and global variables. This patch is one of
the incremental refactorings for that.

  • Scripts/prepare-ChangeLog: Moved top-level code to generate a new ChangeLog into generateNewChangeLogs().

(generateFunctionLists):
(findChangeLogs):
(generateNewChangeLogs):
(generateFileList): Removed an unnecessary variable $didChangeRegressionTests.

Dec 10, 2011:

10:32 PM Changeset in webkit [102536] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, move top-level code to find ChangeLogs into a method
https://bugs.webkit.org/show_bug.cgi?id=74175

Reviewed by Ryosuke Niwa.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
This requires to remove top-level code. This patch is one of the incremental refactorings
for that.

  • Scripts/prepare-ChangeLog: Moved top-level code to find ChangeLogs into findChangeLogs().

(findChangeLogs):

10:20 PM Changeset in webkit [102535] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

#ifdef the parts of the Mac platform which should not be used on iOS
https://bugs.webkit.org/show_bug.cgi?id=74246

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-10
Reviewed by David Kilzer.

  • Configurations/WebCore.xcconfig:
  • platform/FileSystem.cpp:
  • platform/mac/FileSystemMac.mm:
  • platform/mac/Language.mm:

(+[WebLanguageChangeObserver _webkit_languagePreferencesDidChange]):
(WebCore::createHTTPStyleLanguageCode):
(WebCore::platformDefaultLanguage):

  • platform/mac/LocalizedStringsMac.mm:

(WebCore::localizedString):
(+[WebCoreSharedBufferData initialize]):

  • platform/mac/WebCoreNSStringExtras.h:
  • platform/mac/WebCoreNSStringExtras.mm:
  • platform/mac/WebFontCache.mm:
  • platform/mac/WebNSAttributedStringExtras.mm: The value NSAttachmentCharacter is

not defined in the iOS SDK so we add it here.

5:23 PM Changeset in webkit [102534] by mhahnenberg@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JSC testapi is crashing on Windows
https://bugs.webkit.org/show_bug.cgi?id=74233

Reviewed by Sam Weinig.

Same error we've encountered before where we are calling the wrong version of
visitChildren and objects that are still reachable aren't getting marked.
This problem will go away soon with the removal of vptrs for these sorts of
optimizations in favor of using the ClassInfo, but for now we can simply give
JSFinalObject a bogus virtual method that Visual Studio can't optimize away to
ensure that JSFinalObject will always have a unique vptr. We don't have to worry
about JSString or JSArray right now, which are the other two special cases for
visitChildren, since they already have their own virtual functions.

(JSC::JSFinalObject::vtableAnchor):

  • runtime/JSObject.h:
4:09 PM Changeset in webkit [102533] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the windows build.

  • win/WebKit2.vcproj:
3:54 PM Changeset in webkit [102532] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

The previous fix broke Lion release build. Fix that.

  • editing/SpellingCorrectionCommand.cpp:
3:46 PM Changeset in webkit [102531] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Lion build fix attempt after r102527.

  • editing/SpellingCorrectionCommand.cpp:
3:30 PM Changeset in webkit [102530] by kevino@webkit.org
  • 3 edits in trunk/Source/WebCore

[wx] Unreviewed build fixes. Add missing header for CPP
DOM bindings and add stubs for new DPI methods.

1:48 PM Changeset in webkit [102529] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac build fix. Remove an erroneous OVERRIDE.

  • editing/CompositeEditCommand.h:
1:40 PM Changeset in webkit [102528] by robert@webkit.org
  • 3 edits
    4 adds in trunk

CSS 2.1 failure: numerous counter-increment-* tests fail
https://bugs.webkit.org/show_bug.cgi?id=73360

Source/WebCore:

Reviewed by Julien Chaffraix.

Allow counter-increment to handle integer underflow and overflow.
Also allow 'counter' to inherit.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyCounter::applyInheritValue):
(WebCore::ApplyPropertyCounter::applyValue):
(WebCore::ApplyPropertyCounter::createHandler):

LayoutTests:

WebKit dumpAsText() versions of the CSS test suite's counter-increment-001 and 002 are already present in
fast/css/counters, so add a dumpAsText version of tests 003 to 056.

Reviewed by Julien Chaffraix.

  • fast/css/counters/counter-increment-inherit-expected.txt: Added.
  • fast/css/counters/counter-increment-inherit.htm: Added.
  • fast/css/counters/counter-increment-tests-expected.txt: Added.
  • fast/css/counters/counter-increment-tests.htm: Added.
1:35 PM Changeset in webkit [102527] by rniwa@webkit.org
  • 31 edits in trunk/Source/WebCore

There should be a way to count the number of nodes held by undo stack
https://bugs.webkit.org/show_bug.cgi?id=74099

Reviewed by Enrica Casucci.

Add getNodesInCommand to all SimpleEditCommands and EditCommandComposition in debug builds.
We can easily aggregate the number of nodes held by the undo stack by calling
this function on each item in the undo stack.

  • editing/AppendNodeCommand.cpp:

(WebCore::AppendNodeCommand::getNodesInCommand):

  • editing/AppendNodeCommand.h:
  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::getNodesInCommand):

  • editing/CompositeEditCommand.h:
  • editing/DeleteFromTextNodeCommand.cpp:

(WebCore::DeleteFromTextNodeCommand::getNodesInCommand):

  • editing/DeleteFromTextNodeCommand.h:
  • editing/EditCommand.cpp:

(WebCore::SimpleEditCommand::addNodeAndDescedents):

  • editing/EditCommand.h:
  • editing/Editor.cpp:

(WebCore::Editor::appliedEditing):

  • editing/InsertIntoTextNodeCommand.cpp:

(WebCore::InsertIntoTextNodeCommand::getNodesInCommand):

  • editing/InsertIntoTextNodeCommand.h:
  • editing/InsertNodeBeforeCommand.cpp:

(WebCore::InsertNodeBeforeCommand::getNodesInCommand):

  • editing/InsertNodeBeforeCommand.h:
  • editing/MergeIdenticalElementsCommand.cpp:

(WebCore::MergeIdenticalElementsCommand::getNodesInCommand):

  • editing/MergeIdenticalElementsCommand.h:
  • editing/RemoveCSSPropertyCommand.cpp:

(WebCore::RemoveCSSPropertyCommand::getNodesInCommand):

  • editing/RemoveCSSPropertyCommand.h:
  • editing/RemoveNodeCommand.cpp:

(WebCore::RemoveNodeCommand::getNodesInCommand):

  • editing/RemoveNodeCommand.h:
  • editing/ReplaceNodeWithSpanCommand.cpp:

(WebCore::ReplaceNodeWithSpanCommand::getNodesInCommand):

  • editing/ReplaceNodeWithSpanCommand.h:
  • editing/SetNodeAttributeCommand.cpp:

(WebCore::SetNodeAttributeCommand::getNodesInCommand):

  • editing/SetNodeAttributeCommand.h:
  • editing/SetSelectionCommand.h:
  • editing/SplitElementCommand.cpp:

(WebCore::SplitElementCommand::getNodesInCommand):

  • editing/SplitElementCommand.h:
  • editing/SplitTextNodeCommand.cpp:

(WebCore::SplitTextNodeCommand::getNodesInCommand):

  • editing/SplitTextNodeCommand.h:
  • editing/WrapContentsInDummySpanCommand.cpp:

(WebCore::WrapContentsInDummySpanCommand::getNodesInCommand):

  • editing/WrapContentsInDummySpanCommand.h:
12:30 PM Changeset in webkit [102526] by robert@webkit.org
  • 3 edits
    2 adds in trunk

CSS 2.1 failure: outline-color-* tests fail
https://bugs.webkit.org/show_bug.cgi?id=71931

Source/WebCore:

Reviewed by Julien Chaffraix.

Test: css2.1/20110323/outline-color-001.html

WebKit didn't paint the top block in this series of tests because it ignored the outline
of objects with a zero size. Fix this by taking account of both offset and width of the
outline when deciding whether to paint it.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::paintOutline): paint the outline even when the block has zero size

LayoutTests:

Add outline-color-001.htm to catch regressions against displaying outlines
on objects with zero size. The rest of the outline-color-* test series will
be landed separately.

Reviewed by Julien Chaffraix.

  • css2.1/20110323/outline-color-001-expected.html: Added.
  • css2.1/20110323/outline-color-001.htm: Added.
11:45 AM Changeset in webkit [102525] by kling@webkit.org
  • 2 edits in trunk/Tools

Add my Apple e-mail to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
11:33 AM Changeset in webkit [102524] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Update test_expectations for chromium
https://bugs.webkit.org/show_bug.cgi?id=74137

Patch by Alan Stearns <stearns@adobe.com> on 2011-12-10
Reviewed by Ryosuke Niwa.

  • platform/chromium/test_expectations.txt:
10:46 AM Changeset in webkit [102523] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Microdata: Fix compilation error in MICRODATA enabled build.
https://bugs.webkit.org/show_bug.cgi?id=74235

Patch by Arko Saha <arko@motorola.com> on 2011-12-10
Reviewed by Andreas Kling.

  • dom/Document.cpp:

(WebCore::Document::getItems):

9:13 AM Changeset in webkit [102522] by alexis.menard@openbossa.org
  • 2 edits in trunk/Source/JavaScriptCore

Unused variable in YarrJIT.cpp.
https://bugs.webkit.org/show_bug.cgi?id=74237

Reviewed by Andreas Kling.

Variable is set but not used so we can remove it.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):

6:50 AM Changeset in webkit [102521] by jarred@sencha.com
  • 2 edits in trunk/Source/WebCore

[V8] Remove old ArrayBuffer guards from V8XMLHttpRequestCustom.cpp
https://bugs.webkit.org/show_bug.cgi?id=74234

Reviewed by Adam Barth.

No new tests are necessary.

  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

(WebCore::V8XMLHttpRequest::responseAccessorGetter):

5:55 AM Changeset in webkit [102520] by alexis.menard@openbossa.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix for Qt.

Build error introduced by r102484.

  • Target.pri:
1:54 AM Changeset in webkit [102519] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebCore

WebPImageDecoder progressive decodes fail to decode valid images
https://bugs.webkit.org/show_bug.cgi?id=74062

Reviewed by Adam Barth.

The WEBP header is followed by a so-called P0 header, then some data to
decode. If a partial P0 header is received during progressive decodes,
WebPIDecGetRGB() returns false; that makes the decoder enter the failed
state, no image appears on the page.

James Zern (webp) recommended the following via e-mail:

WebPIUpdate() validates input data, and will return an error status for
malformed data (bit-stream error, invalid data). Otherwise, it returns
OK or SUSPENDED. OK means that decoding is done/complete/no-error, and
SUSPENDED means more input data is needed to complete decoding. A NULL
return from WebPIDecGetRGB() is valid at this time due to a partial P0,
and should not be interpreted as a decoding failure.

No new tests. Not something DumpRenderTree can easily test.

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(WebCore::WEBPImageDecoder::decode): A NULL WebPIDecGetRGB() return is
acceptable here. Return false instead of failing the decoder.

Dec 9, 2011:

9:47 PM Changeset in webkit [102518] by Lucas Forschler
  • 5 edits in branches/safari-534.53-branch/Source

Versioning.

9:34 PM Changeset in webkit [102517] by benjamin@webkit.org
  • 3 edits
    2 adds in trunk/Source/WebCore

Add the FileSystem functions of iOS
https://bugs.webkit.org/show_bug.cgi?id=74164

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-09
Reviewed by David Kilzer.

Two functions are needed on iOS for temporary files and directories.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ios/FileSystemIOS.h: Added.
  • platform/ios/FileSystemIOS.mm: Added.

(WebCore::createTemporaryDirectory):
(WebCore::createTemporaryFile):

9:18 PM Changeset in webkit [102516] by Lucas Forschler
  • 1 copy in tags/Safari-534.53.8

New tag.

7:03 PM Changeset in webkit [102515] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove ResourceHandle::bufferedData() from ResourceHandleBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74197

The bufferedData() was removed in r95120.

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-09
Reviewed by Rob Buis.

Trivial fix, so no new tests.

  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:
6:46 PM Changeset in webkit [102514] by commit-queue@webkit.org
  • 1 edit
    4 adds in trunk/Source/WebKit

Upstream BlackBerry API backing store files
https://bugs.webkit.org/show_bug.cgi?id=73668

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-09
Reviewed by Daniel Bates.

Contributed by Torch team, the main contributor is Adam Treat
<atreat@rim.com>.

Initial upstream, no new tests.

  • blackberry/Api/BackingStore.cpp: Added.
  • blackberry/Api/BackingStore.h: Added.
  • blackberry/Api/BackingStore_p.h: Added.
6:42 PM Changeset in webkit [102513] by Lucas Forschler
  • 5 edits in branches/safari-534.53-branch/Source/WebKit2

Merge 98588.

6:35 PM Changeset in webkit [102512] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Prevent ASSERT in legitimate out-of-memory case.
https://bugs.webkit.org/show_bug.cgi?id=74215

Patch by Eric Penner <epenner@google.com> on 2011-12-09
Reviewed by James Robinson.

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::updateCompositorResources):

6:29 PM Changeset in webkit [102511] by commit-queue@webkit.org
  • 14 edits
    2 adds in trunk

NameNodeListCache should be invalidated when name attribute changes/modified.
https://bugs.webkit.org/show_bug.cgi?id=70810

Patch by Arko Saha <arko@motorola.com> on 2011-12-09
Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/getelementsbyname-invalidation-cache.html

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseMappedAttribute):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::parseMappedAttribute):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::parseMappedAttribute):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseMappedAttribute):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::parseMappedAttribute):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::parseMappedAttribute):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseMappedAttribute):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseMappedAttribute):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::parseMappedAttribute):

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::parseMappedAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseMappedAttribute):

  • html/HTMLParamElement.cpp:

(WebCore::HTMLParamElement::parseMappedAttribute):

LayoutTests:

  • fast/dom/getelementsbyname-invalidation-cache-expected.txt: Added.
  • fast/dom/getelementsbyname-invalidation-cache.html: Added.
6:26 PM Changeset in webkit [102510] by levin@chromium.org
  • 2 edits in trunk/LayoutTests

REGRESSION (r97496-r97499): 6 fast/workers tests failing on SnowLeopard Intel Release (Tests)
https://bugs.webkit.org/show_bug.cgi?id=70619

Reviewed by Alexey Proskuryakov.

  • platform/mac/Skipped: Unskip various worker tests as they should work

now that bug 71695 is fixed.

6:15 PM Changeset in webkit [102509] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG ArithMul power-of-two case does not check for overflow
https://bugs.webkit.org/show_bug.cgi?id=74230

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

Disabled power-of-2 peephole optimization for multiplication, because it was wrong,
and any attempt to fix it would likely introduce code bloat and register pressure.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithMul):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-multiply-expected.txt: Added.
  • fast/js/dfg-multiply.html: Added.
  • fast/js/script-tests/dfg-multiply.js: Added.

(doMultiplyConstant2):
(doMultiplyConstant3):
(doMultiplyConstant4):

6:13 PM Changeset in webkit [102508] by levin@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r101863-r102042): Assertion hit: m_verifier.isSafeToUse() in RefCountedBase::ref in FunctionCodeBlock
https://bugs.webkit.org/show_bug.cgi?id=73886

Reviewed by Darin Adler.

  • runtime/SymbolTable.h:

(JSC::SharedSymbolTable::SharedSymbolTable): Added deprecatedTurnOffVerifier for
another JavaScriptObject, since JavaScriptCore objects allow use on multiple threads.
Bug 58091 is about changing these deprecated calls to something else but that something
else will still need to be in all of these places.

6:06 PM Changeset in webkit [102507] by mrowe@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the Snow Leopard build some more.

Move the #if to a location where it will do some good.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
5:59 PM Changeset in webkit [102506] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Gtk] Unskip two passing Shadow DOM tests
https://bugs.webkit.org/show_bug.cgi?id=74186

Patch by Zan Dobersek <zandobersek@gmail.com> on 2011-12-09
Reviewed by Martin Robinson.

Unskip two passing tests after bug #59571 was fixed.

  • platform/gtk/Skipped:
5:57 PM Changeset in webkit [102505] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Remove unnecessary file DissasemblerARM.cpp from build system
https://bugs.webkit.org/show_bug.cgi?id=74184

Patch by Konrad Piascik <kpiascik@rim.com> on 2011-12-09
Reviewed by Daniel Bates.

  • PlatformBlackBerry.cmake:
5:54 PM Changeset in webkit [102504] by mrowe@apple.com
  • 4 edits in trunk/Source/WebKit2

Fix the Snow Leopard build.

Wrap some code that is only applicable to Lion and newer in the appropriate #if's.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::launchProcess):

5:44 PM Changeset in webkit [102503] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix Lion release build.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):

5:41 PM Changeset in webkit [102502] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

[Qt] request parameter of QQuickWebView::navigationRequested is not a registered type
https://bugs.webkit.org/show_bug.cgi?id=73826

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2011-12-09
Reviewed by Tor Arne Vestbø.

.:

  • Source/qtwebkit-export.map: Adding QWebNavigationRequest

Source/WebKit/qt:

  • declarative/plugin.cpp:

(WebKitQmlPlugin::registerTypes): Registering QWebNavigationRequest

Source/WebKit2:

Adding QWebNavigationRequest by moving NavigationRequest out of QtWebPagePolicyClient.

  • Target.pri:
  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qwebnavigationrequest.cpp: Added.

(QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
(QWebNavigationRequestPrivate::~QWebNavigationRequestPrivate):
(QWebNavigationRequest::QWebNavigationRequest):
(QWebNavigationRequest::~QWebNavigationRequest):
(QWebNavigationRequest::setAction):
(QWebNavigationRequest::url):
(QWebNavigationRequest::button):
(QWebNavigationRequest::modifiers):
(QWebNavigationRequest::action):

  • UIProcess/API/qt/qwebnavigationrequest_p.h: Added.
  • UIProcess/qt/QtWebPagePolicyClient.cpp:

(QtWebPagePolicyClient::decidePolicyForNavigationAction):
(QtWebPagePolicyClient::decidePolicyForResponse):

5:39 PM Changeset in webkit [102501] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

[FileSystem API] Entry.remove successCallback is required
https://bugs.webkit.org/show_bug.cgi?id=69639

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2011-12-09
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/filesystem/simple-required-arguments-remove.html

  • fileapi/Entry.idl: remove [Optional] flag from Entry.remove.successCallback parameter

LayoutTests:

  • fast/filesystem/resources/simple-required-arguments-remove.js: Added.

(errorCallback):
(successCallback):

  • fast/filesystem/simple-required-arguments-remove-expected.txt: Added.
  • fast/filesystem/simple-required-arguments-remove.html: Added.
5:31 PM Changeset in webkit [102500] by jamesr@google.com
  • 2 edits
    7 deletes in trunk/Source/WebKit/chromium

[chromium] Remove forwarding headers for WebLayer APIs
https://bugs.webkit.org/show_bug.cgi?id=73729

Reviewed by Adam Barth.

These are no longer necessary.

  • WebKit.gyp:
  • public/WebContentLayer.h: Removed.
  • public/WebContentLayerClient.h: Removed.
  • public/WebExternalTextureLayer.h: Removed.
  • public/WebLayer.h: Removed.
  • public/WebLayerClient.h: Removed.
  • public/WebLayerTreeView.h: Removed.
  • public/WebLayerTreeViewClient.h: Removed.
5:28 PM Changeset in webkit [102499] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Unskip API tests
https://bugs.webkit.org/show_bug.cgi?id=74180

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2011-12-09
Reviewed by Tor Arne Vestbø.

Unskip API tests for geolocation and javascript dialogs.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_geopermission.qml:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_javaScriptDialogs.qml:
5:26 PM Changeset in webkit [102498] by timothy_horton@apple.com
  • 3 edits
    2 adds in trunk

background-image transitions trigger between equivalent images
https://bugs.webkit.org/show_bug.cgi?id=74229
<rdar://problem/10558627>

Reviewed by Darin Adler.
Patch by Simon Fraser.

For animation property wrappers around StyleImage properties,
test the equivalence of the image itself, instead of equality of
the StyleImage pointer.

Test: transitions/equivalent-background-image-no-transition.html

  • page/animation/AnimationBase.cpp:

(WebCore::StyleImagePropertyWrapper::StyleImagePropertyWrapper):
(WebCore::StyleImagePropertyWrapper::equals):
(WebCore::FillLayerStyleImagePropertyWrapper::FillLayerStyleImagePropertyWrapper):
(WebCore::FillLayerStyleImagePropertyWrapper::equals):
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
(WebCore::AnimationBase::ensurePropertyMap):

Add a test ensuring that background-images aren't needlessly transitioned
when they are equivalent.

  • transitions/equivalent-background-image-no-transition-expected.txt: Added.
  • transitions/equivalent-background-image-no-transition.html: Added.
5:25 PM Changeset in webkit [102497] by mrowe@apple.com
  • 3 edits
    2 adds in trunk/Source/WebKit2

<http://webkit.org/b/74061> WebProcess and PluginProcess should inherit environment variables provided in LC_DYLD_ENVIRONMENT of main executable binary.

Reviewed by Darin Adler.

  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h: Added.
  • UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm: Added.

(WebKit::DynamicLinkerEnvironmentExtractor::DynamicLinkerEnvironmentExtractor):
(WebKit::DynamicLinkerEnvironmentExtractor::processEnvironmentVariable): Parse out the name
and value from the environment string and add an entry to our variable map if the variable
is one that dyld would respect in LC_DYLD_ENVIRONMENT.
(WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommand): Look for a LC_DYLD_ENVIRONMENT
load command and extract any environment string that we find within.
(WebKit::DynamicLinkerEnvironmentExtractor::processLoadCommands): Iterate over each
load command in the Mach-O file.
(WebKit::DynamicLinkerEnvironmentExtractor::processSingleArchitecture): Determine whether
the Mach-O file is of the correct architecture, and if so then process the load commands
found within.
(WebKit::DynamicLinkerEnvironmentExtractor::processFatFile): Process each architecture of the
Mach-O file in turn.
(WebKit::DynamicLinkerEnvironmentExtractor::getExtractedEnvironmentVariables): Add our
extracted variables to the passed-in EnvironmentVariables object. We skip adding any
variables that already exist so as to allow variables passed in the environment to override
those that we extract from the executable file.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::ProcessLauncher::launchProcess): Extract the environment variables from the
main binary and add them to the launch environment of our subprocess.

  • WebKit2.xcodeproj/project.pbxproj:
5:18 PM Changeset in webkit [102496] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] add accessors to WebDOMMessageEvent
https://bugs.webkit.org/show_bug.cgi?id=73346

Patch by Karl Koscher <supersat@chromium.org> on 2011-12-09
Reviewed by Darin Fisher.

  • public/WebDOMMessageEvent.h:
  • src/WebDOMMessageEvent.cpp:

(WebKit::WebDOMMessageEvent::data):
(WebKit::WebDOMMessageEvent::origin):

5:17 PM WebKit Team edited by benjamin@webkit.org
(diff)
5:15 PM WebKit Team edited by kling@webkit.org
(diff)
5:09 PM Changeset in webkit [102495] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit/chromium

[chromium] add event methods to WebFrame
https://bugs.webkit.org/show_bug.cgi?id=73259

Patch by Karl Koscher <supersat@chromium.org> on 2011-12-09
Reviewed by Darin Fisher.

  • public/WebDOMEventListener.h: Use EventTarget instead of Node
  • public/WebFrame.h: Add event methods
  • src/WebDOMEventListener.cpp: Use EventTarget instead of Node

(WebKit::WebDOMEventListener::createEventListenerWrapper):
(WebKit::WebDOMEventListener::getEventListenerWrapper):

  • src/WebDOMEventListenerPrivate.cpp: Use EventTarget instead of Node

(WebKit::WebDOMEventListenerPrivate::createEventListenerWrapper):
(WebKit::WebDOMEventListenerPrivate::getEventListenerWrapper):

  • src/WebDOMEventListenerPrivate.h: Use EventTarget instead of Node

(WebKit::WebDOMEventListenerPrivate::ListenerInfo::ListenerInfo):

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addEventListener): register a listener on a WebFrame
(WebKit::WebFrameImpl::removeEventListener): remove a listener on a WebFrame
(WebKit::WebFrameImpl::dispatchEvent): dispatch an event to a WebFrame

  • src/WebFrameImpl.h: Add event methods
5:05 PM Changeset in webkit [102494] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Add WKView implementation for quickLookPreviewItemsAtWindowLocation.
<rdar://problem/10472505>

Reviewed by Dan Bernstein.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookPreviewItemsAtWindowLocation:]):

5:01 PM Changeset in webkit [102493] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Open shared memory files with shm_open.
https://bugs.webkit.org/show_bug.cgi?id=74078

Original patch by Kimmo Kinnunen

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

Open shared memory files with shm_open. This uses mount point that is
intended to host shared memory files. Typically this is /dev/shm.

This fixes crashes when filesystem that hosts QDir::temp() is full.

This is also more well-defined with respect to question whether SHM
writes to temp dir would cause unintended wear if hosted on flash drives.

This also fixes performance problems regarding QDir::temp() and
mkostemp(), both of which appear to be long operations.

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::create):

5:01 PM Changeset in webkit [102492] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Small style fix on DragDataBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=74171

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-09
Reviewed by Rob Buis.

Style fix, no function impact, no new tests.

  • platform/blackberry/DragDataBlackBerry.cpp:

(WebCore::DragData::containsURL):
(WebCore::DragData::asFilenames):
(WebCore::DragData::asURL):
(WebCore::DragData::asFragment):

4:47 PM Changeset in webkit [102491] by tony@chromium.org
  • 10 edits in trunk/LayoutTests

Fix test expectations from r102486: flex-flow returns direction and wrap now.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
4:41 PM Changeset in webkit [102490] by dpranke@chromium.org
  • 4 edits in trunk

chromium win build: revert build_webkit_exes_from_webkit_gyp change
https://bugs.webkit.org/show_bug.cgi?id=74225

Source/WebKit/chromium:

Reviewed by Tony Chang.

This change sets build_webkit_exes_from_webkit_gyp back to 1;
the "All.gyp" solution doesn't work on windows.

  • gyp_webkit:

Tools:

This change sets build_webkit_exes_from_webkit_gyp back to 1;
the "All.gyp" solution doesn't work on windows.

  • Scripts/webkitdirs.pm:

(buildChromium):

4:09 PM Changeset in webkit [102489] by fpizlo@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

DFG's interpretation of rare case profiles should be frequency-based not count-based
https://bugs.webkit.org/show_bug.cgi?id=74170

Reviewed by Geoff Garen.

DFG optimizes for rare cases only when the rare case counter is above some threshold
and it also constitutes a large enough fraction of total function executions. Also
added some minor debug logic.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::executionEntryCount):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • runtime/Heuristics.cpp:

(JSC::Heuristics::initializeHeuristics):

  • runtime/Heuristics.h:
3:53 PM Changeset in webkit [102488] by commit-queue@webkit.org
  • 8 edits in trunk

[Qt] Click's count is limited to three continuous clicks.
https://bugs.webkit.org/show_bug.cgi?id=45666

Patch by Hugo Parente Lima <Hugo Parente Lima> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Make Qt recognize "infinite" continuous mouse clicks.
handleMouseDoubleClickEvent merged into handleMousePressEvent.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::handleEvent):
(QtWebPageEventHandler::handleMousePressEvent):
(QtWebPageEventHandler::timerEvent):

  • UIProcess/qt/QtWebPageEventHandler.h:

Tools:

Update m_time at every call to leapForward, so double clicks
event are correctly sent by EventSender.

  • WebKitTestRunner/qt/EventSenderProxyQt.cpp:

(WTR::EventSenderProxy::updateClickCountForButton):
(WTR::EventSenderProxy::leapForward):

LayoutTests:

Enable fast/events/click-count.html for qt and disable for qt-wk1.

  • platform/qt-wk1/Skipped:
  • platform/qt/Skipped:
3:50 PM Changeset in webkit [102487] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] Reduce top-level code in prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74172

Reviewed by Ryosuke Niwa.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
This requires to remove top-level code. This patch is one of the incremental refactorings
for that.

  • Scripts/prepare-ChangeLog: Moved some top-level code into generateFunctionLists().

(generateFunctionLists):

3:50 PM Changeset in webkit [102486] by ojan@chromium.org
  • 13 edits in trunk

add css parsing for flex-flow: wrap and wrap-reverse
https://bugs.webkit.org/show_bug.cgi?id=74008

Patch by Tony Chang <tony@chromium.org> on 2011-12-09
Reviewed by Ojan Vafai.

Source/WebCore:

Also save 2 bits in StyleFlexibleBoxData by changing the size of m_flexFlow (there are only 4 enum values).

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Print the wrap value if it exists.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue): Parse a second token and put the values into a CSSValueList.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexWrap):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyFlexFlow::applyInheritValue): Does not inherit.
(WebCore::ApplyPropertyFlexFlow::applyInitialValue):
(WebCore::ApplyPropertyFlexFlow::applyValue): Special handler for setting two render style values from one
CSS property.
(WebCore::ApplyPropertyFlexFlow::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSValueKeywords.in:
  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::flexWrap):
(WebCore::InheritedFlags::setFlexWrap):
(WebCore::InheritedFlags::initialFlexWrap):

  • rendering/style/RenderStyleConstants.h: EFlexWrap to hold flex wrap values.
  • rendering/style/StyleFlexibleBoxData.cpp:

(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):

  • rendering/style/StyleFlexibleBoxData.h: 2 bits is enough to hold the 4 flexFlow values.

LayoutTests:

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/script-tests/css-properties.js: Test call combinations of flex-flow values.
3:47 PM Changeset in webkit [102485] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

PutByValAlias unnecessarily clobbers GetIndexedPropertyStorage
https://bugs.webkit.org/show_bug.cgi?id=74223

Reviewed by Geoffrey Garen.

Don't clobber GetIndexedPropertyStorage when we see PutByValAlias

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::getIndexedPropertyStorageLoadElimination):

3:45 PM Changeset in webkit [102484] by weinig@apple.com
  • 13 edits
    2 adds in trunk

Expose a WKConnectionRef which represents the connection to/from the WebProcess/UIProcess
https://bugs.webkit.org/show_bug.cgi?id=74218

Reviewed by Anders Carlsson.

Source/WebKit2:

Test: WebKit2.WKConnectionTest in TestWebKitAPI

  • Shared/WebConnection.cpp:

(WebKit::WebConnection::forwardDidReceiveMessageToClient):

  • Shared/WebConnection.h:

Add helper for connection subclasses to dispatch to the client.

  • UIProcess/WebConnectionToWebProcess.cpp:

(WebKit::WebConnectionToWebProcess::didReceiveMessage):
Handle postMessage messages from the WebProcess.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::processDidFinishLaunching):
Dispatch the notification that a connection to the WebProcess has
been established.

  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleGetApplicationConnection):

  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::webConnectionToUIProcess):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(WebKit::WebProcess::webConnectionToUIProcess):
Add accessor to get the connection to the UIProcess from
the bundle.

  • WebProcess/WebConnectionToUIProcess.cpp:

(WebKit::WebConnectionToUIProcess::didReceiveMessage):
Handle postMessage messages from the UIProcess.

  • WebProcess/WebProcess.h:

Tools:

Add a test of the WKConnectionRef API.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/WKConnection.cpp: Added.

(TestWebKitAPI::didCreateConnection):
(TestWebKitAPI::connectionDidReceiveMessage):
(TestWebKitAPI::connectionDidClose):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/WKConnection_Bundle.cpp: Added.

(TestWebKitAPI::connectionDidReceiveMessage):
(TestWebKitAPI::WKConnectionTest::WKConnectionTest):
(TestWebKitAPI::WKConnectionTest::initialize):

3:43 PM Changeset in webkit [102483] by levin@chromium.org
  • 6 edits
    1 add in trunk

Hash* iterators should allow comparison between const and const versions.
https://bugs.webkit.org/show_bug.cgi?id=73370

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • wtf/HashTable.h: Add the operators needed to do this.

(WTF::HashTableConstIterator::operator==):
(WTF::HashTableConstIterator::operator!=):
(WTF::HashTableIterator::operator==):
(WTF::HashTableIterator::operator!=):
(WTF::operator==):
(WTF::operator!=):

Tools:

  • TestWebKitAPI/TestWebKitAPI.gypi: Add the new test file to the build.
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
  • TestWebKitAPI/win/TestWebKitAPI.vcproj: Ditto.
  • TestWebKitAPI/Tests/WTF/HashMap.cpp: Added.

(TestWebKitAPI::TEST): Add a test for the new functionality.

3:39 PM Changeset in webkit [102482] by dpranke@chromium.org
  • 3 edits
    1 move in trunk

chromium: visual studio projects are busted when build_webkit_exes_from_webkit_gyp==0
https://bugs.webkit.org/show_bug.cgi?id=74212

Reviewed by Tony Chang.

The change introduced in r102201 to split the executables out of
WebKit.gyp apparently doesn't work right on Windows, since
WebKit.gyp and Tools.gyp refer to dependent projects by
different relative paths (it appears gyp doesn't normalize the
paths). This change moves Tools.gyp to be in the same directory
as WebKit.gyp (and All.gyp), which should fix this and
conveniently will also solve the problem of how to add Tools.gyp
to the chromium DEPS file.

Source/WebKit/chromium:

  • All.gyp:
  • Tools.gyp: Renamed from ../../../Tools/Tools.gyp.

Tools:

  • Tools.gyp: Renamed to ../Source/WebKit/chromium/Tools.gyp
3:26 PM Changeset in webkit [102481] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, move top-level code to fetch a bug description from URL into a method
https://bugs.webkit.org/show_bug.cgi?id=74173

Reviewed by Ryosuke Niwa.

The objective is to make prepare-ChangeLog a loadable Perl module for unit testing.
This requires to remove top-level code. This patch is one of the incremental refactorings
for that.

  • Scripts/prepare-ChangeLog: Moved top-level code to fetch a bug description from URL into fetchBugDescriptionFromURL().

(fetchBugDescriptionFromURL):

3:26 PM Changeset in webkit [102480] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Source/WebCore

[EFL] Add RefPtrEfl specialization for evas_object.
https://bugs.webkit.org/show_bug.cgi?id=73790

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2011-12-09
Reviewed by Ryosuke Niwa.

As evas_object is also based on reference count, RefPtr is applied for evas_object.

  • PlatformEfl.cmake:
  • platform/efl/RefPtrEfl.cpp: Added.

(WTF::refIfNotNull):
(WTF::derefIfNotNull):

  • platform/efl/RefPtrEfl.h: Added.
3:23 PM Changeset in webkit [102479] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(102234): 2-3% layout regression
https://bugs.webkit.org/show_bug.cgi?id=74141

Reviewed by David Hyatt.

Don't allocate a RuleSet when there are no regions.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::initForRegionStyling):

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

Fix assertion failure in ScrollAnimatorMac
https://bugs.webkit.org/show_bug.cgi?id=74222

Reviewed by Andreas Kling.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
This can be called with a nil scrollerImp, just return NSZeroPoint when that happens.

2:48 PM Changeset in webkit [102477] by adamk@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

[MutationObservers] Add test for deliver-at-end-of-task semantics
https://bugs.webkit.org/show_bug.cgi?id=74190

Reviewed by Ojan Vafai.

The addition of eventSender.scheduleAsynchronousKeyDown in r102424
allows testing the code added in r101842 and http://crrev.com/113010.

Added a test using a contentEditable element and an onblur event
handler that asserts it fires after mutations due to editing have been
delivered.

  • fast/mutation/end-of-task-delivery-expected.txt: Added.
  • fast/mutation/end-of-task-delivery.html: Added.
2:48 PM Changeset in webkit [102476] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Move the "is currently drawing into layer" flag out into ScrollbarThemeMac
https://bugs.webkit.org/show_bug.cgi?id=74217

Reviewed by Beth Dakin.

There's no need to store this flag inside ScrollAnimatorMac, just make it a global and put it in ScrollbarThemeMac instead.

  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate layer]):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):

  • platform/mac/ScrollbarThemeMac.h:
  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::ScrollbarThemeMac::isCurrentlyDrawingIntoLayer):
(WebCore::ScrollbarThemeMac::paint):

2:42 PM Changeset in webkit [102475] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

YARR: Multi-character read optimization for 8bit strings
https://bugs.webkit.org/show_bug.cgi?id=74191

Reviewed by Oliver Hunt.

Changed generatePatternCharacterOnce to generate
code for 1 to 4 characters in the 8 bit case.
This is worth 29% improvement on SunSpider regexp-dna test.
It provides no benefit to v8-regexp.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):
(JSC::Yarr::YarrGenerator::generate): Spelling fix in comment.

2:07 PM Changeset in webkit [102474] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Minor cleanup in ScrollAnimatorMac.mm
https://bugs.webkit.org/show_bug.cgi?id=74211

Reviewed by Andreas Kling.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]):
No need to get the scrollbar from the scroll animator anymore.

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
Try to get data from the scrollbar and/or the scrollable area instead of the scrollbar painter.

2:05 PM Changeset in webkit [102473] by levin@chromium.org
  • 8 edits
    1 add in trunk

Regression(r53595): Sync xhr requests in workers aren't terminated on worker close.
https://bugs.webkit.org/show_bug.cgi?id=71695

Reviewed by Zoltan Herczeg.

Source/JavaScriptCore:

  • wtf/MessageQueue.h:

(WTF::MessageQueue::tryGetMessageIgnoringKilled): Added a way to get messages
even after the queue has been killed. This is useful when one wants to
kill a queue but then go through it to run clean up tasks from it.

Source/WebCore:

Overview: Message loops rely on the message queue being killed in order
to exit. r53595 stopped this from happening because killing a message loop
would also stop it from doing database clean up tasks. The database clean up
tasks needed to be tasks due to ordering issues. (They wanted to run after
certain order tasks were run.) This was solved by once again terminating
the message queue but then still runnning clean-up tasks from the killed
message queue.

  • workers/WorkerRunLoop.cpp:

(WebCore::WorkerRunLoop::run): Added the call to run clean-up tasks.
(WebCore::WorkerRunLoop::runInMode):
(WebCore::WorkerRunLoop::runCleanupTasks): Loop to simply clear out all clean up tasks.
(WebCore::WorkerRunLoop::Task::performTask): Stop non-clean up tasks
from running after the loop has been terminated.

  • workers/WorkerRunLoop.h:

(WebCore::WorkerRunLoop::terminated): Just made it const.

  • workers/WorkerThread.cpp:

(WebCore::WorkerThreadShutdownFinishTask::performTask): Removed
the terminate clause since it was put back in stop.
(WebCore::WorkerThread::stop): Terminate the run loop so
that all loops will exit and clean up tasks will run. Also removed a comment
about nested workers because nested workers are no longer imminent and the
issue mentioned is one of many that should logically be investigated -- behavior correctness
in the face of different orderings of shutdown between the document and each worker --
when implementing them.

LayoutTests:

  • http/tests/workers/resources/worker-util.js: Added.

Copied from fast/workers/resources/worker-util.js

  • http/tests/xmlhttprequest/workers/abort-exception-assert.html:

Make the test wait for all workers to exit before finishing.

1:41 PM Changeset in webkit [102472] by tony@chromium.org
  • 6 edits
    1 delete in trunk/Source/WebCore

Unreviewed, rolling out r102416.
http://trac.webkit.org/changeset/102416
https://bugs.webkit.org/show_bug.cgi?id=73394

Chromium Win clobber builds are failing.

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gyp/scripts/action_derivedsourcesallinone.py:

(main):

  • WebCore.gypi:
  • bindings/scripts/generate-bindings.pl:
  • page/DOMWindow.idl:
  • webaudio/DOMWindowWebAudio.idl: Removed.
1:32 PM Changeset in webkit [102471] by eric.carlson@apple.com
  • 18 edits
    7 adds in trunk

JSC wrappers for TextTrack and TextTrackCue should not be collected during event dispatch or when owner is reachable
https://bugs.webkit.org/show_bug.cgi?id=72179

Reviewed by Geoff Garen.

Source/WebCore:

Tests: media/track/text-track-cue-is-reachable.html

media/track/text-track-is-reachable.html

  • GNUmakefile.list.am: Add JSTextTrackCueCustom.cpp and JSTextTrackCustom.cpp.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • bindings/js/JSBindingsAllInOne.cpp: Ditto.
  • bindings/js/JSTextTrackCueCustom.cpp: Added.

(WebCore::JSTextTrackCueOwner::isReachableFromOpaqueRoots): New.
(WebCore::JSTextTrackCueOwner::visitChildren): New.

  • bindings/js/JSTextTrackCustom.cpp: Added.

(WebCore::JSTextTrackOwner::isReachableFromOpaqueRoots): New.
(WebCore::JSTextTrack::visitChildren): New, mark all cues.

  • bindings/js/JSTextTrackCustom.h: Added.

(WebCore::root): New.

  • bindings/js/JSTextTrackListCustom.cpp:

(WebCore::JSTextTrackList::visitChildren): New, mark all tracks.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::trackWillBeRemoved): TextTracks::remove now takes a TextTrack*.

  • html/LoadableTextTrack.h:

(WebCore::LoadableTextTrack::trackElement): New, return the <track>.

  • html/TextTrack.cpp:

(WebCore::TextTrack::TextTrack): Initialize m_mediaElement.

  • html/TextTrack.h:

(WebCore::TextTrack::setMediaElement): New.
(WebCore::TextTrack::mediaElement): Ditto.

  • html/TextTrack.idl: Add CustomIsReachable and CustomMarkFunction.
  • html/TextTrackCue.idl: Add CustomIsReachable.
  • html/track/TextTrackList.cpp:

(TextTrackList::append): Set track's media element.
(TextTrackList::remove): Clear track's media element. Take a raw ptr, not a PassRefPtr.

  • html/track/TextTrackList.h:
  • html/track/TextTrackList.idl: Add CustomMarkFunction

LayoutTests:

  • media/track/text-track-cue-is-reachable-expected.txt: Added.
  • media/track/text-track-cue-is-reachable.html: Added.
  • media/track/text-track-is-reachable-expected.txt: Added.
  • media/track/text-track-is-reachable.html: Added.
  • platform/chromium/test_expectations.txt:
1:25 PM Changeset in webkit [102470] by Chris Fleizach
  • 3 edits
    2 adds in trunk

WebKit should ignore images with @alt matching only whitespace
https://bugs.webkit.org/show_bug.cgi?id=74189

Reviewed by Darin Adler.

Source/WebCore:

Test: accessibility/img-alt-tag-only-whitespace.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

LayoutTests:

  • accessibility/img-alt-tag-only-whitespace.html: Added.
  • platform/mac/accessibility/img-alt-tag-only-whitespace-expected.txt: Added.
1:25 PM Changeset in webkit [102469] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Remove NSAnimationContext calls
https://bugs.webkit.org/show_bug.cgi?id=74207

Reviewed by Sam Weinig.

NSAnimationContext is not used for NSAnimation subclasses, so the calls to beginGrouping/endGrouping and setDuration:
are essentially no-ops. Remove them.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):

1:16 PM Changeset in webkit [102468] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Rename scrollAnimatorDestroyed to invalidate
https://bugs.webkit.org/show_bug.cgi?id=74206

Reviewed by Sam Weinig.

Since these methods can be called when both scrollbars are destroyed and the scroll animator itself is
destroyed, rename it to something more neutral.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollAnimationHelperDelegate invalidate]):
(-[WebScrollbarPartAnimation invalidate]):
(-[WebScrollbarPainterDelegate invalidate]):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):

1:08 PM Changeset in webkit [102467] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

WebScrollbarPainterControllerDelegate should know about the ScrollableArea, not the ScrollAnimatorMac
https://bugs.webkit.org/show_bug.cgi?id=74204

Reviewed by Sam Weinig.

It makes more logical sense to associate the WebScrollbarPainterControllerDelegate object with its ScrollableArea, since
painting has nothing to do with animation.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterControllerDelegate initWithScrollableArea:]):
(-[WebScrollbarPainterControllerDelegate invalidate]):
(-[WebScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
(-[WebScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
(-[WebScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):

12:52 PM Changeset in webkit [102466] by jarred@sencha.com
  • 2 edits in trunk/Source/WebCore

[JSC] Allow cached attributes in bindings that declare a custom mark function
https://bugs.webkit.org/show_bug.cgi?id=74187

Reviewed by Oliver Hunt.

No new tests, current binding tests are sufficient.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

12:36 PM Changeset in webkit [102465] by tony@chromium.org
  • 3 edits in trunk/Tools

Switch the chromium mac bots to using skia test results
https://bugs.webkit.org/show_bug.cgi?id=74201

Reviewed by Ryosuke Niwa.

This is reverting http://trac.webkit.org/changeset/97781 and changing
the name in master.cfg to no longer have cg in the name.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(appendCustomBuildFlags):
(RunWebKitTests.start):

12:35 PM Changeset in webkit [102464] by jamesr@google.com
  • 7 edits
    2 copies in branches/chromium/963

Merge 102405 - Source/WebCore: Improve handling of frame removal during requestAnimationFrame callback invocation
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

See bug for details.

Test: fast/animation/request-animation-frame-detach-element.html

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::detach):

  • dom/Document.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::~ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(WebCore::ScriptedAnimationController::create):
(WebCore::ScriptedAnimationController::clearDocumentPointer):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

LayoutTests: Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

  • fast/animation/request-animation-frame-detach-element-expected.txt: Added.
  • fast/animation/request-animation-frame-detach-element.html: Added.

BUG=106672
TBR=jamesr@google.com
Review URL: http://codereview.chromium.org/8899006

12:33 PM Changeset in webkit [102463] by jamesr@google.com
  • 7 edits
    2 copies in branches/chromium/912

Merge 102405 - Source/WebCore: Improve handling of frame removal during requestAnimationFrame callback invocation
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

See bug for details.

Test: fast/animation/request-animation-frame-detach-element.html

  • dom/Document.cpp:

(WebCore::Document::removedLastRef):
(WebCore::Document::detach):

  • dom/Document.h:
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::~ScriptedAnimationController):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(WebCore::ScriptedAnimationController::create):
(WebCore::ScriptedAnimationController::clearDocumentPointer):

  • page/FrameView.cpp:

(WebCore::FrameView::serviceScriptedAnimations):

LayoutTests: Add some tests for removing frames from the document while servicing requestAnimationFrame callbacks
https://bugs.webkit.org/show_bug.cgi?id=74036

Reviewed by Adam Barth.

  • fast/animation/request-animation-frame-detach-element-expected.txt: Added.
  • fast/animation/request-animation-frame-detach-element.html: Added.

BUG=106672
TBR=jamesr@google.com
Review URL: http://codereview.chromium.org/8894015

12:15 PM Changeset in webkit [102462] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Remove duplicate animation ivars
https://bugs.webkit.org/show_bug.cgi?id=74194

Reviewed by Sam Weinig.

Since we now have one WebScrollbarPainterDelegate for each scrollbar, we no longer need separate
vertical/horizontal animation objects, so get rid of them.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPainterDelegate cancelAnimations]):
(-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
(-[WebScrollbarPainterDelegate scrollAnimatorDestroyed]):

11:48 AM Changeset in webkit [102461] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Try to deflake a repaint test on Chromium. It looks like we're
calling lTC.display() before the inital layout. Force a layout
before calling lTC.display().

Reviewed by Ojan Vafai.

  • fast/replaced/width100percent-textarea.html:
11:34 AM Changeset in webkit [102460] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

WebScrollbarPartAnimation should only know about the scrollbar it's animating
https://bugs.webkit.org/show_bug.cgi?id=74192

Reviewed by Sam Weinig.

  • platform/mac/ScrollAnimatorMac.mm:

(-[WebScrollbarPartAnimation initWithScrollbar:featureToAnimate:animateFrom:animateTo:duration:]):
Change the designated initializer to just take the scrollbar. Also, make the animation non-blocking here
so we don't have to do it in all the call sites.

(-[WebScrollbarPartAnimation startAnimation]):
Update the scrollbar painter.

(-[WebScrollbarPartAnimation setCurrentProgress:]):
Just invalidate the scrollbar we're animating.

(-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
(-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
Update call sites to use the new designated initializer.

10:59 AM Changeset in webkit [102459] by enne@google.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix HashMap<..., OwnPtr<...> >::add compilation errors
https://bugs.webkit.org/show_bug.cgi?id=74159

Reviewed by Darin Adler.

Add a constructor to OwnPtr that takes the empty value (nullptr_t)
from HashTraits so that this function can compile.

  • wtf/OwnPtr.h:

(WTF::OwnPtr::OwnPtr):

9:52 AM Changeset in webkit [102458] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Update test_expectations.txt to match the bots.

  • platform/chromium/test_expectations.txt:
9:40 AM Changeset in webkit [102457] by jocelyn.turcotte@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] Update WebGraphicLayer's child content scale in all child binding method.
https://bugs.webkit.org/show_bug.cgi?id=74101

Reviewed by Noam Rosenthal.

setChildren is currently the only method propagating the parent layer's content
scale to its children. This need to be done for addChild* as well.

This fixes the overlay layer not being rendered with the right scale when created
until the contents scale is modified again.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):

9:38 AM Changeset in webkit [102456] by jocelyn.turcotte@nokia.com
  • 2 edits in trunk/Source/WebCore

Inspector: Don't translate the context when rendering the highlights on a tiled layer.
https://bugs.webkit.org/show_bug.cgi?id=74085

Reviewed by Kenneth Rohde Christiansen.

When the frame view is using fixed layouting, the page overlay is the size of the whole
page and the context shouldn't be translated. The visible rect is still used in that
case to display element titles within the visible rect.

Also:

  • Rename overlayRect to visibleRect to reduce confusion in this case.
  • Remove the superfluous boundingBox check.
  • inspector/DOMNodeHighlighter.cpp:
9:35 AM Changeset in webkit [102455] by jocelyn.turcotte@nokia.com
  • 2 edits in trunk/Tools

[Qt] Remove a wrongly placed ASSERT.

Reviewed by Tor Arne Vestbø.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::notify):

8:50 AM BuildingQt5OnHarmattan edited by jocelyn.turcotte@nokia.com
Write down some way that works with current qt5 master. (diff)
8:18 AM Changeset in webkit [102454] by caryclark@google.com
  • 6 edits in trunk

Source/WebKit/chromium: Chromium DEPS roll to pick up new use_skia=1 default on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=74118

Reviewed by Adam Barth.

  • DEPS:

Tools: layout_test update to accommodate new use_skia=1 default on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=74118

Reviewed by Adam Barth.

  • Scripts/webkitpy/layout_tests/port/chromium_gpu.py:

(get):

  • Scripts/webkitpy/layout_tests/port/chromium_mac.py:

(ChromiumMacPort.init):

  • Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

(ChromiumMacPortTest.test_versions):
(ChromiumMacPortTest.test_graphics_type):

7:19 AM Changeset in webkit [102453] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Fix tst_QQuickWebView::scrollRequest() API test
https://bugs.webkit.org/show_bug.cgi?id=73994

Patch by Michael Brüning <michael.bruning@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/qt/tests/html/scroll.html: Corrected html and

added some coloring.

  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView::scrollRequest): Corrected calculation
of expected value.

6:48 AM Changeset in webkit [102452] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Use new qmake option in Qt5 to prevent dependency issues with GNUmake

The GNUmake + gcc_MD_depends options together produce .d files using GCC, but
this failed when moving files in the source tree, as the .d file would contain
stale dependencies on the old source file location. By keeping the object files
(and hence the depdendency files) in a proper tree structure inside the objects
directory we can prevent this failure.

A side benefit is that we can also have objects with the same name inside the
same project.

Reviewed by Simon Hausmann.

6:01 AM Changeset in webkit [102451] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Unreviewed. Update unit test after r102412.

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:

(IRCCommandTest.test_whois):

3:59 AM QtWebKitBuildBots edited by Csaba Osztrogonác
Update Qt5 revision (diff)
3:49 AM Changeset in webkit [102450] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed inspector utilities syntax fix.

  • inspector/front-end/utilities.js:

():

2:56 AM WebKit Team edited by peter@chromium.org
(diff)
2:23 AM Changeset in webkit [102449] by bashi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, chromium test expectation update.

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-09

  • platform/chromium/test_expectations.txt:
1:40 AM Changeset in webkit [102448] by joone.hur@collabora.co.uk
  • 15 edits
    3 adds in trunk

[GTK] Initial implementation of Accelerated Compositing using Clutter
https://bugs.webkit.org/show_bug.cgi?id=73319

.:

Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am: Export new compilation macros.
  • configure.ac: Add clutter backend for Accelerated Compositing.

Source/WebCore:

Reviewed by Gustavo Noronha Silva.

No new tests added as this feature will be able to reuse the existing
CSS3 transforms layout tests.

  • GNUmakefile.am: Include WebCore/platform/graphics/clutter path.
  • GNUmakefile.list.am: Add GraphicsLayerClutter.
  • platform/clutter/GRefPtrClutter.cpp: Added.

(WTF::adoptGRef):
(WTF::ClutterActor):

  • platform/clutter/GRefPtrClutter.h: Added.
  • platform/graphics/GraphicsLayer.h: Define PlatformLayer type, which represents ClutterActor.
  • platform/graphics/clutter/GraphicsLayerClutter.cpp: Boilerplate implementation.

(WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
(WebCore::GraphicsLayerClutter::platformLayer):

  • platform/graphics/clutter/GraphicsLayerClutter.h: Boilerplate implementation.

Source/WebKit/gtk:

This patch allows to add a GtkClutterEmbed to embed Clutter Actors in WebKitWebView and
set the root GraphicsLayer to WebKitWebView when Accelerated Compositing needs to be enabled.

Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am:
  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::attachRootGraphicsLayer): Set the root GraphicsLayer to WebKitWebView.
(WebKit::ChromeClient::allowedCompositingTriggers): Allow to support CSS 3D Transforms only.

  • webkit/webkitglobals.cpp:

(webkitInit): Call gtk_clutter_init().

  • webkit/webkitwebview.cpp:

(webkit_web_view_size_allocate): Set the size of GtkClutterEmbed when the view is changed.
(webkit_web_view_init)
(webViewSetRootGraphicsLayer): Add the GtkClutterEmbed to the WebKitWebView as a child.
(webViewDetachRootGraphicsLayer): Remove the GtkClutterEmbed from the WebKitWebView.
(webViewSyncLayers): Commit layer changes.
(webViewMarkForSync): Set to call webViewSyncLayers using g_timeout_add.

  • webkit/webkitwebviewprivate.h:
1:25 AM Changeset in webkit [102447] by vsevik@chromium.org
  • 4 edits
    2 adds in trunk

Web Inspector: Introduce a Map class allowing to store values indexed by arbitrary objects.
https://bugs.webkit.org/show_bug.cgi?id=74084

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/map.html

  • inspector/front-end/treeoutline.js:

(TreeOutline):
():
(TreeElement.prototype.collapse):
(TreeElement.prototype.expand):

  • inspector/front-end/utilities.js:

():

LayoutTests:

  • inspector/map-expected.txt: Added.
  • inspector/map.html: Added.
1:15 AM Changeset in webkit [102446] by haraken@chromium.org
  • 2 edits in trunk/Tools

REGRESSION(r102105): run-bindings-tests should output full diff results
https://bugs.webkit.org/show_bug.cgi?id=74166

Reviewed by Adam Barth.

Since r102105, the output of run-bindings-tests is truncated to 500 characters.
run-bindings-tests should output full diff results.

  • Scripts/webkitpy/bindings/main.py: Replaced e.message_with_output() with e.output.

(BindingsTests.generate_from_idl):
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.detect_changes):

1:11 AM Changeset in webkit [102445] by Csaba Osztrogonác
  • 16 edits in trunk

[Qt] Fix compilation with newly separated Qt 5 QtQuick module
https://bugs.webkit.org/show_bug.cgi?id=73990

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-09
Reviewed by Kenneth Rohde Christiansen, tweaked by Csaba Osztrogonác.

Fix QtQuick includes after move from QtDeclarative to QtQuick.

Source/WebKit2:

  • UIProcess/API/qt/qquickwebpage.cpp:
  • UIProcess/API/qt/qquickwebpage_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:
  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/tests.pri: Tests need symbols from QtQuick, so link library.
  • UIProcess/API/qt/tests/testwindow.h:
  • UIProcess/qt/QtDialogRunner.cpp:
  • UIProcess/qt/QtSGTileNode.cpp:
  • UIProcess/qt/QtSGTileNode.h:
  • UIProcess/qt/QtSGUpdateQueue.cpp:
  • UIProcess/qt/QtViewportInteractionEngine.cpp:
  • UIProcess/qt/QtWebPageProxy.cpp:
  • UIProcess/qt/WebPopupMenuProxyQtDesktop.cpp:

Tools:

  • MiniBrowser/qt/BrowserWindow.h:
  • WebKitTestRunner/qt/PlatformWebViewQt.cpp:
1:02 AM Changeset in webkit [102444] by nayankk@motorola.com
  • 2 edits in trunk/Source/WebKit2

[WebKit2][gtk] Re-enable running TestWebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=70135

Reviewed by Martin Robinson.

Re-enable running TestWebKitSettings which was skipped as part
of https://bugs.webkit.org/show_bug.cgi?id=70129 due to the
bug https://bugs.webkit.org/show_bug.cgi?id=70127.

  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings): Run testWebKitSettings.
(testWebKitSettingsNewWithSettings): Run testWebKitSettingsNewWithSettings.

12:53 AM Changeset in webkit [102443] by Csaba Osztrogonác
  • 1 edit
    14 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Add Qt specific expected results.

  • platform/qt/animations/cross-fade-background-image-expected.png: Added.
  • platform/qt/animations/cross-fade-background-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-border-image-source-expected.png: Added.
  • platform/qt/animations/cross-fade-border-image-source-expected.txt: Added.
  • platform/qt/animations/cross-fade-list-style-image-expected.png: Added.
  • platform/qt/animations/cross-fade-list-style-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-webkit-mask-box-image-expected.png: Added.
  • platform/qt/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
  • platform/qt/animations/cross-fade-webkit-mask-image-expected.png: Added.
  • platform/qt/animations/cross-fade-webkit-mask-image-expected.txt: Added.
  • platform/qt/transitions/cross-fade-background-image-expected.png: Added.
  • platform/qt/transitions/cross-fade-background-image-expected.txt: Added.
  • platform/qt/transitions/cross-fade-border-image-expected.png: Added.
  • platform/qt/transitions/cross-fade-border-image-expected.txt: Added.
12:45 AM Changeset in webkit [102442] by oliver@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Avoid reloading storage pointer for indexed properties unnecessarily
https://bugs.webkit.org/show_bug.cgi?id=74136

Reviewed by Filip Pizlo.

Add a node to represent loading property storage for indexed properties.
This allows us to reduce code generated for sequential access of arrays,
strings, etc. This results in up to 5% improvement in code that is
very heavy on indexed reads, such as matrix operations in typed arrays
and 20% faster on microbenchmarks.

Currently this is only supported by GetByVal and other similar indexed reads.

  • bytecode/PredictedType.h:

(JSC::isFixedIndexedStorageObjectPrediction):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGNode.h:
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetCharCodeAt):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileGetByValOnByteArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

12:43 AM Changeset in webkit [102441] by yurys@chromium.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Fixed reviewer name in r102432 changelog entry.

12:33 AM Changeset in webkit [102440] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [protocol] generate C++ classes for protocol JSON named types
https://bugs.webkit.org/show_bug.cgi?id=72835

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-09
Reviewed by NOBODY.

Extends python generator functionality.
Makes constructor in InspectorObject public.

  • inspector/CodeGeneratorInspector.py:
  • inspector/InspectorValues.h:
12:12 AM Changeset in webkit [102439] by yurys@chromium.org
  • 3 edits in branches/chromium/963/Source/WebCore

Merge 102140 - [Chromium] Web Inspector: getFunctionLocation should return scriptId as String not as int
https://bugs.webkit.org/show_bug.cgi?id=73892

Reviewed by Pavel Feldman.

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::functionLocationCallback): scriptId should be a string not a number

  • inspector/Inspector.json: removed unused parameter

TBR=pfeldman@chromium.org
Review URL: http://codereview.chromium.org/8872059

Note: See TracTimeline for information about the timeline view.