WebKit-https.git
8 years agoAutoreleased cached pages slow down the PLT by 2%
ggaren@apple.com [Wed, 6 Mar 2013 06:54:01 +0000 (06:54 +0000)]
Autoreleased cached pages slow down the PLT by 2%
https://bugs.webkit.org/show_bug.cgi?id=111522

Reviewed by Filip Pizlo.

Let's stop doing that.

2% PLT speedup.

* history/PageCache.cpp:
(WebCore::PageCache::remove):

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

8 years agoMake toggle-unlink.html test Mac specific behaviour
csaavedra@igalia.com [Wed, 6 Mar 2013 06:43:13 +0000 (06:43 +0000)]
Make toggle-unlink.html test Mac specific behaviour
https://bugs.webkit.org/show_bug.cgi?id=111321

Reviewed by Ryosuke Niwa.

A new test for Windows behavior will have to be added once bug
110487 is landed.

* editing/execCommand/script-tests/toggle-unlink-mac.js: Renamed
from
LayoutTests/editing/execCommand/script-tests/toggle-unlink.js.
Also set editing behaviour to Mac.
* editing/execCommand/toggle-unlink-mac-expected.txt: Renamed from
LayoutTests/editing/execCommand/toggle-unlink-expected.txt.
* editing/execCommand/toggle-unlink-mac.html: Renamed from
LayoutTests/editing/execCommand/toggle-unlink.html.

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

8 years agoUnreviewed chromium test expectations update.
hayato@chromium.org [Wed, 6 Mar 2013 06:27:43 +0000 (06:27 +0000)]
Unreviewed chromium test expectations update.

Patch by Vsevolod Vlasov <vsevik@chromium.org> on 2013-03-05

* platform/chromium/TestExpectations:

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Wed, 6 Mar 2013 06:09:42 +0000 (06:09 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoAdd a flaky crash test expectation to editing/selection/selection-invalid-offset...
rniwa@webkit.org [Wed, 6 Mar 2013 05:48:38 +0000 (05:48 +0000)]
Add a flaky crash test expectation to editing/selection/selection-invalid-offset.html
on Mac per bug 111521.

* platform/mac/TestExpectations:

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

8 years agoAdd test coverage for DCE and type checks.
fpizlo@apple.com [Wed, 6 Mar 2013 05:32:47 +0000 (05:32 +0000)]
Add test coverage for DCE and type checks.

Rubber stamped by Geoffrey Garen.

* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement.html: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null-and-decrement.js: Added.
(foo):
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-branch-not-null.js: Added.
(foo):

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

8 years agoUnreviewed gardening.
hayato@chromium.org [Wed, 6 Mar 2013 05:23:34 +0000 (05:23 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html

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

8 years ago[Shadow] Implements event re-targeting for Touch Events.
hayato@chromium.org [Wed, 6 Mar 2013 05:16:16 +0000 (05:16 +0000)]
[Shadow] Implements event re-targeting for Touch Events.
https://bugs.webkit.org/show_bug.cgi?id=107800

Reviewed by Dimitri Glazkov.

Source/WebCore:

So far, Touch Events have been intentionally disabled in shadow
tree since it allows users to access internal nodes in shadow tree
by accessing Touch Event's information.

This patch re-targets all individual touch point's target in
TouchList (touches, targetTouches and changedTouches) owned by a Touch Event
before the Touch Event is dispatched so that we won't break an
upper boundary of shadow DOM.

Touch Events re-targeting is similar to that of Mouse Events
re-targeting. The difference is that a Touch Event can have more
than one related target because of multiple touches. We must
re-target all individual touch points which can be referred from
the Touch Event.

Now, Touch Events can be fired in shadow tree. I've removed the
existing limitation.

Test: fast/dom/shadow/touch-event-retargeting.html

* dom/EventContext.cpp:
(WebCore::EventContext::isTouchEventContext):
(WebCore):
(WebCore::TouchEventContext::TouchEventContext):
(WebCore::TouchEventContext::~TouchEventContext):
(WebCore::TouchEventContext::handleLocalEvents):
(WebCore::TouchEventContext::isTouchEventContext):
(WebCore::TouchEventContext::checkReachability):  Used for assertion of reachability for each Touch point.
* dom/EventContext.h:
(WebCore):
(EventContext):
(TouchEventContext): Introduced to hold necessary information for re-targeting Touch event.
(WebCore::TouchEventContext::touches):
(WebCore::TouchEventContext::targetTouches):
(WebCore::TouchEventContext::changedTouches):
(WebCore::EventContext::isReachable):
* dom/EventRetargeter.cpp:
(WebCore::EventRetargeter::calculateEventPath):
(WebCore::EventRetargeter::adjustForTouchEvent):
(WebCore):
(WebCore::EventRetargeter::adjustTouchList):
(WebCore::EventRetargeter::adjustForRelatedTarget):
(WebCore::EventRetargeter::calculateAdjustedNodes): Updated so that this can be used for Touch point re-targeting.
(WebCore::EventRetargeter::buildRelatedNodeMap):
* dom/EventRetargeter.h:
(WebCore):
(EventRetargeter):
* dom/Node.cpp:
(WebCore::Node::dispatchEvent):
(WebCore):
(WebCore::Node::dispatchTouchEvent):
* dom/Node.h:
(WebCore):
(Node):
* dom/Touch.cpp:
(WebCore::Touch::Touch):
(WebCore):
(WebCore::Touch::cloneWithNewTarget):
* dom/Touch.h:
(Touch):
* dom/TouchEvent.cpp:
(WebCore::TouchEventDispatchMediator::create):
(WebCore):
(WebCore::TouchEventDispatchMediator::TouchEventDispatchMediator):
(WebCore::TouchEventDispatchMediator::event):
(WebCore::TouchEventDispatchMediator::dispatchEvent):
* dom/TouchEvent.h:
(TouchEvent):
(WebCore::TouchEvent::setTouches):
(WebCore::TouchEvent::setTargetTouches):
(WebCore::TouchEvent::setChangedTouches):
(TouchEventDispatchMediator):
(WebCore):
(WebCore::toTouchEvent):
* dom/TouchList.cpp:
(WebCore::TouchList::item):
(WebCore):
* dom/TouchList.h:
(TouchList):
* page/EventHandler.cpp:
(WebCore::EventHandler::hitTestResultInFrame): Removed the limitation. Adjusting is no longer done here.
(WebCore::EventHandler::handleTouchEvent):

LayoutTests:

* fast/dom/shadow/resources/event-dispatching.js:
(recordEvent):
(dumpTouchList):
(sortDispatchedEvent):
(showSandboxTree):
* fast/dom/shadow/shadow-dom-event-dispatching-distributed-text-node-expected.txt:
* fast/dom/shadow/shadow-dom-event-dispatching-distributed-text-node.html:
* fast/dom/shadow/shadow-dom-event-dispatching-text-node-in-shadow-root-expected.txt:
* fast/dom/shadow/touch-event-retargeting-expected.txt: Added.
* fast/dom/shadow/touch-event-retargeting.html: Added.

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

8 years agoAdd test coverage for DCE and type checks.
fpizlo@apple.com [Wed, 6 Mar 2013 04:49:10 +0000 (04:49 +0000)]
Add test coverage for DCE and type checks.

Rubber stampted by Geoffrey Garen.

* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof-expected.txt: Added.
* fast/js/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-cfg-simplify-eliminate-set-local-type-check-then-typeof.js: Added.
(foo):

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

8 years agoUnreviewed gardening. AppleWin port.
roger_fong@apple.com [Wed, 6 Mar 2013 04:27:27 +0000 (04:27 +0000)]
Unreviewed gardening. AppleWin port.

* platform/win/TestExpectations:

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

8 years agoDFG may infer an edge to be a double-using edge and then later experience multiple...
fpizlo@apple.com [Wed, 6 Mar 2013 04:22:10 +0000 (04:22 +0000)]
DFG may infer an edge to be a double-using edge and then later experience multiple-personality disorder with respect to that particular decision
https://bugs.webkit.org/show_bug.cgi?id=109393

Rubber stamped by Geoffrey Garen.

* fast/js/dfg-double-addition-simplify-to-int-expected.txt: Added.
* fast/js/dfg-double-addition-simplify-to-int.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-double-addition-simplify-to-int.js: Added.
(foo):

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

8 years agoUnreviewed gardening. AppleWin port.
roger_fong@apple.com [Wed, 6 Mar 2013 04:17:25 +0000 (04:17 +0000)]
Unreviewed gardening. AppleWin port.

* platform/win/cssom: Added.
* platform/win/cssom/cssvalue-comparison-expected.txt: Added.

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

8 years agoUnreviewed gardening. AppleWin port.
hayato@chromium.org [Wed, 6 Mar 2013 04:04:33 +0000 (04:04 +0000)]
Unreviewed gardening. AppleWin port.

Patch by Roger Fong <roger_fong@apple.com> on 2013-03-05

* platform/win/TestExpectations:
* platform/win/fast/forms/number: Added.
* platform/win/fast/forms/number/number-l10n-input-expected.txt: Added.

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

8 years agoUnreviewed gardening. AppleWin port.
roger_fong@apple.com [Wed, 6 Mar 2013 03:59:33 +0000 (03:59 +0000)]
Unreviewed gardening. AppleWin port.

* platform/win/TestExpectations:
* platform/win/fast/forms/number: Added.
* platform/win/fast/forms/number/number-l10n-input-expected.txt: Added.

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

8 years ago[chromium] don't use custom freetype on linux asan for now
dpranke@chromium.org [Wed, 6 Mar 2013 03:54:18 +0000 (03:54 +0000)]
[chromium] don't use custom freetype on linux asan for now
https://bugs.webkit.org/show_bug.cgi?id=111516

Unreviewed, build fix.

Turns out the custom lib is getting picked up by other binaries
on our bot, which is bad.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

8 years agoUnreviewed gardening.
hayato@chromium.org [Wed, 6 Mar 2013 03:52:51 +0000 (03:52 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: plugins/plugin-clip-subframe.html

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

8 years agoUnreviewed gardening.
hayato@chromium.org [Wed, 6 Mar 2013 03:28:23 +0000 (03:28 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: fast/regions/region-style-in-columns.html

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

8 years ago[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
dpranke@chromium.org [Wed, 6 Mar 2013 03:27:49 +0000 (03:27 +0000)]
[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
https://bugs.webkit.org/show_bug.cgi?id=111509

Unreviewed, build fix.

Actually comment out the flag :(.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

8 years ago[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
dpranke@chromium.org [Wed, 6 Mar 2013 03:07:18 +0000 (03:07 +0000)]
[chromium] making DumpRenderTree_resources a separate bundle breaks xcode
https://bugs.webkit.org/show_bug.cgi?id=111509

Unreviewed, build fix.

r144863 appears to have broken the xcode build; I'm temporarily
trying this instead, and if this doesn't work, I'll revert the
other changes.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

8 years ago[Custom Elements][V8] Custom Element doesn't need its own WrapperTypeInfo
morrita@google.com [Wed, 6 Mar 2013 02:52:34 +0000 (02:52 +0000)]
[Custom Elements][V8] Custom Element doesn't need its own WrapperTypeInfo
https://bugs.webkit.org/show_bug.cgi?id=111411

Reviewed by Kentaro Hara.

No new tests. No observable change yet.

This is a preparation for Bug 110436, where WebKit is going to
allow any HTML element to be a superclass of custom elements.

This change eliminates WrapperTypeInfo for custom element. Instead
of that, the wrapper of a custom element picks WrapperTypeInfo
from most descendant built-in HTML element. For example, think about
following hierarchy:

- ... <- HTMLElement <- HTMLDivElememnt <- ExistingCustomElement <- NewCustomElement

In this case, both ExistingCustomElement and NewCustomElement has
HTMLDivElememnt's type info. This is because HTMLDivElememnt is
the most descendant (or "the nearest") built-in HTML
element. (HTMLElement isn't the most descendant.
ExistingCustomElement isn't a built-in.)

Using such WrapperTypeInfos, created custom element wrappers can
get appropriate set of method and properties regardless of its
super-elements.

This change tells the prototype object of each built-in object
which WrapperTypeInfo the native backing wants:
HTMLDivElememnt.prototype knows V8HTMLDivElement::info for
example. The pointer to the type info is stored into an internal
field. On wrapper construction, createWrapper() walks up the
prototype chain and pick the first one.

* bindings/v8/V8DOMConfiguration.cpp:
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8HTMLCustomElement.cpp:
(WebCore::findWrapperTypeOf):
(WebCore::V8HTMLCustomElement::createWrapper):
* bindings/v8/V8HTMLCustomElement.h:
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::constructorForTypeSlowCase):
* bindings/v8/WrapperTypeInfo.h:
(WebCore):

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

8 years agoUnreviewed, fix an incorrect comment. The comment was a holdover from a work-in-progr...
fpizlo@apple.com [Wed, 6 Mar 2013 02:51:18 +0000 (02:51 +0000)]
Unreviewed, fix an incorrect comment. The comment was a holdover from a work-in-progress version of this code.

* dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::run):

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

8 years ago[chromium] build a DumpRenderTree.pak even on windows
dpranke@chromium.org [Wed, 6 Mar 2013 02:37:18 +0000 (02:37 +0000)]
[chromium] build a DumpRenderTree.pak even on windows
https://bugs.webkit.org/show_bug.cgi?id=111504

Reviewed by Tony Chang.

The Chromium Aura build uses the default theme to draw
controls, and that theme requires the ui ResourceBundle
to be initialized. On every other platform, we build
a DumpRenderTree.pak that works for this, but on Windows we
still compile the resources directly into DRT. As a first step,
let's build the pak file. I will then need to land a patch
in Chromium to actually load it. Then I can go back and move
the resources over to just use the .pak file and no longer need
the .rc's.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

8 years agoDFG DCE might eliminate checks unsoundly
fpizlo@apple.com [Wed, 6 Mar 2013 02:27:16 +0000 (02:27 +0000)]
DFG DCE might eliminate checks unsoundly
https://bugs.webkit.org/show_bug.cgi?id=109389

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This gets rid of all eager reference counting, and does all dead code elimination
in one phase - the DCEPhase. This phase also sets up the node reference counts,
which are then used not just for DCE but also register allocation and stack slot
allocation.

Doing this required a number of surgical changes in places that previously relied
on always having liveness information. For example, the structure check hoisting
phase must now consult whether a VariableAccessData is profitable for unboxing to
make sure that it doesn't try to do hoisting on set SetLocals. The arguments
simplification phase employs its own light-weight liveness analysis. Both phases
previously just used reference counts.

The largest change is that now, dead nodes get turned into Phantoms. Those
Phantoms will retain those child edges that are not proven. This ensures that any
type checks performed by a dead node remain even after the node is killed. On the
other hand, this Phantom conversion means that we need special handling for
SetLocal. I decided to make the four forms of SetLocal explicit:

MovHint(@a, rK): Just indicates that node @a contains the value that would have
     now been placed into virtual register rK. Does not actually cause @a to be
     stored into rK. This would have previously been a dead SetLocal with @a
     being live. MovHints are always dead.

ZombieHint(rK): Indicates that at this point, register rK will contain a dead
     value and OSR should put Undefined into it. This would have previously been
     a dead SetLocal with @a being dead also. ZombieHints are always dead.

MovHintAndCheck(@a, rK): Identical to MovHint except @a is also type checked,
     according to whatever UseKind the edge to @a has. The type check is always a
     forward exit. MovHintAndChecks are always live, since they are
     NodeMustGenerate. Previously this would have been a dead SetLocal with a
     live @a, and the check would have disappeared. This is one of the bugs that
     this patch solves.

SetLocal(@a, rK): This still does exactly what it does now, if the SetLocal is
     live.

Basically this patch makes it so that dead SetLocals eventually decay to MovHint,
ZombieHint, or MovHintAndCheck depending on the situation. If the child @a is
also dead, then you get a ZombieHint. If the child @a is live but the SetLocal
has a type check and @a's type hasn't been proven to have that type then you get
a MovHintAndCheck. Otherwise you get a MovHint.

This is performance neutral.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::executeEffects):
(JSC::DFG::AbstractState::mergeStateAtTail):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
(ArgumentsSimplificationPhase):
(JSC::DFG::ArgumentsSimplificationPhase::removeArgumentsReferencingPhantomChild):
* dfg/DFGBasicBlock.h:
(BasicBlock):
* dfg/DFGBasicBlockInlines.h:
(DFG):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addToGraph):
(JSC::DFG::ByteCodeParser::insertPhiNode):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
* dfg/DFGCFAPhase.cpp:
(JSC::DFG::CFAPhase::run):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
(JSC::DFG::CFGSimplificationPhase::keepOperandAlive):
* dfg/DFGCPSRethreadingPhase.cpp:
(JSC::DFG::CPSRethreadingPhase::run):
(JSC::DFG::CPSRethreadingPhase::addPhiSilently):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::eliminateIrrelevantPhantomChildren):
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGCommon.cpp:
(WTF::printInternal):
(WTF):
* dfg/DFGCommon.h:
(WTF):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
(JSC::DFG::ConstantFoldingPhase::paintUnreachableCode):
* dfg/DFGDCEPhase.cpp: Added.
(DFG):
(DCEPhase):
(JSC::DFG::DCEPhase::DCEPhase):
(JSC::DFG::DCEPhase::run):
(JSC::DFG::DCEPhase::findTypeCheckRoot):
(JSC::DFG::DCEPhase::countEdge):
(JSC::DFG::DCEPhase::eliminateIrrelevantPhantomChildren):
(JSC::DFG::performDCE):
* dfg/DFGDCEPhase.h: Added.
(DFG):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::checkArray):
(JSC::DFG::FixupPhase::blessArrayOperation):
(JSC::DFG::FixupPhase::fixIntEdge):
(JSC::DFG::FixupPhase::injectInt32ToDoubleNode):
(JSC::DFG::FixupPhase::truncateConstantToInt32):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::dump):
(DFG):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::changeChild):
(JSC::DFG::Graph::changeEdge):
(JSC::DFG::Graph::compareAndSwap):
(JSC::DFG::Graph::clearAndDerefChild):
(JSC::DFG::Graph::performSubstitution):
(JSC::DFG::Graph::performSubstitutionForEdge):
(Graph):
(JSC::DFG::Graph::substitute):
* dfg/DFGInsertionSet.h:
(InsertionSet):
* dfg/DFGNode.h:
(JSC::DFG::Node::Node):
(JSC::DFG::Node::convertToConstant):
(JSC::DFG::Node::convertToGetLocalUnlinked):
(JSC::DFG::Node::containsMovHint):
(Node):
(JSC::DFG::Node::hasVariableAccessData):
(JSC::DFG::Node::willHaveCodeGenOrOSR):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::convertLastOSRExitToForward):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compileMovHintAndCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::compileInlineStart):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):
(JSC::DFG::StructureCheckHoistingPhase::shouldConsiderForHoisting):
(StructureCheckHoistingPhase):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):

LayoutTests:

Reviewed by Oliver Hunt.

* fast/js/dfg-arguments-osr-exit-multiple-blocks-before-exit-expected.txt: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks-before-exit.html: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks-expected.txt: Added.
* fast/js/dfg-arguments-osr-exit-multiple-blocks.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-arguments-osr-exit-multiple-blocks-before-exit.js: Added.
(baz):
(foo):
(bar):
* fast/js/script-tests/dfg-arguments-osr-exit-multiple-blocks.js: Added.
(baz):
(foo):
(bar):

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

8 years agoUnreviewed gardening.
hayato@chromium.org [Wed, 6 Mar 2013 02:15:58 +0000 (02:15 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: inspector/console/command-line-api-inspect.html

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

8 years agoEach web process truncates the disk cache to zero on launch
ggaren@apple.com [Wed, 6 Mar 2013 02:13:43 +0000 (02:13 +0000)]
Each web process truncates the disk cache to zero on launch
https://bugs.webkit.org/show_bug.cgi?id=111467

Reviewed by Darin Adler.

Let's not do that.

* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

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

8 years agoHeap-use-after-free in WebCore::HTMLMediaElement::~HTMLMediaElement
acolwell@chromium.org [Wed, 6 Mar 2013 02:11:03 +0000 (02:11 +0000)]
Heap-use-after-free in WebCore::HTMLMediaElement::~HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=110623

Reviewed by Eric Seidel.

Source/WebCore:

Test: http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html

* html/HTMLAudioElement.h:
(HTMLAudioElement):
* html/HTMLAudioElement.idl:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::hasPendingActivity):
* html/HTMLMediaElement.idl:

LayoutTests:

* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal-expected.txt: Added.
* http/tests/misc/delete-frame-during-readystatechange-with-gc-after-video-removal.html: Added.
* http/tests/misc/resources/delete-frame-during-readystatechange-frame-with-gc-after-video-removal.html: Added.

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

8 years agoAX: Support aria-posinset/setsize
cfleizach@apple.com [Wed, 6 Mar 2013 01:47:47 +0000 (01:47 +0000)]
AX: Support aria-posinset/setsize
https://bugs.webkit.org/show_bug.cgi?id=109725

Reviewed by Tim Horton.

Source/WebCore:

Expose aria-setsize and aria-posinset through accessibility.
Right now only the Mac platform exposes them.

Test: platform/mac/accessibility/aria-setsize-posinset.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIASetSize):
(WebCore):
(WebCore::AccessibilityObject::supportsARIAPosInset):
(WebCore::AccessibilityObject::ariaSetSize):
(WebCore::AccessibilityObject::ariaPosInset):
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
* html/HTMLAttributeNames.in:

LayoutTests:

* platform/mac/accessibility/aria-setsize-posinset-expected.txt: Added.
* platform/mac/accessibility/aria-setsize-posinset.html: Added.

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

8 years agoRemove deprecated process suppression assertion SPI from WebKitSystemInterface
commit-queue@webkit.org [Wed, 6 Mar 2013 01:41:51 +0000 (01:41 +0000)]
Remove deprecated process suppression assertion SPI from WebKitSystemInterface
https://bugs.webkit.org/show_bug.cgi?id=111501

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-05
Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=111387 replaced all usage of
WKNSProcessInfoProcessAssertionWithTypes() with
-[NSProcessInfo beginSuspensionOfSystemBehaviors:].  Hence, remove
the now deprecated SPI.

* WebKitSystemInterface.h: Remove
WKNSProcessInfoProcessAssertionWithTypes and associated declarations.

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

8 years ago[chromium] Scroll deltas should be floats
aelias@chromium.org [Wed, 6 Mar 2013 01:29:55 +0000 (01:29 +0000)]
[chromium] Scroll deltas should be floats
https://bugs.webkit.org/show_bug.cgi?id=111465

Reviewed by James Robinson.

This converts the remaining scroll delta fields to floats so that
we no longer lose precision due to DIP conversion. The natural
type for deltas is WebFloatSize, which was missing, so I also created
that type based on the existing WebSize header.

Source/Platform:

* Platform.gypi:
* chromium/public/WebFloatSize.h: Added.
(WebKit):
(WebFloatSize):
(WebKit::WebFloatSize::isEmpty):
(WebKit::WebFloatSize::WebFloatSize):
(WebKit::WebFloatSize::operator=):
(WebKit::WebFloatSize::operator WebCore::FloatSize):
(WebKit::WebFloatSize::operator gfx::SizeF):
(WebKit::WebFloatSize::operator gfx::Vector2dF):
(WebKit::operator==):
(WebKit::operator!=):
* chromium/public/WebGestureCurveTarget.h:
(WebKit::WebGestureCurveTarget::scrollBy):
(WebGestureCurveTarget):
* chromium/public/WebInputHandlerClient.h:
(WebKit::WebInputHandlerClient::scrollByIfPossible):
(WebInputHandlerClient):

Source/WebKit/chromium:

* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::touchpadFlingScroll):
(WebKit::WebCompositorInputHandlerImpl::scrollBy):
* src/WebCompositorInputHandlerImpl.h:
(WebCompositorInputHandlerImpl):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::scrollBy):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/WebCompositorInputHandlerImplTest.cpp:
(MockWebInputHandlerClient):
(WebKit::TEST_F):

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

8 years agoUnreviewed apple rebaselines for r144837.
eae@chromium.org [Wed, 6 Mar 2013 01:19:20 +0000 (01:19 +0000)]
Unreviewed apple rebaselines for r144837.

* fast/invalid/017-expected.txt: Added.
* fast/invalid/018-expected.txt: Added.
* platform/chromium-mac/fast/invalid/017-expected.txt: Removed.
* platform/chromium-mac/fast/invalid/018-expected.txt: Removed.
* platform/mac-lion/tables/mozilla/bugs: Added.
* platform/mac-lion/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/mac-lion/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac-lion/tables/mozilla_expected_failures: Removed.
* platform/mac-wk2/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/mac-wk2/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac/fast/invalid/017-expected.txt: Removed.
* platform/mac/fast/invalid/018-expected.txt: Removed.
* platform/mac/tables/mozilla/bugs/bug113235-2-expected.txt:
* platform/mac/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/mac/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.

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

8 years agoUnreviewed chromium rebaselines for r144837.
eae@chromium.org [Wed, 6 Mar 2013 01:17:10 +0000 (01:17 +0000)]
Unreviewed chromium rebaselines for r144837.

* platform/chromium-linux/fast/invalid/017-expected.txt: Added.
* platform/chromium-linux/fast/invalid/018-expected.txt: Added.
* platform/chromium-linux/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/chromium-linux/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-linux/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
* platform/chromium-mac-lion/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-mac/fast/invalid/017-expected.txt: Added.
* platform/chromium-mac/fast/invalid/018-expected.txt: Added.
* platform/chromium-mac/tables/mozilla/bugs/bug113235-2-expected.txt: Removed.
* platform/chromium-mac/tables/mozilla/bugs/bug9024-expected.txt: Added.
* platform/chromium-win/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Added.
* platform/chromium/fast/invalid/017-expected.txt: Removed.
* platform/chromium/fast/invalid/018-expected.txt: Removed.
* platform/chromium/tables/mozilla/bugs/bug113235-2-expected.txt: Added.
* platform/chromium/tables/mozilla_expected_failures/bugs/bug3517-expected.txt: Replaced.

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

8 years agoSource/WebCore: [WinCairo] Support for cookies is incomplete
commit-queue@webkit.org [Wed, 6 Mar 2013 01:12:21 +0000 (01:12 +0000)]
Source/WebCore: [WinCairo] Support for cookies is incomplete
https://bugs.webkit.org/show_bug.cgi?id=110147

Expired and HttpOnly cookies no longer accessible from JavaScript.
Cookies set in JavaScript now have correct domain/path.

Patch by Peter Nelson <peter@peterdn.com> on 2013-03-05
Reviewed by Brent Fulgham.

Test: http/tests/cookies/http-get-cookie-set-in-js.html

* platform/network/curl/CookieJarCurl.cpp:
(WebCore):
(WebCore::addMatchingCurlCookie):
(WebCore::getNetscapeCookieFormat):
(WebCore::setCookiesFromDOM):
(WebCore::cookieRequestHeaderFieldValue):

LayoutTests: [WinCairo] Support for cookies is incomplete
https://bugs.webkit.org/show_bug.cgi?id=110147

Patch by Peter Nelson <peter@peterdn.com> on 2013-03-05
Reviewed by Brent Fulgham.

Re-enabled cookie tests for WinCairo.
Added test to check whether cookie set in HTTP response is accessible in JS.

* http/tests/cookies/http-get-cookie-set-in-js-expected.txt: Added.
* http/tests/cookies/http-get-cookie-set-in-js.html: Added.
* http/tests/cookies/resources/cookies-test-pre.js:
(clearAllCookies): Cookies set in JS now correctly cleared.
* platform/wincairo/TestExpectations:

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

8 years agoUnreviewed. AppleWin gardening.
roger_fong@apple.com [Wed, 6 Mar 2013 01:10:53 +0000 (01:10 +0000)]
Unreviewed. AppleWin gardening.

* platform/win/TestExpectations:
* platform/win/css3/filters/effect-reference-expected.txt:
* platform/win/css3/filters/effect-reference-hw-expected.txt:

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

8 years agoReset the values if there is a quota error
andersca@apple.com [Wed, 6 Mar 2013 01:08:33 +0000 (01:08 +0000)]
Reset the values if there is a quota error
https://bugs.webkit.org/show_bug.cgi?id=111500

Reviewed by Beth Dakin.

* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::didSetItem):
(WebKit::StorageAreaProxy::resetValues):
(WebKit):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):

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

8 years agoKeep track of pending value changes in StorageAreaProxy
andersca@apple.com [Wed, 6 Mar 2013 00:59:59 +0000 (00:59 +0000)]
Keep track of pending value changes in StorageAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=111496

Reviewed by Beth Dakin.

Add a HashCountedSet to keep track of the number of pending value
changes for a given key. If we get incoming storage events from other
processes while we have pending value changes, ignore the events.

* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::setItem):
(WebKit::StorageAreaProxy::didSetItem):
(WebKit::StorageAreaProxy::dispatchStorageEvent):
(WebKit::StorageAreaProxy::shouldApplyChangesForKey):
(WebKit):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):

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

8 years agoFix mac clang build with long long
alecflett@chromium.org [Wed, 6 Mar 2013 00:36:26 +0000 (00:36 +0000)]
Fix mac clang build with long long
https://bugs.webkit.org/show_bug.cgi?id=111495

Unreviewed fix for mac build.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore):

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

8 years agoFix mac clang build with long long
alecflett@chromium.org [Wed, 6 Mar 2013 00:35:02 +0000 (00:35 +0000)]
Fix mac clang build with long long
https://bugs.webkit.org/show_bug.cgi?id=111495

Unreviewed fix for mac build.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore):

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

8 years agoUnreviewed rebaseline of media/track/track-cue-rendering-*.html
scherkus@chromium.org [Wed, 6 Mar 2013 00:26:52 +0000 (00:26 +0000)]
Unreviewed rebaseline of media/track/track-cue-rendering-*.html
https://bugs.webkit.org/show_bug.cgi?id=111388

* platform/chromium-linux/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac-lion/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac-lion/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium/TestExpectations:

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

8 years agoAdd V8Document.h include when the V8 code generator creates a toV8(Document*) call.
acolwell@chromium.org [Wed, 6 Mar 2013 00:19:38 +0000 (00:19 +0000)]
Add V8Document.h include when the V8 code generator creates a toV8(Document*) call.
https://bugs.webkit.org/show_bug.cgi?id=111486

Reviewed by Adam Barth.

No new tests. This doesn't change user visible behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructor):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

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

8 years agoDashboard cleanup: move string utilities into their own namespace.
jparent@chromium.org [Wed, 6 Mar 2013 00:18:49 +0000 (00:18 +0000)]
Dashboard cleanup: move string utilities into their own namespace.

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

Reviewed by Ojan Vafai.

One of many pieces to clean up dashboard_base.

Moves string utility functions into separate file (string.js) and into their own namespace rather than cluttering up the global scope.

* TestResultServer/static-dashboards/aggregate_results.html:
* TestResultServer/static-dashboards/dashboard_base.js:
(isTreeMap):
(isFlakinessDashboard):
* TestResultServer/static-dashboards/flakiness_dashboard.html:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
(determineWKPlatform):
(chromiumPlatform):
(platformAndBuildType):
(substringList):
(individualTestsForSubstringList):
(filterBugs):
(populateExpectationsData):
(processMissingTestsWithExpectations):
(processMissingAndExtraExpectations):
(htmlForSingleTestRow):
(.dummyNode.onload):
(expectationsTitle):
* TestResultServer/static-dashboards/run-embedded-unittests.html:
* TestResultServer/static-dashboards/run-unittests.html:
* TestResultServer/static-dashboards/string.js: Added.
* TestResultServer/static-dashboards/timeline_explorer.html:
* TestResultServer/static-dashboards/treemap.html:

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

8 years agoObjective-C API: JSValue should implement init and return nil in exceptional cases
mhahnenberg@apple.com [Wed, 6 Mar 2013 00:16:30 +0000 (00:16 +0000)]
Objective-C API: JSValue should implement init and return nil in exceptional cases
https://bugs.webkit.org/show_bug.cgi?id=111487

Reviewed by Darin Adler.

* API/JSValue.mm:
(-[JSValue init]): We return nil here because there is no way to get the instance into a coherent state
without a JSContext.
(-[JSValue initWithValue:inContext:]): Similarly, we should also return nil here if either of the arguments is 0.

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

8 years ago[EFL] Build break with latest EFL libraries
ryuan.choi@samsung.com [Wed, 6 Mar 2013 00:15:43 +0000 (00:15 +0000)]
[EFL] Build break with latest EFL libraries
https://bugs.webkit.org/show_bug.cgi?id=111028

Reviewed by Dirk Pranke.

.:

In latest EFL trunk, include path of ecore sub modules are changed from
ecore-1 to ecore-XXX-1.
So, this patch adds missing ECORE_XXX_INCLUDE_DIRS.

* Source/cmake/FindEcore.cmake: Added additional path suffixes to find include directories of ecore-XXX
* Source/cmake/FindElementary.cmake: Checked Ecore_Con dependency which Elementary requires.
* Source/cmake/OptionsEfl.cmake: Made Imf and Imf_Evas mandatory.

Source/WebKit:

* PlatformEfl.cmake: Added ECORE_X_INCLUDE_DIRS.

Source/WebKit2:

* PlatformEfl.cmake: Added ECORE_XXX_INCLUDE_DIRS.

Source/WTF:

* wtf/PlatformEfl.cmake: Added ECORE_IMF_INCLUDE_DIRS.

Tools:

* MiniBrowser/efl/CMakeLists.txt: Added ECORE_XXX_INCLUDE_DIRS.
* TestWebKitAPI/PlatformEfl.cmake: Ditto.
* WebKitTestRunner/PlatformEfl.cmake: Ditto.

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

8 years agoFix default background of a dragged image.
shawnsingh@chromium.org [Wed, 6 Mar 2013 00:11:28 +0000 (00:11 +0000)]
Fix default background of a dragged image.
https://bugs.webkit.org/show_bug.cgi?id=110512

Reviewed by Tony Chang.

.:

* ManualTests/drag-background-with-padding.html: Added.

Source/WebCore:

Transparent background color (particularly visible in the padding
of an element) was not being respected. The solution is to
initially fill the drag image with transparent instead of white,
so that any color background works correctly. This patch does not
affect Apple Mac or Win platforms, given that this part of the
code is #if guarded from those platforms.

Manual test added:
  ManualTests/drag-background-with-padding.html

Infrastructure for retrieving the drag image for pixel testing
does not yet exist.

* page/Frame.cpp:
(WebCore::Frame::nodeImage):

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

8 years agoIncrease number of WinEWS iterations to 20.
roger_fong@apple.com [Wed, 6 Mar 2013 00:10:49 +0000 (00:10 +0000)]
Increase number of WinEWS iterations to 20.
Don't reboot after each iteration set.
Make EWS bots just build temporarily so that the queue catches up again.

* EWSTools/start-queue-win.sh:
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(WinEWS):

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

8 years agoUnreviewed gardening.
rafaelw@chromium.org [Wed, 6 Mar 2013 00:05:14 +0000 (00:05 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: /inspector/debugger/debugger-script-preprocessor.html

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

8 years agoUse a named parameter for whether a quota error ocurred or not
andersca@apple.com [Wed, 6 Mar 2013 00:01:46 +0000 (00:01 +0000)]
Use a named parameter for whether a quota error ocurred or not
https://bugs.webkit.org/show_bug.cgi?id=111490

Reviewed by Beth Dakin.

This is clearer than setItem returning true on error.
Also, actually set the item in the storage map.

* UIProcess/Storage/StorageManager.cpp:
(StorageManager::StorageArea):
(WebKit::StorageManager::StorageArea::setItem):
(WebKit::StorageManager::setItem):

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

8 years agoASSERTION FAILED: i < size(), UNKNOWN in WebCore::RenderTableSection::layout
eae@chromium.org [Tue, 5 Mar 2013 23:59:52 +0000 (23:59 +0000)]
ASSERTION FAILED: i < size(), UNKNOWN in WebCore::RenderTableSection::layout
https://bugs.webkit.org/show_bug.cgi?id=108838

Source/WebCore:

Reviewed by Levi Weintraub.

Ensure that RenderTable::recalcSections is called when moving a
TableSection by calling setNeedsSectionRecalc in addChild for
TableSections.

Test: fullscreen/full-screen-table-section.html

* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):

LayoutTests:

Reviewed by Levi Weintraub.

Add test for calling requestFullscreen on an element with a
table-section display type.

* fullscreen/full-screen-table-section-expected.txt: Added.
* fullscreen/full-screen-table-section.html: Added.

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

8 years agoUnreviewed. Skip tests on Windows to make EWS bots happier.
roger_fong@apple.com [Tue, 5 Mar 2013 23:57:41 +0000 (23:57 +0000)]
Unreviewed. Skip tests on Windows to make EWS bots happier.

* platform/win/TestExpectations:

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

8 years agoUnreviewed gardening.
rafaelw@chromium.org [Tue, 5 Mar 2013 23:50:39 +0000 (23:50 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: fullscreen/full-screen-iframe-allowed-prexied.

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

8 years agoUpgrade ANGLE to r1987
kbr@google.com [Tue, 5 Mar 2013 23:50:06 +0000 (23:50 +0000)]
Upgrade ANGLE to r1987
https://bugs.webkit.org/show_bug.cgi?id=111381

Reviewed by Dean Jackson.

Source/ThirdParty/ANGLE:

* include/GLSLANG/ShaderLang.h:
* src/common/version.h:
* src/compiler/Compiler.cpp:
(TCompiler::TCompiler):
(TCompiler::Init):
(TCompiler::compile):
* src/compiler/ParseHelper.h:
(TParseContext):
* src/compiler/ShHandle.h:
(TCompiler):
* src/compiler/ShaderLang.cpp:
(ShInitBuiltInResources):
* src/compiler/UnfoldShortCircuit.cpp:
(sh::UnfoldShortCircuit::visitSelection):
* src/compiler/glslang.l:
* src/compiler/glslang.y:
* src/compiler/glslang_lex.cpp:
(glslang_scan):
* src/compiler/glslang_tab.cpp:
     Updated ANGLE to r1987.

Source/WebCore:

Covered by existing tests. Ran WebGL conformance tests in Safari
to ensure correct operation of patch.

* platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::initializeANGLE):
    Changed all ports to query for highp support in fragment
    shaders and conditionally enable it in ANGLE shader translator.

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

8 years agoUse new assertion API for process suppression on Mac
commit-queue@webkit.org [Tue, 5 Mar 2013 23:46:11 +0000 (23:46 +0000)]
Use new assertion API for process suppression on Mac
https://bugs.webkit.org/show_bug.cgi?id=111387

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-05
Reviewed by Alexey Proskuryakov.

Source/WebKit2:

* Shared/ChildProcess.h:
(WebKit::ChildProcess::processSuppressionEnabled): Rename
m_processVisibleAssertion to m_processSuppressionAssertion.
* Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::setProcessSuppressionEnabled): Ditto. And,
replace calls to WKNSProcessInfoProcessAssertionWithTypes() with call to
-[NSProcessInfo beginSuspensionOfSystemBehaviors:].

WebKitLibraries:

Add WKProcessSuppressionSystemBehaviors constant for use in WebKit2 to
take a process suppression assertion.

* WebKitSystemInterface.h:

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

8 years agoIndexedDB: Add IDBBackingStoreTest
alecflett@chromium.org [Tue, 5 Mar 2013 23:33:34 +0000 (23:33 +0000)]
IndexedDB: Add IDBBackingStoreTest
https://bugs.webkit.org/show_bug.cgi?id=111233

Reviewed by Adam Barth.

Source/WebCore:

These are tweaks to make IDBBackingStore more easily testable.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::IDBBackingStore): Allow use without a backing store.

Source/WebKit/chromium:

Add some really simple IDBBackingStore tests
as a seed for additional tests later.

* WebKit.gypi:
* tests/IDBBackingStoreTest.cpp: Added.

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

8 years agoMove storageType() to StorageAreaProxy
andersca@apple.com [Tue, 5 Mar 2013 23:31:54 +0000 (23:31 +0000)]
Move storageType() to StorageAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=111488

Reviewed by Andreas Kling.

* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::StorageAreaProxy):
(WebKit::StorageAreaProxy::storageType):
(WebKit::StorageAreaProxy::disabledByPrivateBrowsingInFrame):
* WebProcess/Storage/StorageAreaProxy.h:
(StorageAreaProxy):
* WebProcess/Storage/StorageNamespaceProxy.cpp:
* WebProcess/Storage/StorageNamespaceProxy.h:

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

8 years agoRemove old Mac test expectations for the bug 106412.
rniwa@webkit.org [Tue, 5 Mar 2013 23:31:07 +0000 (23:31 +0000)]
Remove old Mac test expectations for the bug 106412.

* platform/mac/TestExpectations:

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

8 years ago[chromium] Move check for threaded compositing from WebCompositorSupport to Platform
jamesr@google.com [Tue, 5 Mar 2013 23:15:23 +0000 (23:15 +0000)]
[chromium] Move check for threaded compositing from WebCompositorSupport to Platform
https://bugs.webkit.org/show_bug.cgi?id=111386

Reviewed by Adrienne Walker.

Source/Platform:

This moves the query for if threaded compositing is enabled from WebCompositorSupport
to Platform. This is part of an effort to remove statefulness on WebCompositorSupport
and because it's much easier to override Platform functions for different tests.

* chromium/public/Platform.h:
(WebKit::Platform::isThreadedCompositingEnabled):
(Platform):
* chromium/public/WebCompositorSupport.h:

Source/WebCore:

This moves checks for whether threaded compositing is enabled from WebCompositorSupport
to Platform. In the case of Canvas2DLayerBridge, the check is moved completely out of
the class to make it easier for tests to specify the threaded configuration to use in the test.

* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
* platform/graphics/chromium/Canvas2DLayerBridge.h:
(WebCore::Canvas2DLayerBridge::create):
(Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBuffer::DrawingBuffer):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::createAcceleratedCanvas):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):
(WebKit::WebViewImpl::scheduleAnimation):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit::WebViewImpl::scheduleComposite):
* tests/Canvas2DLayerBridgeTest.cpp:
(Canvas2DLayerBridgeTest::fullLifecycleTest):
* tests/Canvas2DLayerManagerTest.cpp:
(FakeCanvas2DLayerBridge::FakeCanvas2DLayerBridge):

Tools:

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::initialize):

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

8 years agoSplit up the storage event dispatch functions further
andersca@apple.com [Tue, 5 Mar 2013 23:04:10 +0000 (23:04 +0000)]
Split up the storage event dispatch functions further
https://bugs.webkit.org/show_bug.cgi?id=111482

Reviewed by Beth Dakin.

Add new functions for dispatching storage events to a set of frames.

* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::dispatchStorageEvent):
* storage/StorageEventDispatcher.cpp:
(WebCore::StorageEventDispatcher::dispatchSessionStorageEvents):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEvents):
(WebCore):
(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
* storage/StorageEventDispatcher.h:
(WebCore):
(StorageEventDispatcher):

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

8 years agoCrash when ImageLoader deletes Element inside SVGImageElement
schenney@chromium.org [Tue, 5 Mar 2013 22:53:57 +0000 (22:53 +0000)]
Crash when ImageLoader deletes Element inside SVGImageElement
https://bugs.webkit.org/show_bug.cgi?id=111085

Reviewed by Abhishek Arya.

Source/WebCore:

Elements with ImageLoader objects associated with them may have their
final reference held by the ImageLoader (to allow events to be sent
and handled). Any call on Element that causes the ImageLoader to
dispatch events might then result in the final deref of the Element
itself, thus leaving all the Element's "this" pointers up the stack
pointing to invalid memory.

This change puts the deref of the Element on a timer so that, if the
deref is called via a method on Element, the call stack will unwind
before the deref occurs.

Test: svg/custom/image-with-attr-change-after-delete-crash.html

* loader/ImageLoader.cpp:
(WebCore::ImageLoader::ImageLoader): Initialize a timer
(WebCore::ImageLoader::updatedHasPendingEvent): Put deref of the
  element on a oneShotTimer, with appropriate assertions and checks to
  ensure we only ref/deref once.
(WebCore::ImageLoader::timerFired): Deref the element when the timer fires.
* loader/ImageLoader.h:
(ImageLoader): Define a timer for controlling deref of the element.

LayoutTests:

* svg/custom/image-with-attr-change-after-delete-crash-expected.txt: Added.
* svg/custom/image-with-attr-change-after-delete-crash.html: Added.

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

8 years agoWeb Inspector: identify reflection layers in LayerTreeAgent
graouts@apple.com [Tue, 5 Mar 2013 22:48:54 +0000 (22:48 +0000)]
Web Inspector: identify reflection layers in LayerTreeAgent
https://bugs.webkit.org/show_bug.cgi?id=111419

Source/WebCore:

We add a new property "isReflection" to the Layer objects returned
to the front-end to indicate whether the layer was created to host
the reflection for an element. When this new property is true, the
"nodeId" property is set to point to the reflected element's node
id, since there is no node per-se directly associated with this layer.
We also change the "bounds" property to return absolute page coordinates
such that the front-end can use this information to highlight that
region in the page since metrics would otherwise be unavailable.

Reviewed by Dean Jackson.

Test: inspector-protocol/layers/layers-reflected-content.html

* inspector/Inspector.json:
* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

LayoutTests:

New test for reflection layers and an updated output for the
existing layersForNode() test since we changed the coordinates
for the "bounds" property to be absolute instead of local.

Reviewed by Dean Jackson.

* inspector-protocol/layers/layers-for-node-expected.txt:
* inspector-protocol/layers/layers-reflected-content-expected.txt: Added.
* inspector-protocol/layers/layers-reflected-content.html: Added.

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

8 years ago[WinCairo] Compile fix after r144024.
commit-queue@webkit.org [Tue, 5 Mar 2013 22:47:02 +0000 (22:47 +0000)]
[WinCairo] Compile fix after r144024.
https://bugs.webkit.org/show_bug.cgi?id=111306

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-03-05
Reviewed by James Robinson.

* page/scrolling/ScrollingCoordinator.cpp: Added guard for USE(ACCELERATED_COMPOSITING).
* page/scrolling/ScrollingCoordinator.h: Added guard for USE(ACCELERATED_COMPOSITING).

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

8 years agoCopy dictionary to the external storage before running layout test on android
commit-queue@webkit.org [Tue, 5 Mar 2013 22:46:57 +0000 (22:46 +0000)]
Copy dictionary to the external storage before running layout test on android
https://bugs.webkit.org/show_bug.cgi?id=111480

Patch by Min Qin <qinmin@chromium.org> on 2013-03-05
Reviewed by Adam Barth.

TestWebKitPlatformSupport now needs to read an external dictionary file.
This file does not exist on the device. We need to copy it before running layout tests.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidDriver._setup_md5sum_and_push_data_if_needed):
(ChromiumAndroidDriver._push_platform_resources):

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

8 years agokeydown and keyup events have zero keycode for some numeric pad keys under Chromium...
commit-queue@webkit.org [Tue, 5 Mar 2013 22:44:01 +0000 (22:44 +0000)]
keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-03-05
Reviewed by Ojan Vafai.

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-03-05
Reviewed by Ojan Vafai.

* WebKit.gypi:
* tests/KeyCodeConversionTestGtk.cpp: Added.
(WebCore):
(WebCore::TEST):

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

8 years agoIndexedDB: Properly refactor frontend/backend code by #includes
alecflett@chromium.org [Tue, 5 Mar 2013 22:35:00 +0000 (22:35 +0000)]
IndexedDB: Properly refactor frontend/backend code by #includes
https://bugs.webkit.org/show_bug.cgi?id=110653

Reviewed by Dimitri Glazkov.

Source/WebCore:

IndexedDB has a distinct backend and frontend, with well defined
*Interface / *Callbacks classes distinguishing them, respectively.

This makes sure that the frontend and backend do not include each
other and fixes build problems that occurred as a result.

Specifically this moves enums out of IDBCursor and IDBTransaction
into IndexedDB.h in a new WebCore::IndexedDB namespace.

No new tests, as this is just a refactor.

Source/WebKit/chromium:

Clean up the frontend/backend WebIDB* implementations to
match the changes to webkit.

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

8 years agoClear associated cache partitions when deleting origins' cache
jpfau@apple.com [Tue, 5 Mar 2013 22:30:06 +0000 (22:30 +0000)]
Clear associated cache partitions when deleting origins' cache
https://bugs.webkit.org/show_bug.cgi?id=111383

Reviewed by Maciej Stachowiak.

Source/WebCore:

Clear the cache partitions associated with the origin being cleared.

Not possible to test with current automated test tools, must be tested manually.

* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::removeResourcesWithOrigin):

Source/WebKit2:

Clear the cache partitions associated with the origin being cleared.

* WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:
(WebKit):
(WebKit::partitionName):
(WebKit::WebResourceCacheManager::clearCFURLCacheForHostNames):

WebKitLibraries:

* WebKitSystemInterface.h:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceMountainLion.a:

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

8 years agoRebaseline text output for opaque GraphicsLayers
alokp@chromium.org [Tue, 5 Mar 2013 22:25:15 +0000 (22:25 +0000)]
Rebaseline text output for opaque GraphicsLayers
https://bugs.webkit.org/show_bug.cgi?id=109507

Unreviewed rebaseline.

* compositing/contents-opaque/contents-opaque-background-color-expected.txt:
* compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt:
* compositing/contents-opaque/contents-opaque-layer-transform-expected.txt:
* platform/chromium/TestExpectations:
* platform/chromium/compositing/contents-opaque/contents-opaque-background-color-expected.txt: Copied from LayoutTests/compositing/contents-opaque/contents-opaque-background-color-expected.txt.
* platform/chromium/compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt: Copied from LayoutTests/compositing/contents-opaque/contents-opaque-layer-opacity-expected.txt.
* platform/chromium/compositing/contents-opaque/contents-opaque-layer-transform-expected.txt: Copied from LayoutTests/compositing/contents-opaque/contents-opaque-layer-transform-expected.txt.
* platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Renamed from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt.
* platform/chromium/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Renamed from LayoutTests/platform/chromium/platform/chromium/virtual/softwarecompositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt.
* platform/efl/TestExpectations:
* platform/efl/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:

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

8 years agoediting/pasteboard/paste-text-005.html, paste-text-006.html, and paste-text-007.html...
rniwa@webkit.org [Tue, 5 Mar 2013 22:18:53 +0000 (22:18 +0000)]
editing/pasteboard/paste-text-005.html, paste-text-006.html, and paste-text-007.html should be dump-as-markup tests
https://bugs.webkit.org/show_bug.cgi?id=111466

Reviewed by Levi Weintraub.

* editing/pasteboard/paste-text-005-expected.txt: Added.
* editing/pasteboard/paste-text-005.html:
* editing/pasteboard/paste-text-006-expected.txt: Added.
* editing/pasteboard/paste-text-006.html:
* editing/pasteboard/paste-text-007-expected.txt: Added.
* editing/pasteboard/paste-text-007.html:
* platform/chromium-linux/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/chromium-linux/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/chromium-linux/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/chromium-mac-lion/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/chromium-mac-lion/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/chromium-mac-lion/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/chromium-mac-snowleopard/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/chromium-mac/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/chromium-mac/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/chromium-mac/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-006-expected.txt: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-text-007-expected.txt: Removed.
* platform/chromium/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/chromium/editing/pasteboard/paste-text-006-expected.txt: Removed.
* platform/chromium/editing/pasteboard/paste-text-007-expected.txt: Removed.
* platform/gtk/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/gtk/editing/pasteboard/paste-text-006-expected.txt: Removed.
* platform/gtk/editing/pasteboard/paste-text-007-expected.txt: Removed.
* platform/mac/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/mac/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/mac/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/mac/editing/pasteboard/paste-text-006-expected.txt: Removed.
* platform/mac/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/mac/editing/pasteboard/paste-text-007-expected.txt: Removed.
* platform/qt/editing/pasteboard/paste-text-005-expected.png: Removed.
* platform/qt/editing/pasteboard/paste-text-005-expected.txt: Removed.
* platform/qt/editing/pasteboard/paste-text-006-expected.png: Removed.
* platform/qt/editing/pasteboard/paste-text-006-expected.txt: Removed.
* platform/qt/editing/pasteboard/paste-text-007-expected.png: Removed.
* platform/qt/editing/pasteboard/paste-text-007-expected.txt: Removed.
* platform/win/editing/pasteboard/paste-text-005-expected.txt: Removed.

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

8 years agoInline min/maxInstrinsicLogicalWidth functions
ojan@chromium.org [Tue, 5 Mar 2013 22:04:52 +0000 (22:04 +0000)]
Inline min/maxInstrinsicLogicalWidth functions
https://bugs.webkit.org/show_bug.cgi?id=111399

Reviewed by Tony Chang.

Turns out these functions don't need to be public and only
have one caller. This patch is in preparation for supporting
intrinsic widths on tables, which will need to pass in the
border and padding width as an argument.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::fillAvailableMeasure):
(WebCore::RenderBox::computeIntrinsicLogicalWidthUsing):
(WebCore::RenderBox::computeLogicalWidthInRegionUsing):
* rendering/RenderBox.h:

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

8 years agoediting/pasteboard/paste-table-003.html should be a dump-as-text test
rniwa@webkit.org [Tue, 5 Mar 2013 22:04:23 +0000 (22:04 +0000)]
editing/pasteboard/paste-table-003.html should be a dump-as-text test
https://bugs.webkit.org/show_bug.cgi?id=111400

Reviewed by Levi Weintraub.

Convert the test to a dump-as-text test. The output is much easier to understand now.
Also moved the test description out of the root element so that it won't be repeated
multiple times in the output.

* editing/pasteboard/paste-table-003-expected.txt: Added.
* editing/pasteboard/paste-table-003.html:
* platform/chromium-linux/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/chromium-mac-lion/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/chromium-mac-snowleopard/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/chromium-mac/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/paste-table-003-expected.txt: Removed.
* platform/chromium/editing/pasteboard/paste-table-003-expected.txt: Removed.
* platform/gtk/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/gtk/editing/pasteboard/paste-table-003-expected.txt: Removed.
* platform/mac/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/mac/editing/pasteboard/paste-table-003-expected.txt: Removed.
* platform/qt/editing/pasteboard/paste-table-003-expected.png: Removed.
* platform/qt/editing/pasteboard/paste-table-003-expected.txt: Removed.

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

8 years agoCue line-height property shouldn't be inherited from the video element
vcarbune@chromium.org [Tue, 5 Mar 2013 22:02:27 +0000 (22:02 +0000)]
Cue line-height property shouldn't be inherited from the video element
https://bugs.webkit.org/show_bug.cgi?id=111262

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-cue-rendering-on-resize.html

* css/mediaControls.css:
(video::-webkit-media-text-track-container): Set the default font size
and family using the "font" property to also reset the line-height property.

LayoutTests:

* media/track/captions-webvtt/captions-snap-to-lines-set.vtt: Updated.
* media/track/track-cue-rendering-on-resize-expected.txt: Added.
* media/track/track-cue-rendering-on-resize.html: Added.

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

8 years agoIndexedDB: Remove some unused binding code
jsbell@chromium.org [Tue, 5 Mar 2013 21:48:34 +0000 (21:48 +0000)]
IndexedDB: Remove some unused binding code
https://bugs.webkit.org/show_bug.cgi?id=111463

Reviewed by Adam Barth.

IDBRequest got a custom V8 getter for |request| to help diagnose an issue, but the
root cause was found/fixed (http://wkbug.com/110916 and http://wkbug.com/110206) so
remove it. Also, IDBKey was marked ScriptWrappable but it is now explicitly converted
to a ScriptValue before it gets anywhere near the binding code, so remove that too.
Finally, createIDBKeyFromValue doesn't need to be exposed from IDBBindingUtilities.

No new tests - just removing dead code.

* Modules/indexeddb/IDBKey.h: No need for ScriptWrappable.
* Modules/indexeddb/IDBRequest.idl: Remove custom binding (root cause of bug found).
* WebCore.gypi: Ditto.
* bindings/js/IDBBindingUtilities.h: Don't expose internal createIDBKeyFromValue().
* bindings/v8/IDBBindingUtilities.h: Ditto.
* bindings/v8/custom/V8IDBRequestCustom.cpp: Removed.

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

8 years agoFix cast-align warning in ASCIIFastPath.h on ARM
ossy@webkit.org [Tue, 5 Mar 2013 21:41:22 +0000 (21:41 +0000)]
Fix cast-align warning in ASCIIFastPath.h on ARM
https://bugs.webkit.org/show_bug.cgi?id=111436

Reviewed by Benjamin Poulain.

* wtf/text/ASCIIFastPath.h:
(WTF::charactersAreAllASCII):

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

8 years agoUnreviewed, rolling out r144798.
dpranke@chromium.org [Tue, 5 Mar 2013 21:38:29 +0000 (21:38 +0000)]
Unreviewed, rolling out r144798.
http://trac.webkit.org/changeset/144798
https://bugs.webkit.org/show_bug.cgi?id=111478

"broke chromium windows build" (Requested by dpranke on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-05

Source/WebCore:

* GNUmakefile.list.am:
* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::Cursor::continueFunction):
(WebCore::objectStoreCursorOptions):
(WebCore::indexCursorOptions):
(WebCore::IDBBackingStore::openObjectStoreCursor):
(WebCore::IDBBackingStore::openObjectStoreKeyCursor):
(WebCore::IDBBackingStore::openIndexKeyCursor):
(WebCore::IDBBackingStore::openIndexCursor):
* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::create):
(WebCore::IDBCursor::IDBCursor):
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::stringToDirection):
(WebCore::IDBCursor::directionToString):
* Modules/indexeddb/IDBCursor.h:
(IDBCursor):
* Modules/indexeddb/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
(WebCore::IDBCursorBackendImpl::deleteFunction):
(WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):
* Modules/indexeddb/IDBCursorBackendImpl.h:
(WebCore::IDBCursorBackendImpl::create):
(WebCore::IDBCursorBackendImpl::value):
(IDBCursorBackendImpl):
* Modules/indexeddb/IDBCursorBackendInterface.h:
(WebCore):
* Modules/indexeddb/IDBCursorWithValue.cpp:
(WebCore::IDBCursorWithValue::create):
(WebCore::IDBCursorWithValue::IDBCursorWithValue):
* Modules/indexeddb/IDBCursorWithValue.h:
(IDBCursorWithValue):
* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::transaction):
* Modules/indexeddb/IDBDatabase.h:
* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::GetOperation::create):
(WebCore::GetOperation::GetOperation):
(GetOperation):
(WebCore::OpenCursorOperation::create):
(WebCore::OpenCursorOperation::OpenCursorOperation):
(OpenCursorOperation):
(WebCore::IDBDatabaseBackendImpl::createObjectStore):
(WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
(WebCore::IDBDatabaseBackendImpl::createIndex):
(WebCore::IDBDatabaseBackendImpl::deleteIndex):
(WebCore::IDBDatabaseBackendImpl::get):
(WebCore::GetOperation::perform):
(WebCore::IDBDatabaseBackendImpl::put):
(WebCore::PutOperation::perform):
(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::openCursor):
(WebCore::OpenCursorOperation::perform):
(WebCore::CountOperation::perform):
(WebCore::IDBDatabaseBackendImpl::deleteRange):
(WebCore::DeleteRangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::clear):
(WebCore::IDBDatabaseBackendImpl::transactionStarted):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndAbortFired):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndCompleteFired):
(WebCore::IDBDatabaseBackendImpl::createTransaction):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseBackendInterface.h:
* Modules/indexeddb/IDBFactory.h:
* Modules/indexeddb/IDBIndex.cpp:
(WebCore):
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::openKeyCursor):
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore):
(WebCore::IDBObjectStore::openCursor):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setCursorDetails):
(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):
* Modules/indexeddb/IDBRequest.h:
(IDBRequest):
* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::create):
(WebCore::IDBTransaction::IDBTransaction):
(WebCore::IDBTransaction::stringToMode):
(WebCore::IDBTransaction::modeToString):
* Modules/indexeddb/IDBTransaction.h:
(WebCore::IDBTransaction::isReadOnly):
(WebCore::IDBTransaction::isVersionChange):
(IDBTransaction):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::create):
(WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
* Modules/indexeddb/IDBTransactionBackendImpl.h:
(IDBTransactionBackendImpl):
(WebCore::IDBTransactionBackendImpl::mode):
* Modules/indexeddb/IDBTransactionCoordinator.cpp:
(WebCore::IDBTransactionCoordinator::processStartedTransactions):
(WebCore::IDBTransactionCoordinator::canRunTransaction):
* Modules/indexeddb/IndexedDB.h: Removed.
* Target.pri:
* WebCore.gypi:

Source/WebKit/chromium:

* src/AssertMatchingEnums.cpp:
* src/IDBDatabaseBackendProxy.cpp:
(WebKit::IDBDatabaseBackendProxy::openCursor):
* src/IDBDatabaseBackendProxy.h:
(IDBDatabaseBackendProxy):
* src/WebIDBCallbacksImpl.cpp:
* src/WebIDBDatabaseImpl.cpp:
(WebKit::WebIDBDatabaseImpl::openCursor):
* tests/IDBAbortOnCorruptTest.cpp:
* tests/IDBDatabaseBackendTest.cpp:
* tests/IDBFakeBackingStore.h:

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

8 years agoUnreviewed gardening.
zandobersek@gmail.com [Tue, 5 Mar 2013 21:37:34 +0000 (21:37 +0000)]
Unreviewed gardening.

* platform/efl/TestExpectations: Unskipping the fast/workers/shared-worker-load-error.html layout test
and adding a flaky timeout expectation for it. Looking for testing data from the EFL port on this test.
* platform/gtk-wk1/TestExpectations: Removed an expectation for a test that was removed in r144624.
* platform/gtk/TestExpectations: Adding failure expectations for tests introduced in r144714 and r144747.

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

8 years agoMediaStream API: Allow local and remote descriptions to be accessed after close
tommyw@google.com [Tue, 5 Mar 2013 21:15:53 +0000 (21:15 +0000)]
MediaStream API: Allow local and remote descriptions to be accessed after close
https://bugs.webkit.org/show_bug.cgi?id=111437

Reviewed by Adam Barth.

Source/WebCore:

It's quite clear in the standard that the getters should still return the old value.
Also overhauling the state setters a bit to check if the new state is different.

Existing tests expanded to cover patch.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::localDescription):
(WebCore::RTCPeerConnection::remoteDescription):
(WebCore::RTCPeerConnection::changeSignalingState):
(WebCore::RTCPeerConnection::changeIceGatheringState):
(WebCore::RTCPeerConnection::changeIceConnectionState):

LayoutTests:

Expanding tests to check the new behaviour.

* fast/mediastream/RTCPeerConnection-localDescription-expected.txt:
* fast/mediastream/RTCPeerConnection-localDescription.html:
* fast/mediastream/RTCPeerConnection-remoteDescription-expected.txt:
* fast/mediastream/RTCPeerConnection-remoteDescription.html:

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

8 years agoMultiple html5lib Layout Tests are slow since r144032
eric@webkit.org [Tue, 5 Mar 2013 21:14:17 +0000 (21:14 +0000)]
Multiple html5lib Layout Tests are slow since r144032
https://bugs.webkit.org/show_bug.cgi?id=110876

Reviewed by Tony Chang.

Skip the html5lib tests when in debug mode.  The -data variants
almost always timeout due to v8 boot-up time:
https://code.google.com/p/v8/issues/detail?id=2567

These timeouts sometimes manifest as failures, and we've even
seen crashes (with empty stacks!?) of these tests on Win and Mac in Debug, so
skipping them until they run in a reasonable time and can
be debugged further.

* platform/chromium/TestExpectations:

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

8 years agoUnreviewed gardening.
rafaelw@chromium.org [Tue, 5 Mar 2013 21:12:15 +0000 (21:12 +0000)]
Unreviewed gardening.

* platform/chromium/TestExpectations: expectations for transitions/transitions-parsing.html

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

8 years agoAdd FrameLoaderClient::didAccessInitialDocument
creis@chromium.org [Tue, 5 Mar 2013 21:11:10 +0000 (21:11 +0000)]
Add FrameLoaderClient::didAccessInitialDocument
https://bugs.webkit.org/show_bug.cgi?id=107963

Source/WebCore:

Notifies the FrameLoaderClient if another page accesses the
initial empty document of a main frame.  In this case, it is
no longer safe to display the provisional URL.

Only takes effect for PLATFORM(CHROMIUM), since no other platforms
listen to the notification.

Reviewed by Adam Barth.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::setSecurityToken):
    Use default token for initial document.
* bindings/v8/custom/V8DOMWindowCustom.cpp:
    Notify loader if initial document is accessed.
(WebCore::V8DOMWindow::namedSecurityCheck):
(WebCore::V8DOMWindow::indexedSecurityCheck):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::didAccessInitialDocument):
(WebCore):
* loader/FrameLoader.h:
(FrameLoader):
* loader/FrameLoaderClient.h:
(FrameLoaderClient):
(WebCore::FrameLoaderClient::didAccessInitialDocument):

Source/WebKit/chromium:

Notifies WebFrameClient if another page accesses the initial
empty document of a main frame.  In this case, it is no longer
safe to display the provisional URL.

Reviewed by Adam Barth.

* public/WebFrameClient.h:
(WebFrameClient):
(WebKit::WebFrameClient::didAccessInitialDocument):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::didAccessInitialDocument):
(WebKit):
* src/FrameLoaderClientImpl.h:
(FrameLoaderClientImpl):
* tests/WebFrameTest.cpp:

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

8 years ago[BlackBerry] Fix assertion in CookieManager::getBackingStoreCookies
commit-queue@webkit.org [Tue, 5 Mar 2013 21:08:29 +0000 (21:08 +0000)]
[BlackBerry] Fix assertion in CookieManager::getBackingStoreCookies
https://bugs.webkit.org/show_bug.cgi?id=111468

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-03-05
Reviewed by Rob Buis.
Internally reviewed by Konrad Piascik.

The assert in getBackingStoreCookies could be giving out false positives now
that we have our fixes for cookie loading in PR 286189. The cookie store could
be half loaded if the first cookie get/set call happens before the db is fully loaded.
A full webkit sync call to reload the database will cause the assert to be hit.

Safer to flush everything out and try again.

* platform/blackberry/CookieManager.cpp:
(WebCore::CookieManager::getBackingStoreCookies):

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

8 years ago[chromium] DRT crashes in an Aura/Win build
dpranke@chromium.org [Tue, 5 Mar 2013 20:57:23 +0000 (20:57 +0000)]
[chromium] DRT crashes in an Aura/Win build
https://bugs.webkit.org/show_bug.cgi?id=111394

Reviewed by Tony Chang.

When building (and running) with use_aura=1, we assume that
we're using the default theme engine, but DRT creates the
DRTWin theme engine and overwrites the default, leading to crashes
in basically every test from the mismatch.

This fix gets us down to at least "lots of crashes" :).

* DumpRenderTree/chromium/TestShellWin.cpp:
(platformInit):

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

8 years agoCompactHTMLToken does not need an XSSInfo pointer
tonyg@chromium.org [Tue, 5 Mar 2013 20:44:37 +0000 (20:44 +0000)]
CompactHTMLToken does not need an XSSInfo pointer
https://bugs.webkit.org/show_bug.cgi?id=111423

Reviewed by Eric Seidel.

The CompactHTMLToken should remain as small as possible because it is copied. This shrinks the size by one pointer
by moving a relatively uncommon attribute out to its own Vector.

No new tests because no new functionality.

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::checkThatXSSInfosAreSafeToSendToAnotherThread):
(WebCore):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
* html/parser/BackgroundHTMLParser.h:
(BackgroundHTMLParser):
* html/parser/CompactHTMLToken.cpp:
(SameSizeAsCompactHTMLToken):
(WebCore::CompactHTMLToken::isSafeToSendToAnotherThread):
* html/parser/CompactHTMLToken.h:
(WebCore):
(CompactHTMLToken):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
* html/parser/HTMLDocumentParser.h:
(ParsedChunk):
* html/parser/XSSAuditorDelegate.h:
(XSSInfo):
(WebCore):

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

8 years agoSplit StorageEventDispatcher::dispatch into two functions
andersca@apple.com [Tue, 5 Mar 2013 20:31:04 +0000 (20:31 +0000)]
Split StorageEventDispatcher::dispatch into two functions
https://bugs.webkit.org/show_bug.cgi?id=111464

Reviewed by Beth Dakin.

Split StorageEventDispatcher::dispatch into dispatchSessionStorageEvent and
dispatchLocalStorageEvent and make StorageAreaImpl::dispatchStorageEvent call
the right function based on the storage area type.

* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::dispatchStorageEvent):
* storage/StorageEventDispatcher.cpp:
(WebCore::StorageEventDispatcher::dispatchSessionStorageEvent):
(WebCore):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEvent):
* storage/StorageEventDispatcher.h:
(StorageEventDispatcher):

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

8 years ago[WinCairo] Unreviewed build fix after r144024.
bfulgham@webkit.org [Tue, 5 Mar 2013 20:27:37 +0000 (20:27 +0000)]
[WinCairo] Unreviewed build fix after r144024.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::scrollLayerForScrollableArea): Handle
case of not using Accelerated Compositing
(WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea): Ditto.

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

8 years agoIndexedDB: Properly refactor frontend/backend code by #includes
alecflett@chromium.org [Tue, 5 Mar 2013 20:11:42 +0000 (20:11 +0000)]
IndexedDB: Properly refactor frontend/backend code by #includes
https://bugs.webkit.org/show_bug.cgi?id=110653

Reviewed by Dimitri Glazkov.

Source/WebCore:

IndexedDB has a distinct backend and frontend, with well defined
*Interface / *Callbacks classes distinguishing them, respectively.

This makes sure that the frontend and backend do not include each
other and fixes build problems that occurred as a result.

Specifically this moves enums out of IDBCursor and IDBTransaction
into IndexedDB.h in a new WebCore::IndexedDB namespace.

No new tests, as this is just a refactor.

Source/WebKit/chromium:

Clean up the frontend/backend WebIDB* implementations to
match the changes to webkit.

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

8 years ago[chromium] Unreviewed gardening
tdanderson@chromium.org [Tue, 5 Mar 2013 20:09:03 +0000 (20:09 +0000)]
[chromium] Unreviewed gardening

Unreviewed gardening

* platform/chromium/TestExpectations:

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

8 years agoUnreviewed. Rolled Chromium DEPS to r186200. Requested by
commit-queue@webkit.org [Tue, 5 Mar 2013 19:57:26 +0000 (19:57 +0000)]
Unreviewed.  Rolled Chromium DEPS to r186200.  Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-05

* DEPS:

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

8 years agoContainerNode::setActive should not sleep for 100ms on platforms that do not implemen...
commit-queue@webkit.org [Tue, 5 Mar 2013 19:56:51 +0000 (19:56 +0000)]
ContainerNode::setActive should not sleep for 100ms on platforms that do not implement synchronous repaint(true) semantics
https://bugs.webkit.org/show_bug.cgi?id=87054

Patch by James Robinson <jamesr@chromium.org> on 2013-03-05
Reviewed by Darin Adler.

Source/WebCore:

Adds a new ChromeClient function to query if the platform supports the immediate parameter
to the invalidation APIs and guards the synchronous repaint logic in ContainerNode::setActive()
with it.

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::setActive):
* page/ChromeClient.h:
(WebCore::ChromeClient::supportsImmediateInvalidation):

Source/WebKit/mac:

The Mac WebKit1 port supports immediate invalidations.

* WebCoreSupport/WebChromeClient.h:
(WebChromeClient):
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::supportsImmediateInvalidation):

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

8 years ago[WK2][EFL] WebPageProxy::setThemePath() should check that the page is valid
mikhail.pozdnyakov@intel.com [Tue, 5 Mar 2013 19:49:55 +0000 (19:49 +0000)]
[WK2][EFL] WebPageProxy::setThemePath() should check that the page is valid
https://bugs.webkit.org/show_bug.cgi?id=109917

Reviewed by Alexey Proskuryakov.

WebPageProxy::setThemePath() should check that the page is valid before
sending IPC message.

* UIProcess/efl/WebPageProxyEfl.cpp:
(WebKit::WebPageProxy::setThemePath):

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

8 years agoediting/pasteboard/5247341.html should be a dump-as-markup test
rniwa@webkit.org [Tue, 5 Mar 2013 19:49:45 +0000 (19:49 +0000)]
editing/pasteboard/5247341.html should be a dump-as-markup test
https://bugs.webkit.org/show_bug.cgi?id=111397

Reviewed by Darin Adler.

Convert the test to use dump-as-markup.js. Also rename it to preserve-line-break-at-end-of-pasted-content
to reflect the content of the test.

* editing/pasteboard/5247341.html: Removed.
* editing/pasteboard/preserve-line-break-at-end-of-pasted-content-expected.txt: Added.
* editing/pasteboard/preserve-line-break-at-end-of-pasted-content.html: Copied from LayoutTests/editing/pasteboard/5247341.html.
* platform/chromium-linux/editing/pasteboard/5247341-expected.png: Removed.
* platform/chromium-mac-lion/editing/pasteboard/5247341-expected.png: Removed.
* platform/chromium-mac-snowleopard/editing/pasteboard/5247341-expected.png: Removed.
* platform/chromium-mac/editing/pasteboard/5247341-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/5247341-expected.png: Removed.
* platform/chromium-win/editing/pasteboard/5247341-expected.txt: Removed.
* platform/chromium/editing/pasteboard/5247341-expected.txt: Removed.
* platform/gtk/editing/pasteboard/5247341-expected.png: Removed.
* platform/gtk/editing/pasteboard/5247341-expected.txt: Removed.
* platform/mac/editing/pasteboard/5247341-expected.png: Removed.
* platform/mac/editing/pasteboard/5247341-expected.txt: Removed.
* platform/qt/editing/pasteboard/5247341-expected.png: Removed.
* platform/qt/editing/pasteboard/5247341-expected.txt: Removed.

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

8 years agoSimplify storage event dispatch somewhat
andersca@apple.com [Tue, 5 Mar 2013 19:43:40 +0000 (19:43 +0000)]
Simplify storage event dispatch somewhat
https://bugs.webkit.org/show_bug.cgi?id=111461

Reviewed by Beth Dakin.

Add a StorageAreaImpl::dispatchStorageEvent to avoid replicating the calls to
StorageEventDispatcher::dispatch there times. This is in preparation for changing the
interface of StorageEventDispatcher so it can be used by WebKit2.

* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::setItem):
(WebCore::StorageAreaImpl::removeItem):
(WebCore::StorageAreaImpl::clear):
(WebCore::StorageAreaImpl::dispatchStorageEvent):

* storage/StorageAreaImpl.h:
Reindent.

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

8 years agoFix some crashes in render sliders
tony@chromium.org [Tue, 5 Mar 2013 19:41:55 +0000 (19:41 +0000)]
Fix some crashes in render sliders
https://bugs.webkit.org/show_bug.cgi?id=111458

Reviewed by Ojan Vafai.

Source/WebCore:

Fix some cases where we assumed the renderer is a renderBox.

Test: fast/forms/range/slider-inline-crash.html

* html/shadow/SliderThumbElement.cpp:
(WebCore::RenderSliderContainer::layout): Use renderBox() which will return 0 if the renderer is not a RenderBox.
(WebCore::SliderThumbElement::setPositionFromPoint): Bail out early if renderBox() is 0.

LayoutTests:

* fast/forms/range/slider-inline-crash-expected.txt: Added.
* fast/forms/range/slider-inline-crash.html: Added.

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

8 years agoREGRESSION(r142191): Fix closed caption buttons for ports still using the painting...
scherkus@chromium.org [Tue, 5 Mar 2013 19:37:18 +0000 (19:37 +0000)]
REGRESSION(r142191): Fix closed caption buttons for ports still using the painting path.
https://bugs.webkit.org/show_bug.cgi?id=111109

Reviewed by Eric Carlson.

Source/WebCore:

Covered by following tests:
media/track/track-cue-rendering-horizontal.html
media/track/track-cue-rendering-vertical.html

* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
* rendering/RenderTheme.h:
(WebCore::RenderTheme::paintMediaToggleClosedCaptionsButton):

LayoutTests:

* platform/chromium/TestExpectations:

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

8 years ago <rdar://problem/13269245> Crashes creating WebKit processes in WKSandboxExten...
ap@apple.com [Tue, 5 Mar 2013 19:17:19 +0000 (19:17 +0000)]
    <rdar://problem/13269245> Crashes creating WebKit processes in WKSandboxExtensionConsume
        https://bugs.webkit.org/show_bug.cgi?id=111456

        Reviewed by Anders Carlsson.

        It's too late to be draconian about this condition here, crashing doesn't help
        diagnose what went wrong when creating a sandbox extension.

        Other SandboxExtension functions already have null checks for WKSandboxExtensionRef,
        and so should consumePermanently().

        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::createHandle): For now, added logging when extension
        creation fails. If that proves insufficiently helpful in practice, we can change
        to a CRASH() later.
        (WebKit::SandboxExtension::createHandleForTemporaryFile): Ditto.
        (WebKit::SandboxExtension::consumePermanently): Gracefully fail if there is no extension
        to consume.

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

8 years agoCoordinated Graphics: CoordinatedGraphicsLayer makes CoordinatedGraphicsScene perform...
commit-queue@webkit.org [Tue, 5 Mar 2013 19:16:54 +0000 (19:16 +0000)]
Coordinated Graphics: CoordinatedGraphicsLayer makes CoordinatedGraphicsScene perform via CoordinatedGraphicsState.
https://bugs.webkit.org/show_bug.cgi?id=108294

Patch by Gwang Yoon Hwang <ryumiel@company100.net> on 2013-03-05
Reviewed by Anders Carlsson.

Source/WebCore:

CoordinatedLayerTreeHostProxy has too many IPC messages (e.g. SyncCanvas and
CreateTile), and there is a long function chain from CoordinatedGraphicsLayer to
CoordinatedGraphicsScene (4 classes).
If we want to add a new message, we need to add similar functions into 4 classes.

Now CoordinatedLayerTreeHost has only one IPC message for CoordinatedGraphicsLayer:
CommitCoordinatedGraphicsState.
CoordinatedGraphicsLayer makes CoordinatedGraphicsScene run as follows:
1. CoordinatedGraphicsLayer makes a CoordinatedGraphicsLayerState.
2. CoordinatedLayerTreeHost stores all LayerStates.
3. CoordinatedLayerTreeHost sends GraphicsState includes LayerStates to CoordinatedLayerTreeHostProxy
at the moment of flushing via CommitCoordinatedGraphicsState message.
4. CoordinatedGraphicsScene applies all state changes to layers.

There is one big behavior change. All states changes (e.g.
UpdateTiles, SetLayerChildren, and etc..) are performed at the same time, when
CoordinatedGraphicsScene::commitCoordinatedGraphicsState is called.

This patch is based on Dongsung Huang, and Noam's work in
https://bugs.webkit.org/show_bug.cgi?id=108294

No new tests, covered by existing tests.

* Target.pri:
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setPosition):
(WebCore::CoordinatedGraphicsLayer::setAnchorPoint):
(WebCore::CoordinatedGraphicsLayer::setSize):
(WebCore::CoordinatedGraphicsLayer::setTransform):
(WebCore::CoordinatedGraphicsLayer::setChildrenTransform):
(WebCore::CoordinatedGraphicsLayer::setPreserves3D):
(WebCore::CoordinatedGraphicsLayer::setMasksToBounds):
(WebCore::CoordinatedGraphicsLayer::setDrawsContent):
(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setContentsOpaque):
(WebCore::CoordinatedGraphicsLayer::setBackfaceVisibility):
(WebCore::CoordinatedGraphicsLayer::setOpacity):
(WebCore::CoordinatedGraphicsLayer::setContentsRect):
(WebCore::CoordinatedGraphicsLayer::setFilters):
(WebCore::CoordinatedGraphicsLayer::setContentsToSolidColor):
(WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
(WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):
(WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
(WebCore::CoordinatedGraphicsLayer::setFixedToViewport):
(WebCore::CoordinatedGraphicsLayer::syncChildren):
(WebCore::CoordinatedGraphicsLayer::syncFilters):
(WebCore::CoordinatedGraphicsLayer::syncImageBacking):
(WebCore::CoordinatedGraphicsLayer::syncLayerState):
(WebCore::CoordinatedGraphicsLayer::setDebugBorder):
(WebCore::CoordinatedGraphicsLayer::syncAnimations):
(WebCore::CoordinatedGraphicsLayer::syncCanvas):
(WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
(WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
(WebCore::CoordinatedGraphicsLayer::resetLayerState):
(WebCore):
(WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
(WebCore::CoordinatedGraphicsLayer::setRootLayer):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
(WebCore::CoordinatedGraphicsScene::createCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::syncCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::destroyCanvasIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerRepaintCountIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerChildrenIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerFiltersIfNeeded):
(WebCore::CoordinatedGraphicsScene::setLayerState):
(WebCore::CoordinatedGraphicsScene::deleteLayer):
(WebCore::CoordinatedGraphicsScene::createTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::removeTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::updateTilesIfNeeded):
(WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
(WebCore::CoordinatedGraphicsScene::commitSceneState):
(WebCore::CoordinatedGraphicsScene::setLayerAnimationsIfNeeded):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
(WebCore):
(CoordinatedGraphicsScene):
* platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h: Added.
(WebCore):
(TileUpdateInfo):
(TileCreationInfo):
(WebCore::CoordinatedGraphicsLayerState::CoordinatedGraphicsLayerState):
(CoordinatedGraphicsLayerState):
(CoordinatedGraphicsState):
* platform/graphics/texmap/coordinated/CoordinatedImageBacking.h:
* platform/graphics/texmap/coordinated/CoordinatedLayerInfo.h: Removed.
* platform/graphics/texmap/coordinated/SurfaceUpdateInfo.h:

Source/WebKit2:

There are two changes in WK2.
1. Change CoordinatedLayerTreeHostProxy to use CoordinatedGraphicsState.
2. Add encode/decode of CoordinatedGraphicsState in CoordinatedGraphicsArgumentCoders.

This patch is based on Dongsung Huang, and Noam's work in
https://bugs.webkit.org/show_bug.cgi?id=108294

No new tests, covered by existing tests.

* Scripts/webkit2/messages.py:
(headers_for_type):
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
    Encoding UpdateImageBacking and CreateUpdateAtlas can fail when
    encoding WebCoordinatedSurface::Handle fails, but we don't
    recover in the case.
(CoreIPC::::decode):
(CoreIPC):
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
(WebCore):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
(WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
(WebKit):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
(WebCore):
(CoordinatedLayerTreeHostProxy):
(WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
(WebKit::CoordinatedLayerTreeHost::syncLayerState):
(WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesIfNeeded):
(WebKit):
(WebKit::CoordinatedLayerTreeHost::updateImageBacking):
(WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
(CoordinatedLayerTreeHost):

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

8 years agoUnreviewed. AppleWin VS2010 build fix.
roger_fong@apple.com [Tue, 5 Mar 2013 19:13:56 +0000 (19:13 +0000)]
Unreviewed. AppleWin VS2010 build fix.

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* rendering/RenderingAllInOne.cpp:

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

8 years agoAdd html-parser-threaded perf test now that the threaded parser is enabled by default
eric@webkit.org [Tue, 5 Mar 2013 19:07:26 +0000 (19:07 +0000)]
Add html-parser-threaded perf test now that the threaded parser is enabled by default
https://bugs.webkit.org/show_bug.cgi?id=111200

Reviewed by Ryosuke Niwa.

PerformanceTests:

The old srcdoc test no longer triggers the threaded parser due to compatibility fixes.

* Parser/html-parser-threaded.html: Renamed from PerformanceTests/Parser/html-parser-srcdoc.html.
* Skipped: Unfortunately this new test is still skipped too.

Tools:

Had to teach run-perf-tests to ignore one more warning.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest):

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

8 years ago[chromium] Clean up WebWidget / WebLayerTreeView interactions
commit-queue@webkit.org [Tue, 5 Mar 2013 19:07:01 +0000 (19:07 +0000)]
[chromium] Clean up WebWidget / WebLayerTreeView interactions
https://bugs.webkit.org/show_bug.cgi?id=109125

Patch by James Robinson <jamesr@chromium.org> on 2013-03-05
Reviewed by Adrienne Walker.

Source/Platform:

This deprecates most of the calls on WebLayerTreeViewClient since these interactions are handled
entirely on the embedder side of the interface now.

* chromium/public/WebLayerTreeView.h:
(WebLayerTreeView):
* chromium/public/WebLayerTreeViewClient.h:
(WebLayerTreeViewClient):
(WebKit::WebLayerTreeViewClient::willBeginFrame):
(WebKit::WebLayerTreeViewClient::didBeginFrame):
(WebKit::WebLayerTreeViewClient::applyScrollAndScale):
(WebKit::WebLayerTreeViewClient::layout):
(WebKit::WebLayerTreeViewClient::didRecreateOutputSurface):
(WebKit::WebLayerTreeViewClient::createInputHandler):
(WebKit::WebLayerTreeViewClient::createOutputSurface):
(WebKit::WebLayerTreeViewClient::willCommit):
(WebKit::WebLayerTreeViewClient::didCommit):
(WebKit::WebLayerTreeViewClient::didCommitAndDrawFrame):
(WebKit::WebLayerTreeViewClient::didCompleteSwapBuffers):

Source/WebKit/chromium:

This removes most of the compositing control flow logic from WebViewImpl since
it is now handled in the embedding layer (by the implementation of WebViewClient/WebWidgetClient).

* public/WebViewClient.h:
* public/WebWidget.h:
(WebKit):
(WebKit::WebWidget::animate):
(WebWidget):
(WebKit::WebWidget::didExitCompositingMode):
(WebKit::WebWidget::createInputHandler):
(WebKit::WebWidget::applyScrollAndScale):
(WebKit::WebWidget::instrumentBeginFrame):
(WebKit::WebWidget::instrumentWillBeginFrame):
(WebKit::WebWidget::instrumentDidCancelFrame):
(WebKit::WebWidget::instrumentDidBeginFrame):
(WebKit::WebWidget::instrumentWillComposite):
* src/WebHelperPluginImpl.cpp:
* src/WebHelperPluginImpl.h:
(WebHelperPluginImpl):
* src/WebPagePopupImpl.cpp:
* src/WebPagePopupImpl.h:
(WebPagePopupImpl):
* src/WebPopupMenuImpl.cpp:
* src/WebPopupMenuImpl.h:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::instrumentWillBeginFrame):
(WebKit::WebViewImpl::instrumentDidBeginFrame):
(WebKit::WebViewImpl::instrumentDidCancelFrame):
(WebKit::WebViewImpl::instrumentWillComposite):
(WebKit):
(WebKit::WebViewImpl::updateBatteryStatus):
(WebKit::WebViewImpl::animate):
(WebKit::WebViewImpl::didExitCompositingMode):
* src/WebViewImpl.h:
* tests/WebLayerTreeViewTestCommon.h:
(MockWebLayerTreeViewClient):

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

8 years agoUpdate list of builders for test results server
jochen@chromium.org [Tue, 5 Mar 2013 19:05:28 +0000 (19:05 +0000)]
Update list of builders for test results server
https://bugs.webkit.org/show_bug.cgi?id=111166

Reviewed by Ojan Vafai.

* TestResultServer/static-dashboards/builders.jsonp:

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

8 years ago[GTK] Move basic dependency installation to a script
commit-queue@webkit.org [Tue, 5 Mar 2013 18:30:58 +0000 (18:30 +0000)]
[GTK] Move basic dependency installation to a script
https://bugs.webkit.org/show_bug.cgi?id=110692

Patch by Martin Robinson  <mrobinson@igalia.com> and Tomas Popela <tpopela@redhat.com> on 2013-03-05
Reviewed by Gustavo Noronha Silva.

* gtk/install-dependencies: Added. A Script which installs all dependencies
necessary for building for Debian-based distributions and Fedora.

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

8 years agoFollow up to https://bugs.webkit.org/show_bug.cgi?id=111453, forgot to mark the files...
weinig@apple.com [Tue, 5 Mar 2013 18:29:23 +0000 (18:29 +0000)]
Follow up to https://bugs.webkit.org/show_bug.cgi?id=111453, forgot to mark the files as Private.

* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoElevate accessors of C-SPI API variants to Objective-C SPI
weinig@apple.com [Tue, 5 Mar 2013 18:26:41 +0000 (18:26 +0000)]
Elevate accessors of C-SPI API variants to Objective-C SPI
https://bugs.webkit.org/show_bug.cgi?id=111453
<rdar://problem/13340357>

Reviewed by Alexey Proskuryakov.

* Shared/mac/ObjCObjectGraphCoders.mm:
* UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
* UIProcess/API/mac/WKBrowsingContextControllerPrivate.h:
* UIProcess/API/mac/WKBrowsingContextGroup.mm:
* UIProcess/API/mac/WKBrowsingContextGroupPrivate.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKBrowsingContextGroupInternal.h.
* UIProcess/API/mac/WKProcessGroup.mm:
* UIProcess/API/mac/WKProcessGroupPrivate.h: Copied from Source/WebKit2/UIProcess/API/mac/WKProcessGroupInternal.h.
* UIProcess/API/mac/WKView.mm:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
(-[WKWebProcessPlugInController _bundleRef]):
* WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKProcessGroupInternal.h.
Add access to C-SPI WebKit types as Objective-C SPI.

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

8 years ago[CSS Exclusions] shape-outside on floats for polygon shapes
commit-queue@webkit.org [Tue, 5 Mar 2013 18:19:36 +0000 (18:19 +0000)]
[CSS Exclusions] shape-outside on floats for polygon shapes
https://bugs.webkit.org/show_bug.cgi?id=98676

Patch by Bem Jones-Bey <bjonesbe@adobe.com> on 2013-03-05
Reviewed by David Hyatt.

Source/WebCore:

Implement support for polygonal shape-outside on floats. The basic
tack taken here is to keep using the bounding box of the shape to
position the float, but to compute the offset (caused by the shape)
from the bounding box for each line when creating and positioning
other inline content.

Test: fast/exclusions/shape-outside-floats/shape-outside-floats-simple-polygon.html

* rendering/ExclusionShapeInfo.cpp:
(WebCore):
(WebCore::::computedShape): Add new template parameter.
(WebCore::::logicalTopOffset): Add new template parameter.
(WebCore::::computeSegmentsForLine): Move here from
    ExclusionShapeInsideInfo, since ExclusionShapeOutsideInfo needs it
    as well. Make virtual since there is slightly different behavior
    between each class even though the vast majority of the code is
    common.
* rendering/ExclusionShapeInfo.h:
(WebCore):
(WebCore::ExclusionShapeInfo::~ExclusionShapeInfo): Since
    computeSegmentsForLine is virtual, the destructor must be virtual
    as well.
(ExclusionShapeInfo): Add new data members to support
    computeSegmentsForLine.
(WebCore::ExclusionShapeInfo::shapeLogicalRight): Fix bug, the logical
    right is based off of maxX, not y. (it's a logical bounding box!)
(WebCore::ExclusionShapeInfo::logicalLineTop): Moved from
    ExclusionShapeInsideInfo for use by computeSegmentsForLine and
    lineOverlapsShapeBounds.
(WebCore::ExclusionShapeInfo::logicalLineBottom): Moved from
    ExclusionShapeInsideInfo for use by computeSegmentsForLine and
    lineOverlapsShapeBounds.
(WebCore::ExclusionShapeInfo::lineOverlapsShapeBounds): Moved from
    ExclusionShapeInsideInfo for use by computeSegmentsForLine.
* rendering/ExclusionShapeInsideInfo.cpp: Moved common code from
    computeSegmentsForLine into ExclusionShapeInfo.
* rendering/ExclusionShapeInsideInfo.h:
(WebCore): Moved some methods to ExclusionShapeInfo.
(ExclusionShapeInsideInfo): Update for new template parameter.
(WebCore::ExclusionShapeInsideInfo::compyteSegmentsForLine): Override
    superclass method to clear the segment ranges. Segement ranges
    aren't used by shape outside, and have some complex dependencies
    that make it very hard to try and move up into ExclusionShapeInfo.
(WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Update
    for new template parameter.
* rendering/ExclusionShapeOutsideInfo.cpp:
(WebCore::ExclusionShapeOutsideInfo::isEnabledFor): Add polygons as a
    supported shape.
(WebCore::ExclusionShapeOutsideInfo::computeSegmentsForLine): Override
    superclass method to not recompute if it isn't needed (this isn't
    straightfoward for shape inside, which is why it isn't common),
    and to save the left and right offsets caused by the shape
    outside, since that's all that is needed to properly do layout in
    the case of floats.
* rendering/ExclusionShapeOutsideInfo.h:
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalOffset): Reformat to
    be on a single line, like most other methods of it's type in
    WebKit headers.
(ExclusionShapeOutsideInfo): Update for new template parameter.
(WebCore::ExclusionShapeOutsideInfo::logicalLeftOffsetForLine):
    Accessor method to get the left offset between the shape and the
    shape's bounding box.
(WebCore::ExclusionShapeOutsideInfo::logicalRightOffsetForLine):
    Accessor method to get the left offset between the shape and the
    shape's bounding box.
(WebCore::ExclusionShapeOutsideInfo::ExclusionShapeOutsideInfo):
    Update for new template parameter.
* rendering/RenderBlock.cpp:
(WebCore::::collectIfNeeded): Save the last float encountered so that
    the shape outside offset can be accounted for.
(WebCore::RenderBlock::logicalLeftOffsetForLine): Account for the
    shape outside offset on the outermost float.
(WebCore::RenderBlock::logicalRightOffsetForLine): Account for the
    shape outside offset on the outermost float.
* rendering/RenderBlock.h:
(WebCore::RenderBlock::FloatIntervalSearchAdapter::FloatIntervalSearchAdapter):
    Initialize the lastFloat member.
(WebCore::RenderBlock::FloatIntervalSearchAdapter::lastFloat): Get the
    last float encountered.
(FloatIntervalSearchAdapter): Add a pointer to the last float
    encountered. Note that the variable is mutable because
    collectIfNeeded is declared as a const method even though it isn't
    (it uses loopholes to update m_offset and m_heightRemaining).
    Instead of trying to come up with a hack to stick with the
    loopholes, I decided to be explicit about it.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Take
    into account the offset from any polygonal shape outside.
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak): Add a FIXME
    because the current code will not work properly with stacked
    floats that have polygonal shape outside.

LayoutTests:

Simple test for floats with polygonal shape-outside.

* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-polygon-expected.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-polygon.html: Added.

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