WebKit-https.git
8 years agohttps://bugs.webkit.org/show_bug.cgi?id=68480
hyatt@apple.com [Tue, 20 Sep 2011 22:23:41 +0000 (22:23 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=68480

De-virtualize containingBlock() and make RenderView return 0 instead
of itself to make the construction of normal loops that terminate via
a null-check possible.

Fix the only two places in the tree that needed null checks.

Eliminating RenderTableCell::containingBlock() is fine since the base class
does the same thing anyway.

Reviewed by Simon Fraser.

* editing/VisiblePosition.cpp:
(WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::containingBlock):
* rendering/RenderObject.h:
* rendering/RenderTableCell.cpp:
* rendering/RenderTableCell.h:
* rendering/RenderTreeAsText.cpp:
(WebCore::RenderTreeAsText::writeRenderObject):
* rendering/RenderView.cpp:
* rendering/RenderView.h:

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

8 years ago[Qt] QTouchWebView missing signal tests for loadProgress
commit-queue@webkit.org [Tue, 20 Sep 2011 22:16:36 +0000 (22:16 +0000)]
[Qt] QTouchWebView missing signal tests for loadProgress
https://bugs.webkit.org/show_bug.cgi?id=68442

Patch by Gopal Raghavan <gopal.1.raghavan@nokia.com> on 2011-09-20
Reviewed by Chang Shu.

Added test case to check load progress signal for QTouchWebView

* UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadProgressSignal.qml: Added.
* UIProcess/API/qt/tests/qmltests/qmltests.pro:

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

8 years ago[CSSRegions] Need test case for 66198 (sliced line box rendering)
commit-queue@webkit.org [Tue, 20 Sep 2011 21:59:44 +0000 (21:59 +0000)]
[CSSRegions] Need test case for 66198 (sliced line box rendering)
https://bugs.webkit.org/show_bug.cgi?id=68257

Patch by Alan Stearns <stearns@adobe.com> on 2011-09-20
Reviewed by David Hyatt.

* fast/regions/resources/helper.js:
(assertTopLeftMatch):
(sameTopLeft):
* fast/regions/no-split-line-box-expected.txt: Added.
* fast/regions/no-split-line-box.html: Added.

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

8 years agoRemove ScrollView::platformContentsSize
andersca@apple.com [Tue, 20 Sep 2011 21:47:07 +0000 (21:47 +0000)]
Remove ScrollView::platformContentsSize
https://bugs.webkit.org/show_bug.cgi?id=68188

Reviewed by Darin Adler.

../WebCore:

Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
have to ask the underlying platform scroll view for contents size since it should always just
be equal to m_contentsSize.

* platform/ScrollView.cpp:
(WebCore::ScrollView::contentsSize):
(WebCore::ScrollView::wheelEvent):
* platform/ScrollView.h:
* platform/mac/ScrollViewMac.mm:
* platform/wx/ScrollViewWx.cpp:

../WebKit/mac:

When creating the document view, make sure it's zero sized which matches the initial size
of the ScrollView. This is fine to do early since DocumentWriter::begin sets the contents
size to a zero size anyway.

* WebView/WebFrameView.mm:
(-[WebFrameView _makeDocumentViewForDataSource:]):

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

8 years agoUnreviewed, rolling out r95565.
commit-queue@webkit.org [Tue, 20 Sep 2011 21:14:33 +0000 (21:14 +0000)]
Unreviewed, rolling out r95565.
http://trac.webkit.org/changeset/95565
https://bugs.webkit.org/show_bug.cgi?id=68470

Broke builds (Requested by andersca on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-20

Source/WebKit2:

* GNUmakefile.am:
* Shared/API/c/WKHitTestResult.cpp: Removed.
* Shared/API/c/WKHitTestResult.h: Removed.
* UIProcess/API/C/WebKit2.h:

Tools:

* MiniBrowser/gtk/BrowserWindow.c:
(mouseDidMoveOverElement):

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

8 years ago[Qt] [WK2] Implement a persistent cookie storage.
alexis.menard@openbossa.org [Tue, 20 Sep 2011 21:01:12 +0000 (21:01 +0000)]
[Qt] [WK2] Implement a persistent cookie storage.
https://bugs.webkit.org/show_bug.cgi?id=65309

Reviewed by Chang Shu.

Source/WebCore:

Implement a cookie storage for the Qt port on WebKit2.
The implementation is using a SQLite database to store the cookies
and restore them. It uses a static object as CookieJar is not an
object but a set of global functions. The actual saving/restoring is on
the WebProcess side where our network stack lives.

Existing tests cover the new implementation. Unfortunately there is one
case that we can't easily simulate : login in a website, make sure that the webprocess
is not running and then going back to this website and see that we are logged.

* WebCore.pri:
* WebCore.pro:
* platform/qt/CookieJarQt.cpp:
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):
(WebCore::SharedCookieJarQt::shared):
(WebCore::SharedCookieJarQt::create):
(WebCore::SharedCookieJarQt::destroy):
(WebCore::SharedCookieJarQt::getHostnamesWithCookies):
(WebCore::SharedCookieJarQt::deleteCookiesForHostname):
(WebCore::SharedCookieJarQt::deleteAllCookies):
(WebCore::SharedCookieJarQt::SharedCookieJarQt):
(WebCore::SharedCookieJarQt::~SharedCookieJarQt):
(WebCore::SharedCookieJarQt::setCookiesFromUrl):
(WebCore::SharedCookieJarQt::ensureDatabaseTable):
(WebCore::SharedCookieJarQt::loadCookies):
* platform/qt/CookieJarQt.h: Added.

Source/WebKit2:

Add parameter to the WebProcess creation to specify where cookies should be saved.
It also use the new cookie storage implementation and set it to our network stack
so cookies are used when using it.

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/qt/WebContextQt.cpp:
(WebKit::WebContext::platformInitializeWebProcess):
* WebProcess/qt/WebProcessQt.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::platformTerminate):

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

8 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=68314
hyatt@apple.com [Tue, 20 Sep 2011 20:26:13 +0000 (20:26 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=68314

Make sure that the containing block loop when clipping to border-radius
terminates by checking if you hit the RenderView. Null checking isn't sufficient
for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
as its own containing block, even though this should just be changed).

Reviewed by Simon Fraser and Darin Adler.

Added new test in fast/clip.

* rendering/RenderLayer.cpp:
(WebCore::inContainingBlockChain):

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

Added some more clipping tests for overflow to make sure the right things happen
when border-radius is specified.

Reviewed by Simon Fraser and Darin Adler.

* fast/clip/overflow-border-radius-fixed-position.html: Added.
* platform/mac/fast/clip/overflow-border-radius-fixed-position-expected.png: Added.
* platform/mac/fast/clip/overflow-border-radius-fixed-position-expected.txt: Added.

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

8 years agoMathML renderers do not override RenderObject::renderName()
mitz@apple.com [Tue, 20 Sep 2011 20:21:25 +0000 (20:21 +0000)]
MathML renderers do not override RenderObject::renderName()
https://bugs.webkit.org/show_bug.cgi?id=68461

Reviewed by Darin Adler.

Source/WebCore:

Added implementations of renderName() in MathML RenderObject subclasses.

* rendering/mathml/RenderMathMLBlock.h:
(WebCore::RenderMathMLBlock::renderName):
* rendering/mathml/RenderMathMLFenced.h:
(WebCore::RenderMathMLFenced::renderName):
* rendering/mathml/RenderMathMLFraction.h:
(WebCore::RenderMathMLFraction::renderName):
* rendering/mathml/RenderMathMLMath.h:
(WebCore::RenderMathMLMath::renderName):
* rendering/mathml/RenderMathMLOperator.h:
(WebCore::RenderMathMLOperator::renderName):
* rendering/mathml/RenderMathMLRoot.h:
(WebCore::RenderMathMLRoot::renderName):
* rendering/mathml/RenderMathMLRow.h:
(WebCore::RenderMathMLRow::renderName):
* rendering/mathml/RenderMathMLSquareRoot.h:
(WebCore::RenderMathMLSquareRoot::renderName):
* rendering/mathml/RenderMathMLSubSup.h:
(WebCore::RenderMathMLSubSup::renderName):
* rendering/mathml/RenderMathMLUnderOver.h:
(WebCore::RenderMathMLUnderOver::renderName):

LayoutTests:

* platform/mac/mathml/presentation/attributes-expected.txt:
* platform/mac/mathml/presentation/fenced-expected.txt:
* platform/mac/mathml/presentation/fenced-mi-expected.txt:
* platform/mac/mathml/presentation/fractions-expected.txt:
* platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
* platform/mac/mathml/presentation/mo-expected.txt:
* platform/mac/mathml/presentation/msub-base-changed-expected.txt:
* platform/mac/mathml/presentation/msub-sub-changed-expected.txt:
* platform/mac/mathml/presentation/msubsup-base-changed-expected.txt:
* platform/mac/mathml/presentation/msubsup-sub-changed-expected.txt:
* platform/mac/mathml/presentation/msubsup-sup-changed-expected.txt:
* platform/mac/mathml/presentation/msup-base-changed-expected.txt:
* platform/mac/mathml/presentation/msup-sup-changed-expected.txt:
* platform/mac/mathml/presentation/over-expected.txt:
* platform/mac/mathml/presentation/roots-expected.txt:
* platform/mac/mathml/presentation/row-alignment-expected.txt:
* platform/mac/mathml/presentation/row-expected.txt:
* platform/mac/mathml/presentation/style-expected.txt:
* platform/mac/mathml/presentation/sub-expected.txt:
* platform/mac/mathml/presentation/subsup-expected.txt:
* platform/mac/mathml/presentation/sup-expected.txt:
* platform/mac/mathml/presentation/tables-expected.txt:
* platform/mac/mathml/presentation/tokenElements-expected.txt:
* platform/mac/mathml/presentation/under-expected.txt:
* platform/mac/mathml/presentation/underover-expected.txt:
* platform/mac/mathml/xHeight-expected.txt:

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

8 years agoSource/WebKit2: Added WKHitTestResult API's.
commit-queue@webkit.org [Tue, 20 Sep 2011 20:16:58 +0000 (20:16 +0000)]
Source/WebKit2: Added WKHitTestResult API's.

WKHitTestResult API's are added. These API's can be used to
get the hover'ed link/image/media URL as well as link lable and
title.
https://bugs.webkit.org/show_bug.cgi?id=68426

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-20
Reviewed by Anders Carlsson.

* GNUmakefile.am:
* Shared/API/c/WKHitTestResult.cpp: Copied from Source/WebKit2/UIProcess/API/C/WebKit2.h.
(WKHitTestResultGetTypeID):
(WKHitTestResultCopyAbsoluteImageURL):
(WKHitTestResultCopyAbsoluteLinkURL):
(WKHitTestResultCopyAbsoluteMediaURL):
(WKHitTestResultCopyLinkLabel):
(WKHitTestResultCopyLinkTitle):
* Shared/API/c/WKHitTestResult.h: Copied from Source/WebKit2/UIProcess/API/C/WebKit2.h.
* UIProcess/API/C/WebKit2.h:

Tools: Get hover'ed element URL from HitTest.

mouseDidMoveOverElement now gets the hover'ed element link using
WKHitTestResult API's.
https://bugs.webkit.org/show_bug.cgi?id=68426

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-09-20
Reviewed by Anders Carlsson.

* MiniBrowser/gtk/BrowserWindow.c:
(mouseDidMoveOverElement):

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

8 years ago[GTK] requestAnimationFrame support for gtk port
commit-queue@webkit.org [Tue, 20 Sep 2011 20:13:15 +0000 (20:13 +0000)]
[GTK] requestAnimationFrame support for gtk port
https://bugs.webkit.org/show_bug.cgi?id=66280

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2011-09-20
Reviewed by Martin Robinson.

.:

* configure.ac: Add an option to enable requestAnimationFrame for gtk port.

Source/JavaScriptCore:

Let GTK port use REQUEST_ANIMATION_FRAME_TIMER.

* wtf/Platform.h:

Source/WebCore:

Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
when enabling requestAnimationFrame option.

fast/animation/request-animation-frame-cancel.html
fast/animation/request-animation-frame-cancel2.html
fast/animation/request-animation-frame-display.html
fast/animation/request-animation-frame-during-modal.html
fast/animation/request-animation-frame-timestamps.html
fast/animation/request-animation-frame-within-callback.html
fast/animation/request-animation-frame.html

* GNUmakefile.am:
* GNUmakefile.list.am:

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

8 years agoDFG JIT performs too many negative zero checks, and too many
fpizlo@apple.com [Tue, 20 Sep 2011 20:10:56 +0000 (20:10 +0000)]
DFG JIT performs too many negative zero checks, and too many
overflow checks
https://bugs.webkit.org/show_bug.cgi?id=68430

Reviewed by Oliver Hunt.

This adds comprehensive support for deciding how to perform an
arithmetic operations based on a combination of overflow profiling,
negative zero profiling, value profiling, and a static analysis of
how the results of these operations get used.

This is a 72% speed-up on stanford-crypto-sha256-iterative, and a
2.5% speed-up on the Kraken average, a 1.4% speed-up on the V8
geomean, and neutral on SunSpider. It's also an 8.5% speed-up on
V8-crypto, because apparenty everything we do speeds up crypto.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::toInt32):
(JSC::DFG::ByteCodeParser::toNumber):
(JSC::DFG::ByteCodeParser::isSmallInt32Constant):
(JSC::DFG::ByteCodeParser::valueOfInt32Constant):
(JSC::DFG::ByteCodeParser::weaklyPredictInt32):
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::processPhiStack):
(JSC::DFG::ByteCodeParser::parse):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::nonSpeculativeBasicArithOp):
* dfg/DFGNode.h:
(JSC::DFG::nodeUsedAsNumber):
(JSC::DFG::nodeCanTruncateInteger):
(JSC::DFG::nodeCanIgnoreNegativeZero):
(JSC::DFG::nodeCanSpeculateInteger):
(JSC::DFG::arithNodeFlagsAsString):
(JSC::DFG::Node::Node):
(JSC::DFG::Node::hasArithNodeFlags):
(JSC::DFG::Node::rawArithNodeFlags):
(JSC::DFG::Node::arithNodeFlags):
(JSC::DFG::Node::arithNodeFlagsForCompare):
(JSC::DFG::Node::setArithNodeFlag):
(JSC::DFG::Node::mergeArithNodeFlags):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::fixpoint):
(JSC::DFG::Propagator::isNotNegZero):
(JSC::DFG::Propagator::isNotZero):
(JSC::DFG::Propagator::propagateArithNodeFlags):
(JSC::DFG::Propagator::propagateArithNodeFlagsForward):
(JSC::DFG::Propagator::propagateArithNodeFlagsBackward):
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::propagatePredictionsForward):
(JSC::DFG::Propagator::propagatePredictionsBackward):
(JSC::DFG::Propagator::toDouble):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::fixup):
(JSC::DFG::Propagator::startIndexForChildren):
(JSC::DFG::Propagator::endIndexForPureCSE):
(JSC::DFG::Propagator::pureCSE):
(JSC::DFG::Propagator::clobbersWorld):
(JSC::DFG::Propagator::setReplacement):
(JSC::DFG::Propagator::performNodeCSE):
(JSC::DFG::Propagator::localCSE):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

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

8 years agoUnreviewed; new baselines (Skia on Mac)
caryclark@google.com [Tue, 20 Sep 2011 20:05:23 +0000 (20:05 +0000)]
Unreviewed; new baselines (Skia on Mac)

This separates test failures that are specific to CG Mac from failures
for Skia on Mac. Most of these changes are specific to Leopard, but a
handful add new fail flavors for all Mac variations.

* LayoutTests/platform/chromium/test_expectations.txt:

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

8 years agoRework script context creation/release notifications
aa@chromium.org [Tue, 20 Sep 2011 18:58:04 +0000 (18:58 +0000)]
Rework script context creation/release notifications
https://bugs.webkit.org/show_bug.cgi?id=67828

Reviewed by Adam Barth.

Source/WebCore:

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContextHandles):
(WebCore::V8DOMWindowShell::initContextIfNeeded):
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
(WebCore::V8IsolatedContext::destroy):
* bindings/v8/V8IsolatedContext.h:
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
(WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
* loader/FrameLoaderClient.h:

Source/WebKit/chromium:

* public/WebFrameClient.h:
(WebKit::WebFrameClient::didCreateScriptContext):
(WebKit::WebFrameClient::didDestroyScriptContext):
(WebKit::WebFrameClient::willReleaseScriptContext):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::didCreateScriptContext):
(WebKit::FrameLoaderClientImpl::willReleaseScriptContext):
* src/FrameLoaderClientImpl.h:
* tests/WebFrameTest.cpp:
(WebKit::TEST_F):
(WebKit::ContextLifetimeTestWebFrameClient::Notification::Notification):
(WebKit::ContextLifetimeTestWebFrameClient::Notification::~Notification):
(WebKit::ContextLifetimeTestWebFrameClient::Notification::Equals):
(WebKit::ContextLifetimeTestWebFrameClient::~ContextLifetimeTestWebFrameClient):
(WebKit::ContextLifetimeTestWebFrameClient::reset):
(WebKit::ContextLifetimeTestWebFrameClient::didCreateScriptContext):
(WebKit::ContextLifetimeTestWebFrameClient::willReleaseScriptContext):
* tests/data/context_notifications_test.html: Added.
* tests/data/context_notifications_test_frame.html: Added.

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

8 years agoRefactor Heap allocation logic into separate AllocationSpace class
oliver@apple.com [Tue, 20 Sep 2011 18:31:37 +0000 (18:31 +0000)]
Refactor Heap allocation logic into separate AllocationSpace class
https://bugs.webkit.org/show_bug.cgi?id=68409

Reviewed by Gavin Barraclough.

../../../../Volumes/Data/git/WebKit/OpenSource/Source/JavaScriptCore:

This patch hoists direct manipulation of the MarkedSpace and related
data out of Heap and into a separate class.  This will allow us to
have multiple allocation spaces in future, so easing the way towards
having GC'd backing stores for objects.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.gypi:
* JavaScriptCore.pro:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions):
* heap/AllocationSpace.cpp: Added.
(JSC::AllocationSpace::tryAllocate):
(JSC::AllocationSpace::allocateSlowCase):
(JSC::AllocationSpace::allocateBlock):
(JSC::AllocationSpace::freeBlocks):
(JSC::TakeIfEmpty::TakeIfEmpty):
(JSC::TakeIfEmpty::operator()):
(JSC::TakeIfEmpty::returnValue):
(JSC::AllocationSpace::shrink):
* heap/AllocationSpace.h: Added.
(JSC::AllocationSpace::AllocationSpace):
(JSC::AllocationSpace::blocks):
(JSC::AllocationSpace::sizeClassFor):
(JSC::AllocationSpace::setHighWaterMark):
(JSC::AllocationSpace::highWaterMark):
(JSC::AllocationSpace::canonicalizeBlocks):
(JSC::AllocationSpace::resetAllocator):
(JSC::AllocationSpace::forEachCell):
(JSC::AllocationSpace::forEachBlock):
(JSC::AllocationSpace::allocate):
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::clearMarks):
(JSC::Heap::sweep):
(JSC::Heap::objectCount):
(JSC::Heap::size):
(JSC::Heap::capacity):
(JSC::Heap::globalObjectCount):
(JSC::Heap::objectTypeCounts):
(JSC::Heap::collect):
(JSC::Heap::canonicalizeBlocks):
(JSC::Heap::resetAllocator):
(JSC::Heap::freeBlocks):
(JSC::Heap::shrink):
* heap/Heap.h:
(JSC::Heap::objectSpace):
(JSC::Heap::sizeClassForObject):
(JSC::Heap::allocate):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::recompileAllJSFunctions):
(JSC::JSGlobalData::releaseExecutableMemory):

../../../../Volumes/Data/git/WebKit/OpenSource/Source/WebCore:

Adding a forwarding header.

* ForwardingHeaders/heap/AllocationSpace.h: Added.

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

8 years agoBuild fix.
ggaren@apple.com [Tue, 20 Sep 2011 18:20:37 +0000 (18:20 +0000)]
Build fix.

* WebCorePrefix.h: Removed stray text from accidental paste.

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

8 years ago2011-09-20 Pavel Feldman <pfeldman@google.com>
pfeldman@chromium.org [Tue, 20 Sep 2011 18:17:18 +0000 (18:17 +0000)]
2011-09-20  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: one line inspector's script-formatter.html fix.

        * inspector/debugger/script-formatter.html:

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

8 years ago[EFL] Call FrameLoader::detachFromParent() when destroying a frame.
commit-queue@webkit.org [Tue, 20 Sep 2011 18:09:22 +0000 (18:09 +0000)]
[EFL] Call FrameLoader::detachFromParent() when destroying a frame.
https://bugs.webkit.org/show_bug.cgi?id=66855

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-20
Reviewed by Antonio Gomes.

Most other ports call this method somewhere when the frame is being
removed, as it performs some destruction calls which, in our case, at
least makes sure onunload events get delivered properly in
fast/frames/iframe-reparenting-adopt-node.html.

* ewk/ewk_frame.cpp:
(_ewk_frame_smart_del): Call FrameLoader::detachFromParent()

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

8 years agoRemoved BREWMP* platform #ifdefs
ggaren@apple.com [Tue, 20 Sep 2011 18:02:33 +0000 (18:02 +0000)]
Removed BREWMP* platform #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=68425

BREWMP* has no maintainer, and this is dead code.

Reviewed by Darin Adler.

../JavaScriptCore:

* heap/MarkStack.h:
(JSC::::shrinkAllocation):
* jit/ExecutableAllocator.h:
(JSC::ExecutableAllocator::cacheFlush):
* runtime/TimeoutChecker.cpp:
(JSC::getCPUTime):
* wtf/Assertions.cpp:
* wtf/Assertions.h:
* wtf/CurrentTime.cpp:
* wtf/DateMath.cpp:
(WTF::calculateUTCOffset):
* wtf/FastMalloc.cpp:
(WTF::fastMalloc):
(WTF::fastCalloc):
(WTF::fastMallocSize):
* wtf/FastMalloc.h:
* wtf/MainThread.cpp:
* wtf/MathExtras.h:
* wtf/OwnPtrCommon.h:
* wtf/Platform.h:
* wtf/RandomNumber.cpp:
(WTF::randomNumber):
* wtf/RandomNumberSeed.h:
(WTF::initializeRandomNumberGenerator):
* wtf/text/WTFString.h:
* wtf/unicode/Unicode.h:

../WebCore:

* WebCorePrefix.h:
* loader/cache/CachedFont.cpp:
* platform/DragData.h:
* platform/DragImage.h:
* platform/FileSystem.h:
* platform/PlatformKeyboardEvent.h:
* platform/PlatformMouseEvent.h:
* platform/PlatformTouchEvent.h:
* platform/PlatformTouchPoint.h:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):
* platform/Widget.h:
* platform/graphics/IntPoint.h:
* platform/graphics/IntSize.h:
* platform/graphics/WOFFFileFormat.cpp:
* platform/graphics/skia/FontCustomPlatformData.cpp:
(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
(WebCore::createFontCustomPlatformData):
* platform/graphics/skia/FontCustomPlatformData.h:
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
* platform/text/TextBoundaries.cpp:
* platform/text/TextEncoding.cpp:
(WebCore::TextEncoding::encode):
* platform/text/TextEncodingRegistry.cpp:
* plugins/PluginViewNone.cpp:

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

8 years agoWeb Inspector: Copy Stack Trace lacks newlines on Windows
pfeldman@chromium.org [Tue, 20 Sep 2011 17:47:18 +0000 (17:47 +0000)]
Web Inspector: Copy Stack Trace lacks newlines on Windows
https://bugs.webkit.org/show_bug.cgi?id=68447

Reviewed by Joseph Pecoraro.

* inspector/front-end/CallStackSidebarPane.js:
(WebInspector.CallStackSidebarPane.prototype._copyStackTrace):

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

8 years ago2011-09-20 Pavel Feldman <pfeldman@google.com>
pfeldman@chromium.org [Tue, 20 Sep 2011 17:44:11 +0000 (17:44 +0000)]
2011-09-20  Pavel Feldman  <pfeldman@google.com>

        Not reviewed: inspector sanity test fix.

        * inspector/front-end/inspector.js:
        (WebInspector.showConsole):

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

8 years ago[Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
alexis.menard@openbossa.org [Tue, 20 Sep 2011 17:08:18 +0000 (17:08 +0000)]
[Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
https://bugs.webkit.org/show_bug.cgi?id=68444

Reviewed by Andreas Kling.

Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.

Source/WebCore:

No new tests : just stubs.

* CodeGenerators.pri:
* WebCore.pro:
* features.pri:

Source/WebKit2:

* UIProcess/qt/WebFullScreenManagerProxyQt.cpp: Added.
(WebKit::WebFullScreenManagerProxy::invalidate):
(WebKit::WebFullScreenManagerProxy::enterFullScreen):
(WebKit::WebFullScreenManagerProxy::exitFullScreen):
(WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation):
(WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation):
(WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation):
(WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation):
(WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode):
(WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode):
(WebKit::WebFullScreenManagerProxy::getFullScreenRect):
* WebKit2.pro:
* WebProcess/FullScreen/qt: Added.
* WebProcess/FullScreen/qt/WebFullScreenManagerQt.cpp: Added.
(WebKit::WebFullScreenManagerQt::WebFullScreenManagerQt):
(WebKit::WebFullScreenManager::create):
(WebKit::WebFullScreenManagerQt::setRootFullScreenLayer):
(WebKit::WebFullScreenManagerQt::beginEnterFullScreenAnimation):
(WebKit::WebFullScreenManagerQt::beginExitFullScreenAnimation):
* WebProcess/FullScreen/qt/WebFullScreenManagerQt.h: Added.

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

8 years agoUnreviewed, rolling out r95509.
commit-queue@webkit.org [Tue, 20 Sep 2011 16:46:56 +0000 (16:46 +0000)]
Unreviewed, rolling out r95509.
http://trac.webkit.org/changeset/95509
https://bugs.webkit.org/show_bug.cgi?id=68446

crashes chromium fast/repaint/japanese-rl-selection-repaint-
in-regions.html on Win and Linux (Requested by dslomov on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-20

Source/WebCore:

* rendering/RenderBlock.cpp:
(WebCore::positionForPointRespectingEditingBoundaries):

LayoutTests:

* editing/selection/click-on-body-margin-expected.txt: Removed.
* editing/selection/click-on-body-margin.html: Removed.
* editing/selection/click-on-head-margin-expected.txt: Removed.
* editing/selection/click-on-head-margin.html: Removed.

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

8 years agoChangelog class should have a method to return all entries
commit-queue@webkit.org [Tue, 20 Sep 2011 16:45:34 +0000 (16:45 +0000)]
Changelog class should have a method to return all entries
https://bugs.webkit.org/show_bug.cgi?id=68399

Implement ChangeLog.parse_entries_from_file(). This method returns a generator
of ChangeLogEntry objects, ordered from the latest to the oldest entry in the file.

Patch by Leandro Pereira <leandro@profusion.mobi> on 2011-09-20
Reviewed by Ryosuke Niwa.

* Scripts/webkitpy/common/checkout/changelog.py: Copy parse_latest_entry_from_file()
and adapt it to become a generator.
* Scripts/webkitpy/common/checkout/changelog_unittest.py: Add test case.

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

8 years agoSource/WebCore: [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
commit-queue@webkit.org [Tue, 20 Sep 2011 16:41:59 +0000 (16:41 +0000)]
Source/WebCore: [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
https://bugs.webkit.org/show_bug.cgi?id=51159

Permit any URL with a local scheme to set a user style sheet. Allow qrc
resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-20
Reviewed by Kenneth Rohde Christiansen.

* page/Page.cpp:
(WebCore::Page::userStyleSheetLocationChanged):
* platform/qt/KURLQt.cpp:
(WebCore::KURL::fileSystemPath):

Source/WebKit/qt: [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
https://bugs.webkit.org/show_bug.cgi?id=51159

Permit any URL with a local scheme to set a user style sheet. Allow qrc
resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().

New test case makes sure a qrc URL will properly load a user stylesheet.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-20
Reviewed by Kenneth Rohde Christiansen.

(tst_QWebPage::userStyleSheetFromQrcUrl):
* tests/qwebpage/tst_qwebpage.qrc:

Tools: [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
https://bugs.webkit.org/show_bug.cgi?id=51159

Permit any URL with a local scheme to set a user style sheet. Allow qrc
resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().

Add DRT/WKTR qrc resource to test loading user style sheets from a qrc URL.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-20
Reviewed by Kenneth Rohde Christiansen.

* DumpRenderTree/qt/DumpRenderTree.pro:
* DumpRenderTree/qt/DumpRenderTree.qrc: Added.
* DumpRenderTree/qt/resources/user.css: Added.
(body):
* WebKitTestRunner/qt/WebKitTestRunner.pro:
* WebKitTestRunner/qt/WebKitTestRunner.qrc: Added.
* WebKitTestRunner/qt/resources/user.css: Added.
(body):

LayoutTests: [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
https://bugs.webkit.org/show_bug.cgi?id=51159

Permit any URL with a local scheme to set a user style sheet. Allow qrc
resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().

New platform layout test since user style sheet is testable from DRT.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-20
Reviewed by Kenneth Rohde Christiansen.

* platform/qt/fast/loader/user-stylesheet-qrc-path-expected.txt: Added.
* platform/qt/fast/loader/user-stylesheet-qrc-path.html: Added.

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

8 years agoChangeLogEntry class should contain a list of touched files
commit-queue@webkit.org [Tue, 20 Sep 2011 16:31:16 +0000 (16:31 +0000)]
ChangeLogEntry class should contain a list of touched files
https://bugs.webkit.org/show_bug.cgi?id=68115

Patch by Leandro Pereira <leandro@profusion.mobi> on 2011-09-20
Reviewed by Eric Seidel.

Add method to return the list of files touched in a ChangeLog entry.

* Scripts/webkitpy/common/checkout/changelog.py: Add
touched_files_regexp and touched_files() method.
* Scripts/webkitpy/common/checkout/changelog_unittest.py: Implement
unit tests for touched_files() method.

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

8 years ago[Chromium] Rebaseline expectationd and file WK68445.
dslomov@google.com [Tue, 20 Sep 2011 16:27:41 +0000 (16:27 +0000)]
[Chromium] Rebaseline expectationd and file WK68445.

* platform/chromium/test_expectations.txt:

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

8 years ago[Qt][WK2] Export QNetworkReply in the QtWebKit QML module.
alexis.menard@openbossa.org [Tue, 20 Sep 2011 16:08:20 +0000 (16:08 +0000)]
[Qt][WK2] Export QNetworkReply in the QtWebKit QML module.
https://bugs.webkit.org/show_bug.cgi?id=68401

Reviewed by Simon Hausmann.

Add QNetworkReply in the QtWebKit module. We use the enum QNetworkReply::NetworkError
as the error code when the load fails. It is not used in the QtQuick module therefore
the QML team thinks it should belong here. Also added some auto-tests to cover the
loading errors.

* UIProcess/API/qt/qmlplugin/plugin.cpp:
(WebKit2QmlPlugin::registerTypes):
* UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadFail.qml: Added.
* UIProcess/API/qt/tests/qmltests/TouchWebView/tst_loadFail.qml: Added.

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

8 years agoUnreviewed, rolling out r95526 and r95541.
ossy@webkit.org [Tue, 20 Sep 2011 15:46:29 +0000 (15:46 +0000)]
Unreviewed, rolling out r95526 and r95541.
http://trac.webkit.org/changeset/95526
http://trac.webkit.org/changeset/95541
https://bugs.webkit.org/show_bug.cgi?id=68443

It broke 6 tests (Requested by ossy_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-20

* DumpRenderTree/qt/main.cpp:
(main):
* WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:
(WTR::activateFonts):

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

8 years agoFix patch and bug numbering in the mocktool simulation code
commit-queue@webkit.org [Tue, 20 Sep 2011 15:43:07 +0000 (15:43 +0000)]
Fix patch and bug numbering in the mocktool simulation code
https://bugs.webkit.org/show_bug.cgi?id=68374

Patch by Tom Zakrajsek <tomz@codeaurora.org> on 2011-09-20
Reviewed by Adam Barth.

* Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
* Scripts/webkitpy/tool/bot/feeders_unittest.py:
* Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:
* Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:
* Scripts/webkitpy/tool/bot/queueengine_unittest.py:
* Scripts/webkitpy/tool/commands/download_unittest.py:
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
* Scripts/webkitpy/tool/commands/queries_unittest.py:
* Scripts/webkitpy/tool/commands/queues_unittest.py:
* Scripts/webkitpy/tool/commands/queuestest.py:
* Scripts/webkitpy/tool/commands/upload_unittest.py:
* Scripts/webkitpy/tool/mocktool.py:
* Scripts/webkitpy/tool/steps/steps_unittest.py:
* Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:

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

8 years agoSource/WebCore: [Qt][Mac] Buildfix after r95513.
ossy@webkit.org [Tue, 20 Sep 2011 14:57:38 +0000 (14:57 +0000)]
Source/WebCore: [Qt][Mac] Buildfix after r95513.
Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.

Rubber-stamped by Andras Becsi.

* DerivedSources.pro:
* WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.

Source/WebKit2: [Qt][Mac] Buildfix after r95513.

Rubber-stamped by Andras Becsi.

* Scripts/generate-forwarding-headers.pl: Add mm file supporting.

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

8 years ago[Qt] Don't override default QApplication font for DRT and WTR
vestbo@webkit.org [Tue, 20 Sep 2011 14:22:58 +0000 (14:22 +0000)]
[Qt] Don't override default QApplication font for DRT and WTR

Revision 95526 moved the relevant code below the QApplication
constructor, to fix a potential crash, and that made the code
take effect, breaking 6 tests.

We should rely on the QWebSettings to set default fonts, and
this QApplication::setFont() is a relic from when we didn't
have that option, so we remove the code.

Reviewed by Csaba Osztrogonác.

* DumpRenderTree/qt/main.cpp:
* WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:

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

8 years agoWindows build fix after r95523
aroben@apple.com [Tue, 20 Sep 2011 14:08:17 +0000 (14:08 +0000)]
Windows build fix after r95523

* wtf/CheckedArithmetic.h: Added stdint.h so we can have int64_t defined.

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

8 years agoUnreviewed; new baselines (Skia on Mac)
caryclark@google.com [Tue, 20 Sep 2011 14:03:21 +0000 (14:03 +0000)]
Unreviewed; new baselines (Skia on Mac)
Updated reference images.

* LayoutTests/platform/chromium-mac/fast/ruby/overhang-horizontal-expected.png: Removed.
* LayoutTests/platform/chromium-mac/fast/box-shadow/box-shadow-clipped-slices-expected.png:

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

8 years agoWeb Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
pfeldman@chromium.org [Tue, 20 Sep 2011 14:00:37 +0000 (14:00 +0000)]
Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
https://bugs.webkit.org/show_bug.cgi?id=68363

Migrates from poorly documented "details" object to explicit parameters
containing break type and data.

Reviewed by Tony Gentilcore.

Source/WebCore:

* inspector/InjectedScriptSource.js:
():
* inspector/Inspector.json:
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
(WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
(WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
(WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
(WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
(WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
(WebCore::InspectorDebuggerAgent::pause):
(WebCore::InspectorDebuggerAgent::didPause):
(WebCore::InspectorDebuggerAgent::didContinue):
(WebCore::InspectorDebuggerAgent::breakProgram):
(WebCore::InspectorDebuggerAgent::clear):
(WebCore::InspectorDebuggerAgent::clearBreakDetails):
* inspector/InspectorDebuggerAgent.h:
* inspector/front-end/DOMBreakpointsSidebarPane.js:
(WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
(WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
(WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
* inspector/front-end/DebuggerModel.js:
(WebInspector.DebuggerModel.prototype._pausedScript):
(WebInspector.DebuggerDispatcher.prototype.paused):
* inspector/front-end/DebuggerPresentationModel.js:
(WebInspector.PresentationCallFrame.prototype.evaluate):
* inspector/front-end/ScopeChainSidebarPane.js:
(WebInspector.ScopeChainSidebarPane.prototype.update):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
(WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
(WebInspector.ScriptsPanel.prototype._debuggerPaused):

LayoutTests:

* http/tests/inspector/debugger-test.js:
(initialize_DebuggerTest):

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

8 years ago[Qt] QDesktopWebView missing loadProgress tests
commit-queue@webkit.org [Tue, 20 Sep 2011 13:58:47 +0000 (13:58 +0000)]
[Qt] QDesktopWebView missing loadProgress tests
https://bugs.webkit.org/show_bug.cgi?id=68280

Patch by Gopal Raghavan <gopal.1.raghavan@nokia.com> on 2011-09-20
Reviewed by Andreas Kling.

Added test case to check load progress property and signal for QDesktopWebView

* UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgress.qml: Added.
* UIProcess/API/qt/tests/qmltests/DesktopWebView/tst_loadProgressSignal.qml: Added.
* UIProcess/API/qt/tests/qmltests/qmltests.pro:

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

8 years agoSource/WebCore: Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remov...
pfeldman@chromium.org [Tue, 20 Sep 2011 13:51:06 +0000 (13:51 +0000)]
Source/WebCore: Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
from drawer -> panel transition.
https://bugs.webkit.org/show_bug.cgi?id=68155

ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
and weird DOM element containment. As a result, we have a number of cases when switching
console from full panel to drawer mode and back result in UI glitches.
For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
screen" console animation.

Reviewed by Tony Gentilcore.

* inspector/front-end/ConsoleModel.js:
(WebInspector.ConsoleModel):
* inspector/front-end/ConsolePanel.js:
(WebInspector.ConsolePanel):
(WebInspector.ConsolePanel.prototype.get statusBarItems):
(WebInspector.ConsolePanel.prototype.show):
(WebInspector.ConsolePanel.prototype.hide):
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleView):
(WebInspector.ConsoleView.createFilterElement):
(WebInspector.ConsoleView.get this):
(WebInspector.ConsoleView.prototype.get statusBarItems):
(WebInspector.ConsoleView.prototype.wasShown):
* inspector/front-end/Drawer.js:
(WebInspector.Drawer):
(WebInspector.Drawer.prototype.get visible):
(WebInspector.Drawer.prototype._constrainHeight):
(WebInspector.Drawer.prototype.show.animationFinished):
(WebInspector.Drawer.prototype.show):
(WebInspector.Drawer.prototype.hide):
(WebInspector.Drawer.prototype.resize):
(WebInspector.Drawer.prototype._animationDuration):
* inspector/front-end/inspector.html:
* inspector/front-end/inspector.js:
(WebInspector._createGlobalStatusBarItems):
(WebInspector._toggleConsoleButtonClicked):
(WebInspector.set attached):
(WebInspector.windowResize):
(WebInspector.documentKeyDown):

LayoutTests: Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio.
https://bugs.webkit.org/show_bug.cgi?id=68155

Reviewed by Tony Gentilcore.

* inspector/console/console-dir.html:

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

8 years agoWeb Inspector: streamline Console's MessageType and MessageSource semantics.
pfeldman@chromium.org [Tue, 20 Sep 2011 13:46:08 +0000 (13:46 +0000)]
Web Inspector: streamline Console's MessageType and MessageSource semantics.
https://bugs.webkit.org/show_bug.cgi?id=68342

Source/WebCore:

This change fixes semantics of the MessageSource and MessageType:
MessageSource is now the source of the message (be it Network, HTML
parser or Console API). MessageType is only defined for the Console API
messages and contains the name of the API call (log, dir, dirxml, etc.).
Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
private to the inspector.

Reviewed by Tony Gentilcore.

* dom/Document.cpp:
(WebCore::Document::logExceptionToConsole):
* inspector/ConsoleMessage.cpp:
(WebCore::messageSourceValue):
(WebCore::messageTypeValue):
(WebCore::ConsoleMessage::addToFrontend):
* inspector/Inspector.json:
* inspector/InspectorConsoleAgent.cpp:
(WebCore::InspectorConsoleAgent::didReceiveResponse):
(WebCore::InspectorConsoleAgent::didFailLoading):
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessage.createTextMessage):
(WebInspector.ConsoleMessage.prototype._formatMessage):
(WebInspector.ConsoleMessage.prototype.toString):
* page/Console.cpp:
(WebCore::printMessageSourceAndLevelPrefix):
(WebCore::Console::addMessage):
(WebCore::Console::dir):
(WebCore::Console::dirxml):
(WebCore::Console::group):
(WebCore::Console::groupCollapsed):
(WebCore::Console::groupEnd):
* page/ConsoleTypes.h:
* websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::didFailSocketStream):

Source/WebKit/mac:

This change fixes semantics of the MessageSource and MessageType:
MessageSource is now the source of the message (be it Network, HTML
parser or Console API). MessageType is only defined for the Console API
messages and contains the name of the API call (log, dir, dirxml, etc.).
Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
private to the inspector.

Reviewed by Tony Gentilcore.

* WebCoreSupport/WebChromeClient.mm:
(stringForMessageSource):
(stringForMessageType):
* WebView/WebUIDelegatePrivate.h:

LayoutTests:

This change fixes semantics of the MessageSource and MessageType:
MessageSource is now the source of the message (be it Network, HTML
parser or Console API). MessageType is only defined for the Console API
messages and contains the name of the API call (log, dir, dirxml, etc.).
Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
private to the inspector.

Reviewed by Tony Gentilcore.

* inspector/protocol/console-agent-expected.txt:
* platform/chromium/http/tests/inspector/console-resource-errors-expected.txt: Added.

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

8 years agoMake WebViews in NSPopovers render as they would in active windows.
timothy@apple.com [Tue, 20 Sep 2011 13:37:35 +0000 (13:37 +0000)]
Make WebViews in NSPopovers render as they would in active windows.

The NSWindowDid{Become,Resign}KeyNotifications are not fired when NSPopovers
are shown or hidden since they share key with the parent window. So WebView
and WebHTMLView need to also observe the will order on/off screen notifications.

https://webkit.org/b/68402
rdar://problem/9754099

Reviewed by John Sullivan.

* WebView/WebHTMLView.mm:
(-[WebHTMLView _removeWindowObservers]): Remove order on/off screen notification obversers.
(-[WebHTMLView addWindowObservers]): Add order on/off screen notification obversers.
(-[WebHTMLView windowWillOrderOnScreen:]): Check if the window is already a key window,
which can be the case for NSPopovers.
(-[WebHTMLView windowWillOrderOffScreen:]): Remove the mouse moved observer.
* WebView/WebView.mm:
(-[WebView addWindowObserversForWindow:]): Add order off screen notification obverser.
(-[WebView removeWindowObservers]): Remove order off screen notification obverser.
(-[WebView _windowWillOrderOnScreen:]): Call _updateActiveState.
(-[WebView _windowWillOrderOffScreen:]): Ditto.

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

8 years agoUnreviewed, GTK baselines for new tests.
philn@webkit.org [Tue, 20 Sep 2011 12:45:42 +0000 (12:45 +0000)]
Unreviewed, GTK baselines for new tests.

* platform/gtk/css3/bdi-element-expected.png: Added.
* platform/gtk/css3/bdi-element-expected.txt: Added.
* platform/gtk/css3/unicode-bidi-isolate-aharon-expected.png: Added.
* platform/gtk/css3/unicode-bidi-isolate-aharon-expected.txt: Added.
* platform/gtk/css3/unicode-bidi-isolate-basic-expected.png: Added.
* platform/gtk/css3/unicode-bidi-isolate-basic-expected.txt: Added.
* platform/gtk/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
* platform/gtk/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
* platform/gtk/fast/borders/border-image-longhand-expected.png: Added.
* platform/gtk/fast/borders/border-image-longhand-expected.txt: Added.
* platform/gtk/fast/borders/border-image-massive-scale-expected.png: Added.
* platform/gtk/fast/borders/border-image-massive-scale-expected.txt: Added.
* platform/gtk/fast/borders/border-image-outset-expected.png: Added.
* platform/gtk/fast/borders/border-image-outset-expected.txt: Added.
* platform/gtk/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
* platform/gtk/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
* platform/gtk/fast/borders/border-image-outset-split-inline-expected.png: Added.
* platform/gtk/fast/borders/border-image-outset-split-inline-expected.txt: Added.
* platform/gtk/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
* platform/gtk/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
* platform/gtk/fast/borders/border-image-repeat-expected.png: Added.
* platform/gtk/fast/borders/border-image-repeat-expected.txt: Added.
* platform/gtk/fast/borders/border-image-scaled-expected.png: Added.
* platform/gtk/fast/borders/border-image-scaled-expected.txt: Added.
* platform/gtk/fast/borders/border-image-scaled-gradient-expected.png: Added.
* platform/gtk/fast/borders/border-image-scaled-gradient-expected.txt: Added.
* platform/gtk/fast/borders/border-image-scrambled-expected.png: Added.
* platform/gtk/fast/borders/border-image-scrambled-expected.txt: Added.
* platform/gtk/fast/borders/border-image-side-reduction-expected.png: Added.
* platform/gtk/fast/borders/border-image-side-reduction-expected.txt: Added.
* platform/gtk/fast/borders/border-image-slices-expected.png: Added.
* platform/gtk/fast/borders/border-image-slices-expected.txt: Added.
* platform/gtk/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
* platform/gtk/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
* platform/gtk/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
* platform/gtk/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
* platform/gtk/fast/clip/overflow-border-radius-combinations-expected.png: Added.
* platform/gtk/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
* platform/gtk/fast/clip/overflow-border-radius-composited-expected.png: Added.
* platform/gtk/fast/clip/overflow-border-radius-composited-expected.txt: Added.
* platform/gtk/fast/clip/overflow-border-radius-transformed-expected.png: Added.
* platform/gtk/fast/clip/overflow-border-radius-transformed-expected.txt: Added.
* platform/gtk/fast/css/focus-ring-multiline-writingmode-vertical-expected.png: Added.
* platform/gtk/fast/css/focus-ring-multiline-writingmode-vertical-expected.txt: Added.
* platform/gtk/fast/css/line-after-floating-div-expected.png: Added.
* platform/gtk/fast/css/line-after-floating-div-expected.txt: Added.
* platform/gtk/fast/parser/innerhtml-with-prefixed-elements-expected.png: Added.
* platform/gtk/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.
* platform/gtk/fast/reflections/reflection-masks-outset-expected.png: Added.
* platform/gtk/fast/reflections/reflection-masks-outset-expected.txt: Added.
* platform/gtk/fast/text/fallback-traits-fixup-expected.png: Added.
* platform/gtk/fast/text/fallback-traits-fixup-expected.txt: Added.
* platform/gtk/fast/text/hyphenate-limit-lines-expected.png: Added.
* platform/gtk/fast/text/hyphenate-limit-lines-expected.txt: Added.
* platform/gtk/svg/custom/pattern-rotate-gaps-expected.png: Added.
* platform/gtk/svg/custom/pattern-rotate-gaps-expected.txt: Added.
* platform/gtk/svg/custom/simple-text-double-shadow-expected.png: Added.
* platform/gtk/svg/custom/simple-text-double-shadow-expected.txt: Added.

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

8 years agoWebKitTestRunner: Provide usage if run without arguments
vestbo@webkit.org [Tue, 20 Sep 2011 12:34:51 +0000 (12:34 +0000)]
WebKitTestRunner: Provide usage if run without arguments

If WTR is run without either one or more filenames, or
a '-' to indicate server mode, we don't need to start
up the test machinery. Doing so might actually crash,
as we'll exit the application immedeatly after anyways.

Reviewed by Simon Hausmann.

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

8 years agoUnreviewed, GTK baselines for tests added in r95489 and r95488.
philn@webkit.org [Tue, 20 Sep 2011 12:25:54 +0000 (12:25 +0000)]
Unreviewed, GTK baselines for tests added in r95489 and r95488.

* platform/gtk/http/tests/security/document-all-expected.txt: Added.
* platform/gtk/http/tests/security/window-named-proto-expected.txt: Added.

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

8 years agoUnreviewed, GTK baselines for tests added in r95461.
philn@webkit.org [Tue, 20 Sep 2011 12:14:00 +0000 (12:14 +0000)]
Unreviewed, GTK baselines for tests added in r95461.

* platform/gtk/fast/table/table-cell-before-after-content-around-table-block-expected.txt: Added.
* platform/gtk/fast/table/table-cell-before-after-content-around-table-expected.txt: Added.
* platform/gtk/fast/table/table-cell-before-after-content-around-table-row-expected.txt: Added.
* platform/gtk/fast/table/table-row-before-after-content-around-block-expected.txt: Added.
* platform/gtk/fast/table/table-row-before-after-content-around-table-expected.txt: Added.

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

8 years ago[Qt] Rebase and unskip tests introduced in r95489 and r95488.
reni@webkit.org [Tue, 20 Sep 2011 12:10:31 +0000 (12:10 +0000)]
[Qt] Rebase and unskip tests introduced in r95489 and r95488.

Unreviewed gardening.

* platform/qt/Skipped:
* platform/qt/http/tests/security/document-all-expected.txt: Added.
* platform/qt/http/tests/security/window-named-proto-expected.txt: Added.

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

8 years agoUnreviewed, skip failing fast/files/create-blob-url-crash.html on
philn@webkit.org [Tue, 20 Sep 2011 11:50:26 +0000 (11:50 +0000)]
Unreviewed, skip failing fast/files/create-blob-url-crash.html on
GTK because of bug 66045.

* platform/gtk/Skipped:

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

8 years agoUnreviewed, GTK rebaseline after r95178 and r95362.
philn@webkit.org [Tue, 20 Sep 2011 11:43:43 +0000 (11:43 +0000)]
Unreviewed, GTK rebaseline after r95178 and r95362.

* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/gtk/fast/dom/call-a-constructor-as-a-function-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

8 years ago[Qt] Don't use QFont before initializing QApplication
vestbo@webkit.org [Tue, 20 Sep 2011 11:36:15 +0000 (11:36 +0000)]
[Qt] Don't use QFont before initializing QApplication

Could potentially result in crash.

Reviewed by Simon Hausmann.

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

8 years ago[Qt] resizeToContent seems to trigger infinite resize on some pages
commit-queue@webkit.org [Tue, 20 Sep 2011 10:41:11 +0000 (10:41 +0000)]
[Qt] resizeToContent seems to trigger infinite resize on some pages
https://bugs.webkit.org/show_bug.cgi?id=43852

Patch by Adenilson Cavalcanti <adenilson.silva@openbossa.org> on 2011-09-20
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

InnerHeight and InnerWidth are now calculated using ScrollView::visibleContentRect
including the scrollbars (if any) instead of using ScrollView::frameRect as before.

This makes no behavior change while not using the tiled backing
store and is compliant with the W3C definition stated in the CSSOM
View Module.

Plus it will return the correct values for tiled backing store,
thus fixing the original bug report by avoiding infinite resize
events caused by wrong innerHeight and innerWidth values.

Test: innerWidth/Height are covered by existing tests. The
non-infinite resizing is covered by a new Qt autotest at
test_qgraphicswebview::windowResizeEvent()

* page/DOMWindow.cpp:
(WebCore::DOMWindow::innerHeight): using ScrollView::visibleContentRect.
(WebCore::DOMWindow::innerWidth): using ScrollView::visibleContentRect.

Source/WebKit/qt:

Test by Luiz Agostini.

* tests/qgraphicswebview/tst_qgraphicswebview.cpp:
(ResizeSpy::receiveResize):
(ResizeSpy::size):
(tst_QGraphicsWebView::windowResizeEvent):

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

8 years agoWeb Inspector: implement reverse mapping for compiler source maps.
podivilov@chromium.org [Tue, 20 Sep 2011 10:22:59 +0000 (10:22 +0000)]
Web Inspector: implement reverse mapping for compiler source maps.
https://bugs.webkit.org/show_bug.cgi?id=67850

Source/WebCore:

Implement the mapping from source code to compiled code. It will be used for
setting breakpoints on source code.

Reviewed by Pavel Feldman.

* inspector/front-end/CompilerSourceMapping.js:
(WebInspector.ClosureCompilerSourceMapping):
(WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
(WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
(WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):

LayoutTests:

Reviewed by Pavel Feldman.

* inspector/debugger/compiler-source-mapping.html:

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

8 years agoDFG JIT does not speculate aggressively enough on GetById
fpizlo@apple.com [Tue, 20 Sep 2011 09:41:16 +0000 (09:41 +0000)]
DFG JIT does not speculate aggressively enough on GetById
https://bugs.webkit.org/show_bug.cgi?id=68320

Reviewed by Oliver Hunt.

This adds the ability to access properties directly, by offset.
This optimization kicks in when at the time of DFG compilation,
it appears that the given get_by_id is self-cached by the old JIT.
Two new opcodes get introduced: CheckStructure and GetByOffset.
CheckStructure performs a speculation check on the object's
structure, and returns the storage pointer. GetByOffset performs
a direct read of the field from the storage pointer. Both
CheckStructure and GetByOffset can be CSE'd, so that we can
eliminate redundant structure checks, and redundant reads of the
same field.

This is a 4% speed-up on V8, a 2% slow-down on Kraken, and
neutral on SunSpider.

* bytecode/PredictedType.cpp:
(JSC::predictionFromClassInfo):
(JSC::predictionFromStructure):
(JSC::predictionFromCell):
* bytecode/PredictedType.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGenerationInfo.h:
(JSC::DFG::dataFormatToString):
(JSC::DFG::needDataFormatConversion):
(JSC::DFG::GenerationInfo::initStorage):
(JSC::DFG::GenerationInfo::spill):
(JSC::DFG::GenerationInfo::fillStorage):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::predict):
(JSC::DFG::Graph::getPrediction):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::fillInteger):
(JSC::DFG::JITCodeGenerator::fillDouble):
(JSC::DFG::JITCodeGenerator::fillJSValue):
(JSC::DFG::JITCodeGenerator::fillStorage):
(JSC::DFG::GPRTemporary::GPRTemporary):
* dfg/DFGJITCodeGenerator.h:
(JSC::DFG::JITCodeGenerator::silentSpillGPR):
(JSC::DFG::JITCodeGenerator::silentFillGPR):
(JSC::DFG::JITCodeGenerator::spill):
(JSC::DFG::JITCodeGenerator::storageResult):
(JSC::DFG::StorageOperand::StorageOperand):
(JSC::DFG::StorageOperand::~StorageOperand):
(JSC::DFG::StorageOperand::index):
(JSC::DFG::StorageOperand::gpr):
(JSC::DFG::StorageOperand::use):
* dfg/DFGNode.h:
(JSC::DFG::OpInfo::OpInfo):
(JSC::DFG::Node::Node):
(JSC::DFG::Node::hasPrediction):
(JSC::DFG::Node::hasStructure):
(JSC::DFG::Node::structure):
(JSC::DFG::Node::hasStorageAccessData):
(JSC::DFG::Node::storageAccessDataIndex):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNode):
(JSC::DFG::Propagator::globalVarLoadElimination):
(JSC::DFG::Propagator::getMethodLoadElimination):
(JSC::DFG::Propagator::checkStructureLoadElimination):
(JSC::DFG::Propagator::getByOffsetLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
* wtf/StdLibExtras.h:
(WTF::safeCast):

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

8 years agoWeb Inspector: extract RawSourceCode source mapping logic to helper classes.
podivilov@chromium.org [Tue, 20 Sep 2011 09:28:50 +0000 (09:28 +0000)]
Web Inspector: extract RawSourceCode source mapping logic to helper classes.
https://bugs.webkit.org/show_bug.cgi?id=67789

Reviewed by Pavel Feldman.

* inspector/front-end/SourceFile.js:
(WebInspector.RawSourceCode.prototype.get uiSourceCode):
(WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
(WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
(WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
(WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
(WebInspector.RawSourceCode.prototype._createSourceMapping):
(WebInspector.RawSourceCode.prototype._saveSourceMapping):
(WebInspector.RawSourceCode.PlainSourceMapping):
(WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
(WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
(WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
(WebInspector.RawSourceCode.FormattedSourceMapping):
(WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
(WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
(WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):

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

8 years ago[GTK] WebProcess shouldn't use the GTK+ API
carlosgc@webkit.org [Tue, 20 Sep 2011 08:58:54 +0000 (08:58 +0000)]
[GTK] WebProcess shouldn't use the GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=68062

Reviewed by Martin Robinson.

Source/WebCore:

Move errors code that is common between webki1 and webkit2 to
WebCore so that it can be shared.

* GNUmakefile.list.am: Add new files to compilation.
* platform/gtk/ErrorsGtk.cpp: Added.
(WebCore::cancelledError):
(WebCore::blockedError):
(WebCore::cannotShowURLError):
(WebCore::interruptedForPolicyChangeError):
(WebCore::cannotShowMIMETypeError):
(WebCore::fileDoesNotExistError):
(WebCore::pluginWillHandleLoadError):
* platform/gtk/ErrorsGtk.h: Added.

Source/WebKit/gtk:

Use WebCore API to create errors in frame loader.

* WebCoreSupport/AssertMatchingEnums.cpp:
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::cancelledError):
(WebKit::FrameLoaderClient::blockedError):
(WebKit::FrameLoaderClient::cannotShowURLError):
(WebKit::FrameLoaderClient::interruptedForPolicyChangeError):
(WebKit::FrameLoaderClient::cannotShowMIMETypeError):
(WebKit::FrameLoaderClient::fileDoesNotExistError):
(WebKit::FrameLoaderClient::pluginWillHandleLoadError):
* webkit/webkiterror.cpp:
(webkit_network_error_quark):
(webkit_policy_error_quark):
(webkit_plugin_error_quark):

Source/WebKit/gtk/po:

* POTFILES: Remove FrameLoaderGtk.cpp and add ErrorsGtk.cpp.

Source/WebKit2:

Use WebCore API to create errors in WebProcess.

* GNUmakefile.am: Don't use webkit/webkierror.h.
* WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp:
(WebKit::cancelledError):
(WebKit::blockedError):
(WebKit::cannotShowURLError):
(WebKit::interruptedForPolicyChangeError):
(WebKit::cannotShowMIMETypeError):
(WebKit::fileDoesNotExistError):
(WebKit::pluginWillHandleLoadError):

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

8 years ago[Qt] Add Qt specific expecteds to new tests introduced in r95461.
reni@webkit.org [Tue, 20 Sep 2011 08:36:05 +0000 (08:36 +0000)]
[Qt] Add Qt specific expecteds to new tests introduced in r95461.

Unreviewed gardening.

* platform/qt/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
* platform/qt/fast/table/table-cell-before-after-content-around-table-block-expected.txt: Added.
* platform/qt/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
* platform/qt/fast/table/table-cell-before-after-content-around-table-expected.txt: Added.
* platform/qt/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
* platform/qt/fast/table/table-cell-before-after-content-around-table-row-expected.txt: Added.
* platform/qt/fast/table/table-row-before-after-content-around-block-expected.png: Added.
* platform/qt/fast/table/table-row-before-after-content-around-block-expected.txt: Added.
* platform/qt/fast/table/table-row-before-after-content-around-table-expected.png: Added.
* platform/qt/fast/table/table-row-before-after-content-around-table-expected.txt: Added.

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

8 years ago[Qt] Two tests fail after r95488 & r95489
reni@webkit.org [Tue, 20 Sep 2011 08:05:22 +0000 (08:05 +0000)]
[Qt] Two tests fail after r95488 & r95489
https://bugs.webkit.org/show_bug.cgi?id=68428

Skip the failing tests.

Unreviewed gardening.

* platform/qt/Skipped:

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

8 years ago2011-09-20 Carlos Garcia Campos <cgarcia@igalia.com>
carlosgc@webkit.org [Tue, 20 Sep 2011 07:57:52 +0000 (07:57 +0000)]
2011-09-20  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Update NEWS and configure.ac for 1.5.90 release

        Reviewed by Martin Robinson.

        * configure.ac:

2011-09-20  Philippe Normand  <pnormand@igalia.com>

        [GTK] Update NEWS and configure.ac for 1.5.90 release

        Reviewed by Martin Robinson.

        * NEWS:

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

8 years agoAttempt to fix the Leopard build.
mrowe@apple.com [Tue, 20 Sep 2011 06:33:57 +0000 (06:33 +0000)]
Attempt to fix the Leopard build.

* platform/mac/DisplaySleepDisabler.cpp:
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
* platform/mac/DisplaySleepDisabler.h:

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

8 years agoRemove toPrimitive from JSCell
mhahnenberg@apple.com [Tue, 20 Sep 2011 04:33:10 +0000 (04:33 +0000)]
Remove toPrimitive from JSCell
https://bugs.webkit.org/show_bug.cgi?id=67875

Reviewed by Darin Adler.

Part of the refactoring process to un-virtualize JSCell.  We move
all of the implicit functionality provided by the virtual toPrimitive method
in JSCell to be explicit in JSValue::toPrimitive and JSCell:toPrimitive while
also de-virtualizing JSCell::toPrimitive.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
(JSC::JSCell::toPrimitive):
* runtime/JSCell.h:

We replace JSNotAnObject::toPrimitive with defaultValue, which it overrides from
JSObject.  This pushes the virtual method further down, enabling us to get rid
of the virtual call in JSCell.  Eventually we'll probably have to deal with this
again, but we'll cross that bridge when we come to it.
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::defaultValue):
* runtime/JSNotAnObject.h:
* runtime/JSObject.h:
* runtime/JSString.h:

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

8 years agoRemoving one last case of DENABLE_JSC_MULTIPLE_THREADS -- the cmake folder doesn...
ggaren@apple.com [Tue, 20 Sep 2011 04:30:58 +0000 (04:30 +0000)]
Removing one last case of DENABLE_JSC_MULTIPLE_THREADS -- the cmake folder doesn't seem to have a ChangeLog

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

8 years agoRemoved ENABLE_JSC_MULTIPLE_THREADS and related #ifdefs.
ggaren@apple.com [Tue, 20 Sep 2011 04:24:34 +0000 (04:24 +0000)]
Removed ENABLE_JSC_MULTIPLE_THREADS and related #ifdefs.
https://bugs.webkit.org/show_bug.cgi?id=68422

Missed this one case before.

* features.gypi:

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

8 years ago<http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we...
mrowe@apple.com [Tue, 20 Sep 2011 04:14:55 +0000 (04:14 +0000)]
<webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect

On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
a NoIdleSleep assertion as the latter is implied by the former.

Source/WebCore:

Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
always be released when their owning objects go away.

Reviewed by Dan Bernstein.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/mac/DisplaySleepDisabler.cpp:
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
system activity timer when on Leopard.
(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
(WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
triggering on Leopard.
* platform/mac/DisplaySleepDisabler.h:
(WebCore::DisplaySleepDisabler::create):
* platform/mac/WebVideoFullscreenController.h:
* platform/mac/WebVideoFullscreenController.mm:
(-[WebVideoFullscreenController dealloc]):
(-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
(-[WebVideoFullscreenController mediaElement]): Ditto.
(-[WebVideoFullscreenController setMediaElement:]): Ditto.
(-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
(-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
disabler that we own.

Source/WebKit/mac:

Adopt the DisplaySleepDisabler class that was added to WebCore and remove all of duplicated logic from WebFullScreenController.

Reviewed by Dan Bernstein.

* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController dealloc]):
(-[WebFullScreenController _updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
disabler that we own.

Source/WebKit2:

Adopt the DisplaySleepDisabler class that was added to WebCore and remove all of duplicated logic from WKFullScreenWindowController.

Reviewed by Dan Bernstein.

* UIProcess/mac/WKFullScreenWindowController.h:
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController _updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
disabler that we own. Also adds a FIXME about an error that was noticed while working in this code.

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

8 years agoRemoved ENABLE_LAZY_BLOCK_FREEING and related #ifdefs
ggaren@apple.com [Tue, 20 Sep 2011 04:05:28 +0000 (04:05 +0000)]
Removed ENABLE_LAZY_BLOCK_FREEING and related #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=68424

As discussed on webkit-dev. All ports build with threads enabled in JSC now.

This may break WinCE and other ports that have not built and tested with
this configuration. I've filed bugs for port maintainers. It's time for
WebKit to move forward.

Reviewed by Mark Rowe.

* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::~Heap):
(JSC::Heap::destroy):
(JSC::Heap::blockFreeingThreadMain):
(JSC::Heap::allocateBlock):
(JSC::Heap::freeBlocks):
(JSC::Heap::releaseFreeBlocks):
* heap/Heap.h:
* wtf/Platform.h:

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

8 years agoRemoved ENABLE_WTF_MULTIPLE_THREADS and related #ifdefs
ggaren@apple.com [Tue, 20 Sep 2011 03:55:29 +0000 (03:55 +0000)]
Removed ENABLE_WTF_MULTIPLE_THREADS and related #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=68423

As discussed on webkit-dev. All ports build with threads enabled in WTF now.

This may break WinCE and other ports that have not built and tested with
this configuration. I've filed bugs for port maintainers. It's time for
WebKit to move forward.

Reviewed by Mark Rowe.

* wtf/CryptographicallyRandomNumber.cpp:
(WTF::ARC4Stream::ARC4RandomNumberGenerator::randomNumber):
(WTF::ARC4Stream::ARC4RandomNumberGenerator::randomValues):
* wtf/FastMalloc.cpp:
* wtf/Platform.h:
* wtf/RandomNumber.cpp:
(WTF::randomNumber):
* wtf/RefCountedLeakCounter.cpp:
(WTF::RefCountedLeakCounter::increment):
(WTF::RefCountedLeakCounter::decrement):
* wtf/ThreadingPthreads.cpp:
(WTF::initializeThreading):
* wtf/ThreadingWin.cpp:
(WTF::initializeThreading):
* wtf/dtoa.cpp:
(WTF::pow5mult):
* wtf/gtk/ThreadingGtk.cpp:
(WTF::initializeThreading):
* wtf/qt/ThreadingQt.cpp:
(WTF::initializeThreading):

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

8 years agoRemoved ENABLE_JSC_MULTIPLE_THREADS and related #ifdefs.
ggaren@apple.com [Tue, 20 Sep 2011 03:35:49 +0000 (03:35 +0000)]
Removed ENABLE_JSC_MULTIPLE_THREADS and related #ifdefs.
https://bugs.webkit.org/show_bug.cgi?id=68422

As discussed on webkit-dev. All ports build with threads enabled in JSC now.

This may break WinCE and other ports that have not built and tested with
this configuration. I've filed bugs for port maintainers. It's time for
WebKit to move forward.

Reviewed by Sam Weinig.

* API/APIShims.h:
(JSC::APIEntryShimWithoutLock::APIEntryShimWithoutLock):
* API/JSContextRef.cpp:
* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::MachineThreads):
(JSC::MachineThreads::~MachineThreads):
(JSC::MachineThreads::gatherConservativeRoots):
* heap/MachineStackMarker.h:
* runtime/InitializeThreading.cpp:
(JSC::initializeThreadingOnce):
(JSC::initializeThreading):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::sharedInstance):
* runtime/JSGlobalData.h:
(JSC::JSGlobalData::makeUsableFromMultipleThreads):
* runtime/JSLock.cpp:
* runtime/Structure.cpp:
* wtf/Platform.h:

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

8 years agoHit testing on margins of body and head elements doesn't recur
rniwa@webkit.org [Tue, 20 Sep 2011 02:48:04 +0000 (02:48 +0000)]
Hit testing on margins of body and head elements doesn't recur
https://bugs.webkit.org/show_bug.cgi?id=40753

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
of head/body and html elements when hit testing was done inside margins of head and body elements.

Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
since margins of head and body elements are special.

Tests: editing/selection/click-on-body-margin.html
       editing/selection/click-on-head-margin.html

* rendering/RenderBlock.cpp:
(WebCore::positionForPointRespectingEditingBoundaries):

LayoutTests:

Add tests to click on margins of head and body elements. WebKit should not
(attempt to) place the caret after or before head and body elements.

* editing/selection/click-on-body-margin-expected.txt: Added.
* editing/selection/click-on-body-margin.html: Added.
* editing/selection/click-on-head-margin-expected.txt: Added.
* editing/selection/click-on-head-margin.html: Added.

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

8 years agoAsk for audio hardware buffer size instead of using hardwired constants.
commit-queue@webkit.org [Tue, 20 Sep 2011 02:07:23 +0000 (02:07 +0000)]
Ask for audio hardware buffer size instead of using hardwired constants.
https://bugs.webkit.org/show_bug.cgi?id=67952

Patch by Raymond Toy <rtoy@google.com> on 2011-09-19
Reviewed by Kenneth Russell.

* public/WebKitPlatformSupport.h:
(WebKit::WebKitPlatformSupport::audioHardwareBufferSize): Declare
new member function audioHardwareBufferSize.
* src/AudioDestinationChromium.cpp:
(WebCore::AudioDestinationChromium::AudioDestinationChromium):
Call audioHardwareBufferSize() to get buffer size; update
m_callbackBuffersize and m_renderCountPerCallback appropriately.
Remove global variables callbackBufferSize and
renderCountPerCallback.  Add constant for maximum
allowed buffer size and verify we don't exceed it.
(WebCore::AudioDestinationChromium::render): Use new member
variables instead of globals.
* src/AudioDestinationChromium.h:
Define new member variables m_callbackBufferSize and
m_renderCountPerCallback

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

8 years agoUnreviewed, rolling out r95493 and r95496.
commit-queue@webkit.org [Tue, 20 Sep 2011 01:53:00 +0000 (01:53 +0000)]
Unreviewed, rolling out r95493 and r95496.
http://trac.webkit.org/changeset/95493
http://trac.webkit.org/changeset/95496
https://bugs.webkit.org/show_bug.cgi?id=68418

Broke Windows build (Requested by rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-19

Source/JavaScriptCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.gypi:
* JavaScriptCore.pro:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions):
* heap/AllocationSpace.cpp: Removed.
* heap/AllocationSpace.h: Removed.
* heap/Heap.cpp:
(JSC::CountFunctor::TakeIfEmpty::TakeIfEmpty):
(JSC::CountFunctor::TakeIfEmpty::operator()):
(JSC::CountFunctor::TakeIfEmpty::returnValue):
(JSC::Heap::Heap):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::tryAllocate):
(JSC::Heap::allocateSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::clearMarks):
(JSC::Heap::sweep):
(JSC::Heap::objectCount):
(JSC::Heap::size):
(JSC::Heap::capacity):
(JSC::Heap::globalObjectCount):
(JSC::Heap::objectTypeCounts):
(JSC::Heap::collect):
(JSC::Heap::canonicalizeBlocks):
(JSC::Heap::resetAllocator):
(JSC::Heap::allocateBlock):
(JSC::Heap::freeBlocks):
(JSC::Heap::shrink):
* heap/Heap.h:
(JSC::Heap::markedSpace):
(JSC::Heap::forEachCell):
(JSC::Heap::forEachBlock):
(JSC::Heap::sizeClassFor):
(JSC::Heap::allocate):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::recompileAllJSFunctions):
(JSC::JSGlobalData::releaseExecutableMemory):

Source/WebCore:

* ForwardingHeaders/heap/AllocationSpace.h: Removed.

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

8 years ago[chromium] ContentLayer's texture updater deleted during paint when compositing turns...
commit-queue@webkit.org [Tue, 20 Sep 2011 01:49:52 +0000 (01:49 +0000)]
[chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
https://bugs.webkit.org/show_bug.cgi?id=68405

Patch by James Robinson <jamesr@chromium.org> on 2011-09-19
Reviewed by Kenneth Russell.

Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
compositing is turned off halfway through a paint.

* platform/graphics/chromium/ContentLayerChromium.h:
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerTextureUpdater::create):
* platform/graphics/chromium/ImageLayerChromium.h:
* platform/graphics/chromium/LayerTextureUpdater.h:
* platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
(WebCore::LayerTextureUpdaterBitmap::create):
(WebCore::LayerTextureUpdaterSkPicture::create):
* platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::prepareToUpdate):

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

8 years agoErrrk, missed stylebot comments in last commit.
barraclough@apple.com [Tue, 20 Sep 2011 01:44:56 +0000 (01:44 +0000)]
Errrk, missed stylebot comments in last commit.

* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncSplit):

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

8 years agoString#split is buggy
barraclough@apple.com [Tue, 20 Sep 2011 01:41:42 +0000 (01:41 +0000)]
String#split is buggy
https://bugs.webkit.org/show_bug.cgi?id=68348

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* runtime/StringPrototype.cpp:
(JSC::jsStringWithReuse):
    - added helper function to reuse original JSString value.
(JSC::stringProtoFuncSplit):
    - Rewritten from the spec.
* tests/mozilla/ecma/String/15.5.4.8-2.js:
(getTestCases):
    - This test is not ES5 compliant.

LayoutTests:

* fast/js/script-tests/string-split-conformance.js: Added.
* fast/js/string-split-conformance-expected.txt: Added.
* fast/js/string-split-conformance.html: Added.
    - Added new Layout test based on:
        http://stevenlevithan.com/demo/split.cfm
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T6-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T7-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T8-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A1_T9-expected.txt:
* sputnik/Conformance/15_Native_Objects/15.5_String/15.5.4/15.5.4.14_String.prototype.split/S15.5.4.14_A2_T7-expected.txt:
    - Check in failing results for these 5 tests; they are all wrong
      (see https://bugs.ecmascript.org/show_bug.cgi?id=61).

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

8 years agoRemoved lots of friend declarations from JSCell, so we can more
ggaren@apple.com [Tue, 20 Sep 2011 01:21:51 +0000 (01:21 +0000)]
Removed lots of friend declarations from JSCell, so we can more
effectively make use of private and protected.

Reviewed by Sam Weinig.

* runtime/JSCell.h: Removed MSVCBugWorkaround because it was a lot of
confusion for not much safety.
(JSC::JSCell::operator new): Made this public because it is used by a
few clients, and not really dangerous.

* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::defineGetter):
(JSC::JSObject::defineSetter):
(JSC::JSObject::getPropertySpecificValue):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::seal):
(JSC::JSObject::freeze):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::removeDirect):
(JSC::JSObject::createInheritorID):
(JSC::JSObject::allocatePropertyStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/JSObject.h:
(JSC::JSObject::getDirect):
(JSC::JSObject::getDirectLocation):
(JSC::JSObject::hasCustomProperties):
(JSC::JSObject::hasGetterSetterProperties):
(JSC::JSObject::isSealed):
(JSC::JSObject::isFrozen):
(JSC::JSObject::isExtensible):
(JSC::JSObject::flattenDictionaryObject):
(JSC::JSObject::finishCreation):
(JSC::JSObject::prototype):
(JSC::JSObject::setPrototype):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSCell::fastGetOwnProperty):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::JSObject::transitionTo):
(JSC::JSObject::visitChildrenDirect): Changed all use of m_structure to
structure() / setStructure(), so we don't have to be a friend of JSCell.

* runtime/Structure.h:
(JSC::JSCell::setStructure): Added, to avoid direct access by JSObject
to JSCell::m_structure.

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

8 years agoEliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
macpherson@chromium.org [Tue, 20 Sep 2011 01:20:12 +0000 (01:20 +0000)]
Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
https://bugs.webkit.org/show_bug.cgi?id=68057

Reviewed by Darin Adler.

There appear to be many cases where -1 is actually a valid Length.
Encoding the validity of Length separately to the value is a natural solution.

No new tests / no behavioral changes.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyLength::applyValue):
* platform/Length.h:
(WebCore::Length::Length):
(WebCore::Length::value):
(WebCore::Length::calcValue):
(WebCore::Length::calcMinValue):
(WebCore::Length::calcFloatValue):
(WebCore::Length::isUndefined):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computePreferredLogicalWidths):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::isLogicalWidthSpecified):
(WebCore::RenderImage::isLogicalHeightSpecified):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::computePreferredLogicalWidths):
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::computePreferredLogicalWidths):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computePreferredLogicalWidths):
* rendering/RenderSlider.cpp:
(WebCore::RenderSlider::computePreferredLogicalWidths):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::computePreferredLogicalWidths):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::initialMaxSize):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computePreferredLogicalWidths):

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

8 years agoAlways enable ENABLE(EVENTSOURCE)
abarth@webkit.org [Tue, 20 Sep 2011 01:04:25 +0000 (01:04 +0000)]
Always enable ENABLE(EVENTSOURCE)
https://bugs.webkit.org/show_bug.cgi?id=68414

Reviewed by Eric Seidel.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmakeconfig.h.cmake:
* configure.ac:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

EventSource seems to be here to stay.  This patch makes WebKit more
hackable by removing this ENABLE macro, as discussed on webkit-dev.

* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* bindings/cpp/WebDOMEventTarget.cpp:
(toWebKit):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::eventSource):
* bindings/js/JSEventSourceCustom.cpp:
* bindings/js/JSEventTarget.cpp:
(WebCore::toJS):
(WebCore::toEventTarget):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::eventSource):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
* features.pri:
* page/DOMWindow.idl:
* page/EventSource.cpp:
* page/EventSource.h:
* page/EventSource.idl:
* workers/WorkerContext.idl:

Source/WebKit/chromium:

* features.gypi:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/build-webkit:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

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

8 years agoSheriffbot rollout should be more intuitive.
levin@chromium.org [Tue, 20 Sep 2011 00:56:48 +0000 (00:56 +0000)]
Sheriffbot rollout should be more intuitive.
https://bugs.webkit.org/show_bug.cgi?id=68415

Reviewed by Adam Barth.

* Scripts/webkitpy/tool/bot/irc_command.py: Add support for revert and comma separated args.
* Scripts/webkitpy/tool/bot/irc_command_unittest.py: Add parsing tests for comma separated args
  and a few others cases.
* Scripts/webkitpy/tool/bot/sheriffircbot_unittest.py: Verify that revert works.

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

8 years agocheck-webkit-style generates bogus warning for StructuredExceptionHandlerSupressor.h
levin@chromium.org [Tue, 20 Sep 2011 00:38:09 +0000 (00:38 +0000)]
check-webkit-style generates bogus warning for StructuredExceptionHandlerSupressor.h
https://bugs.webkit.org/show_bug.cgi?id=68391

Reviewed by Darin Adler.

* Scripts/webkitpy/style/checkers/cpp.py: Skip __asm lines when doing style checks on a line.
* Scripts/webkitpy/style/checkers/cpp_unittest.py: Added a test for this.

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

8 years agoEnable JSC_MULTIPLE_THREADS for OS(QNX).
commit-queue@webkit.org [Tue, 20 Sep 2011 00:35:41 +0000 (00:35 +0000)]
Enable JSC_MULTIPLE_THREADS for OS(QNX).
https://bugs.webkit.org/show_bug.cgi?id=68047

Patch by Eli Fidler <efidler@rim.com> on 2011-09-19
Reviewed by Daniel Bates.

SA_RESTART was required for SIGUSR2-based debugging, but is not
present on QNX. This debugging doesn't seem critical to
JSC_MULTIPLE_THREADS, so allow it to proceed.

* heap/MachineStackMarker.cpp:
(JSC::MachineThreads::Thread::Thread):
(JSC::getPlatformThreadRegisters):
(JSC::otherThreadStackPointer):
(JSC::freePlatformThreadRegisters):
* wtf/Platform.h: enable PTHREADS for OS(QNX)

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

8 years agoFix a use-after-free: clear the fullscreen change event target queue at
commit-queue@webkit.org [Tue, 20 Sep 2011 00:19:02 +0000 (00:19 +0000)]
Fix a use-after-free: clear the fullscreen change event target queue at
detach time, rather than at destruction time. If this isn't done, it's
possible for the event target queue to be the only thing that
references the document. Then when the document is popped off the queue
and dereferenced in Document::fullScreenChangeDelayTimerFired, the
document is destroyed and the subsequent access to
m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
https://bugs.webkit.org/show_bug.cgi?id=67960

Patch by Jeremy Apthorp <jeremya@chromium.org> on 2011-09-19
Reviewed by Adam Barth.

* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::detach):

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

8 years agoWindows build fix.
oliver@apple.com [Mon, 19 Sep 2011 23:50:15 +0000 (23:50 +0000)]
Windows build fix.

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

8 years agoSuppress flakey test on windows in Chromium gesture recognizer
commit-queue@webkit.org [Mon, 19 Sep 2011 23:49:50 +0000 (23:49 +0000)]
Suppress flakey test on windows in Chromium gesture recognizer
https://bugs.webkit.org/show_bug.cgi?id=68408

Patch by Robert Kroeger <rjkroege@chromium.org> on 2011-09-19
Reviewed by Adam Barth.

* tests/InnerGestureRecognizerTest.cpp:
(TEST_F):

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

8 years agoUnreviewed, rolling out r95482.
commit-queue@webkit.org [Mon, 19 Sep 2011 23:48:27 +0000 (23:48 +0000)]
Unreviewed, rolling out r95482.
http://trac.webkit.org/changeset/95482
https://bugs.webkit.org/show_bug.cgi?id=68410

Broke chromium webkit-tests (Requested by dslomov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-19

Source/WebCore:

* platform/image-encoders/skia/JPEGImageEncoder.cpp:
(WebCore::RGBAtoRGB):

LayoutTests:

* fast/canvas/webgl/premultiplyalpha-test-expected.txt:
* fast/canvas/webgl/premultiplyalpha-test.html:

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

8 years agoRefactor Heap allocation logic into separate AllocationSpace class
oliver@apple.com [Mon, 19 Sep 2011 23:15:21 +0000 (23:15 +0000)]
Refactor Heap allocation logic into separate AllocationSpace class
https://bugs.webkit.org/show_bug.cgi?id=68409

Reviewed by Gavin Barraclough.

../../../../Volumes/Data/git/WebKit/OpenSource/Source/JavaScriptCore:

This patch hoists direct manipulation of the MarkedSpace and related
data out of Heap and into a separate class.  This will allow us to
have multiple allocation spaces in future, so easing the way towards
having GC'd backing stores for objects.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.gypi:
* JavaScriptCore.pro:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions):
* heap/AllocationSpace.cpp: Added.
(JSC::AllocationSpace::tryAllocate):
(JSC::AllocationSpace::allocateSlowCase):
(JSC::AllocationSpace::allocateBlock):
(JSC::AllocationSpace::freeBlocks):
(JSC::TakeIfEmpty::TakeIfEmpty):
(JSC::TakeIfEmpty::operator()):
(JSC::TakeIfEmpty::returnValue):
(JSC::AllocationSpace::shrink):
* heap/AllocationSpace.h: Added.
(JSC::AllocationSpace::AllocationSpace):
(JSC::AllocationSpace::blocks):
(JSC::AllocationSpace::sizeClassFor):
(JSC::AllocationSpace::setHighWaterMark):
(JSC::AllocationSpace::highWaterMark):
(JSC::AllocationSpace::canonicalizeBlocks):
(JSC::AllocationSpace::resetAllocator):
(JSC::AllocationSpace::forEachCell):
(JSC::AllocationSpace::forEachBlock):
(JSC::AllocationSpace::allocate):
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::clearMarks):
(JSC::Heap::sweep):
(JSC::Heap::objectCount):
(JSC::Heap::size):
(JSC::Heap::capacity):
(JSC::Heap::globalObjectCount):
(JSC::Heap::objectTypeCounts):
(JSC::Heap::collect):
(JSC::Heap::canonicalizeBlocks):
(JSC::Heap::resetAllocator):
(JSC::Heap::freeBlocks):
(JSC::Heap::shrink):
* heap/Heap.h:
(JSC::Heap::objectSpace):
(JSC::Heap::sizeClassForObject):
(JSC::Heap::allocate):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::recompileAllJSFunctions):
(JSC::JSGlobalData::releaseExecutableMemory):

../../../../Volumes/Data/git/WebKit/OpenSource/Source/WebCore:

Adding a forwarding header.

* ForwardingHeaders/heap/AllocationSpace.h: Added.

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

8 years ago[Qt] Unreviewed coding style fix.
alexis.menard@openbossa.org [Mon, 19 Sep 2011 23:13:18 +0000 (23:13 +0000)]
[Qt] Unreviewed coding style fix.

* UIProcess/API/qt/qdesktopwebview.h:
* UIProcess/API/qt/qtouchwebpage.h:
* UIProcess/API/qt/qweberror.h:

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

8 years agoExpose AXObjectCache methods so that WebAccessibilityCache
commit-queue@webkit.org [Mon, 19 Sep 2011 23:04:11 +0000 (23:04 +0000)]
Expose AXObjectCache methods so that WebAccessibilityCache
can be deleted.
https://bugs.webkit.org/show_bug.cgi?id=68225

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-19
Reviewed by Dimitri Glazkov.

This patch exposes the functionality needed from AXObjectCache
with new methods in WebAccessibilityObject and WebDocument.
Next, Chromium will be updated to use only these methods and
not WebAccessibilityCache. Then, WebAccessibilityCache can be
deleted from WebKit.

* public/WebAccessibilityObject.h:
* public/WebDocument.h:
* src/WebAccessibilityObject.cpp:
(WebKit::WebAccessibilityObject::enableAccessibility):
(WebKit::WebAccessibilityObject::accessibilityEnabled):
(WebKit::WebAccessibilityObject::axID):
* src/WebDocument.cpp:
(WebKit::WebDocument::accessibilityObject):
(WebKit::WebDocument::accessibilityObjectFromID):

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

8 years agoPerform HTTP method and header validation in AssociatedURLLoader for
bbudge@chromium.org [Mon, 19 Sep 2011 23:02:52 +0000 (23:02 +0000)]
Perform HTTP method and header validation in AssociatedURLLoader for
requests coming from untrusted code (eg. Native Client in Chrome). Use
the same code as XMLHttpRequest to reduce code duplication and have
behavior identical to XHR in Javascript. Add an 'untrustedHTTP' option
to WebURLLoaderOptions, which AssociatedURLLoader can use to determine
if it should check the request method and headers.
https://bugs.webkit.org/show_bug.cgi?id=67655

Reviewed by Darin Fisher.

* public/WebURLLoaderOptions.h:
(WebKit::WebURLLoaderOptions::WebURLLoaderOptions):
* src/AssociatedURLLoader.cpp:
(WebKit::AssociatedURLLoader::ClientAdapter::setDelayedError):
(WebKit::AssociatedURLLoader::loadAsynchronously):
* tests/AssociatedURLLoaderTest.cpp:
(WebKit::AssociatedURLLoaderTest::CheckMethodFails):
(WebKit::AssociatedURLLoaderTest::CheckHeaderFails):
(WebKit::AssociatedURLLoaderTest::CheckFails):
(WebKit::TEST_F):

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

8 years ago[V8] document.all gets confused about its prototype chain
abarth@webkit.org [Mon, 19 Sep 2011 22:57:30 +0000 (22:57 +0000)]
[V8] document.all gets confused about its prototype chain
https://bugs.webkit.org/show_bug.cgi?id=68393

Reviewed by Eric Seidel.

Source/WebCore:

GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
not a good idea to use its return value.  It turns out that all the
callers of the API only cared about whether it returns a null handle.

Test: http/tests/security/document-all.html

* bindings/v8/V8Collection.h:
(WebCore::collectionNamedPropertyGetter):
* bindings/v8/custom/V8DOMStringMapCustom.cpp:
(WebCore::V8DOMStringMap::namedPropertyDeleter):
(WebCore::V8DOMStringMap::namedPropertySetter):
* bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
(WebCore::V8HTMLAllCollection::namedPropertyGetter):
* bindings/v8/custom/V8HTMLCollectionCustom.cpp:
(WebCore::V8HTMLCollection::namedPropertyGetter):
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
(WebCore::V8NamedNodeMap::namedPropertyGetter):
* bindings/v8/custom/V8StorageCustom.cpp:
(WebCore::storageSetter):

LayoutTests:

Test how document.all behaves when you change its prototype chain.

* http/tests/security/document-all-expected.txt: Added.
* http/tests/security/document-all.html: Added.

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

8 years agoNamed property confusion with __proto__
abarth@webkit.org [Mon, 19 Sep 2011 22:56:22 +0000 (22:56 +0000)]
Named property confusion with __proto__
https://bugs.webkit.org/show_bug.cgi?id=68221

Reviewed by Eric Seidel.

Source/WebCore:

The __proto__ property is super magical because it's not a real named
property and it has higher precedence than even interceptors.  This
confuses this check, which is meant to detech which names will get
handled by our interceptor.

Test: http/tests/security/window-named-proto.html

* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::namedSecurityCheck):

LayoutTests:

* http/tests/security/resources/innocent-victim-with-iframe.html: Added.
* http/tests/security/window-named-proto-expected.txt: Added.
* http/tests/security/window-named-proto.html: Added.

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

8 years agoRename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
abarth@webkit.org [Mon, 19 Sep 2011 22:54:53 +0000 (22:54 +0000)]
Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
https://bugs.webkit.org/show_bug.cgi?id=68292

Reviewed by Eric Seidel.

Source/WebCore:

OpenType Sanitizer is a library for sanitizing type and not a feature.
Therefore this macro should say that we USE the library.

* platform/graphics/WOFFFileFormat.cpp:
* platform/graphics/WOFFFileFormat.h:
* platform/graphics/mac/FontCustomPlatformData.cpp:
(WebCore::createFontCustomPlatformData):
* platform/graphics/opentype/OpenTypeSanitizer.cpp:
* platform/graphics/opentype/OpenTypeSanitizer.h:
* platform/graphics/skia/FontCustomPlatformData.cpp:
(WebCore::createFontCustomPlatformData):
(WebCore::FontCustomPlatformData::supportsFormat):

Source/WebKit/chromium:

* features.gypi:

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

8 years agoRemove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
abarth@webkit.org [Mon, 19 Sep 2011 22:53:04 +0000 (22:53 +0000)]
Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
https://bugs.webkit.org/show_bug.cgi?id=68407

Reviewed by Eric Seidel.

As discussed on webkit-dev, no one appears to be using this code.

* GNUmakefile.list.am:
* UseJSC.cmake:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSBindingsAllInOne.cpp:
* bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.

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

8 years agoWindows build fix after r95310
aroben@apple.com [Mon, 19 Sep 2011 22:32:20 +0000 (22:32 +0000)]
Windows build fix after r95310

* JavaScriptCore.vcproj/testRegExp/testRegExpCommon.vsprops: Added
include\private\JavaScriptCore to the include path so DFGIntrinsic.h can be found.

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

8 years agoDFG speculation failures should act as additional value profiles
fpizlo@apple.com [Mon, 19 Sep 2011 22:27:38 +0000 (22:27 +0000)]
DFG speculation failures should act as additional value profiles
https://bugs.webkit.org/show_bug.cgi?id=68335

Reviewed by Oliver Hunt.

This adds slow-case counters to the old JIT. It also ensures that
negative zero in multiply is handled carefully. The old JIT
previously took slow path if the result of a multiply was zero,
which, without any changes, would cause the DFG to think that
every such multiply produced a double result.

This also fixes a bug in the old JIT's handling of decrements. It
would take the slow path if the result was zero, but not if it
underflowed.

By itself, this would be a 1% slow-down on V8 and Kraken. But then
I wrote optimizations in the DFG that take advantage of this new
information. It's no longer the case that every multiply needs to
do a check for negative zero; it only happens if the negative
zero is ignored.

This results in a 12% speed-up on v8-crypto, for a 1.4% geomean
speed-up in V8. It's mostly neutral on Kraken. I can see an
0.5% slow-down and it appears to be significant.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::resetRareCaseProfiles):
(JSC::CodeBlock::dumpValueProfiles):
* bytecode/CodeBlock.h:
* bytecode/ValueProfile.h:
(JSC::RareCaseProfile::RareCaseProfile):
(JSC::getRareCaseProfileBytecodeOffset):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::toInt32):
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::GPRTemporary::GPRTemporary):
* dfg/DFGJITCodeGenerator.h:
* dfg/DFGNode.h:
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNode):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::clobbersWorld):
(JSC::DFG::Propagator::performNodeCSE):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
* jit/JIT.h:
(JSC::JIT::linkDummySlowCase):
* jit/JITArithmetic.cpp:
(JSC::JIT::emit_op_post_dec):
(JSC::JIT::emit_op_pre_dec):
(JSC::JIT::compileBinaryArithOp):
(JSC::JIT::emit_op_add):
(JSC::JIT::emitSlow_op_add):
* jit/JITInlineMethods.h:
(JSC::JIT::addSlowCase):

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

8 years agoUnreviewed, rolling out r95385 and r95457.
commit-queue@webkit.org [Mon, 19 Sep 2011 22:26:34 +0000 (22:26 +0000)]
Unreviewed, rolling out r95385 and r95457.
http://trac.webkit.org/changeset/95385
http://trac.webkit.org/changeset/95457
https://bugs.webkit.org/show_bug.cgi?id=68395

Broke chromium browser_tests (Requested by dslomov on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-19

Source/WebCore:

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContextHandles):
(WebCore::V8DOMWindowShell::initContextIfNeeded):
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
(WebCore::V8IsolatedContext::destroy):
* bindings/v8/V8IsolatedContext.h:
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
(WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
(WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
* loader/FrameLoaderClient.h:

Source/WebKit/chromium:

* public/WebFrameClient.h:
(WebKit::WebFrameClient::didCreateIsolatedScriptContext):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::didCreateScriptContextForFrame):
(WebKit::FrameLoaderClientImpl::didDestroyScriptContextForFrame):
(WebKit::FrameLoaderClientImpl::didCreateIsolatedScriptContext):
* src/FrameLoaderClientImpl.h:
* tests/WebFrameTest.cpp:
(WebKit::TEST_F):
* tests/data/context_notifications_test.html: Removed.
* tests/data/context_notifications_test_frame.html: Removed.

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

8 years agoFix nonpremultiplied webgl toDataURL to jpeg
commit-queue@webkit.org [Mon, 19 Sep 2011 22:23:28 +0000 (22:23 +0000)]
Fix nonpremultiplied webgl toDataURL to jpeg
https://bugs.webkit.org/show_bug.cgi?id=68366

Source/WebCore:

The canvas spec says that toDataURL to formats without an alpha must
be "composited onto a solid black background using the source-over
operator." Do that.

Patch by John Bauman <jbauman@chromium.org> on 2011-09-19
Reviewed by Kenneth Russell.

* platform/image-encoders/skia/JPEGImageEncoder.cpp:
(WebCore::RGBAtoRGB):

LayoutTests:

Update the premultiplyalpha-test from the WebGL conformance tests.

Patch by John Bauman <jbauman@chromium.org> on 2011-09-19
Reviewed by Kenneth Russell.

* fast/canvas/webgl/premultiplyalpha-test-expected.txt:
* fast/canvas/webgl/premultiplyalpha-test.html:

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

8 years agoLet Xcode 4 do its thang with ANGLE.xcodeproj
aroben@apple.com [Mon, 19 Sep 2011 22:20:41 +0000 (22:20 +0000)]
Let Xcode 4 do its thang with ANGLE.xcodeproj

* ANGLE.xcodeproj/project.pbxproj:

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

8 years agoWindows build fix after r94575
aroben@apple.com [Mon, 19 Sep 2011 22:20:32 +0000 (22:20 +0000)]
Windows build fix after r94575

* JavaScriptCore.vcproj/JavaScriptCore.sln: Relinearized project dependencies. testRegExp
now builds just before FindSafari.

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

8 years ago2011-09-19 Chris Marrin <cmarrin@apple.com>
cmarrin@apple.com [Mon, 19 Sep 2011 21:56:23 +0000 (21:56 +0000)]
2011-09-19  Chris Marrin  <cmarrin@apple.com>

        Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
        https://bugs.webkit.org/show_bug.cgi?id=67510

        Reviewed by Adam Roben.

        Another fix to take care of one last crash when running pause-crash.html.
        CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
        exist.

        This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
        from catching the null pointer exception generated by the pause-crash.html test
        before this bug was fixed. Windows was ignoring the exception, so the testcase
        would appear to succeed, even though it should have crashed.

        This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.

        * WebCore.vcproj/WebCore.vcproj:
        * platform/graphics/ca/win/LayerChangesFlusher.cpp:
        (WebCore::LayerChangesFlusher::hookCallback):
        * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
        (PlatformCAAnimation::copy):
        * platform/win/StructuredExceptionHandlerSupressor.h: Added.
        (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
        (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):

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

8 years agoIncorrect selection with absolutely positioned div
rniwa@webkit.org [Mon, 19 Sep 2011 21:51:44 +0000 (21:51 +0000)]
Incorrect selection with absolutely positioned div
https://bugs.webkit.org/show_bug.cgi?id=39503

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
whether a given point is inside or below the last child box.

Fixed the bug by using the last hit-test candidate instead.

Test: editing/selection/block-with-positioned-lastchild.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::positionForPoint):

LayoutTests:

Added a regression test for placing the caret inside a block with multiple logical lines
with an absolutely positioned last child. WebKit should place the caret on the left of the first line
(instead of after the last line) when the user clicks on the left of the first line.

* editing/selection/block-with-positioned-lastchild-expected.txt: Added.
* editing/selection/block-with-positioned-lastchild.html: Added.

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

8 years agoUnreviewed. Chromium Rebaselines for r95461.
inferno@chromium.org [Mon, 19 Sep 2011 21:48:27 +0000 (21:48 +0000)]
Unreviewed. Chromium Rebaselines for r95461.

* platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
* platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
* platform/chromium-linux/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
* platform/chromium-linux/fast/table/table-row-before-after-content-around-block-expected.png: Added.
* platform/chromium-linux/fast/table/table-row-before-after-content-around-table-expected.png: Added.
* platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
* platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
* platform/chromium-mac/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
* platform/chromium-mac/fast/table/table-row-before-after-content-around-block-expected.png: Added.
* platform/chromium-mac/fast/table/table-row-before-after-content-around-table-expected.png: Added.
* platform/chromium-win/fast/table/table-cell-before-after-content-around-table-block-expected.png: Added.
* platform/chromium-win/fast/table/table-cell-before-after-content-around-table-expected.png: Added.
* platform/chromium-win/fast/table/table-cell-before-after-content-around-table-row-expected.png: Added.
* platform/chromium-win/fast/table/table-row-before-after-content-around-block-expected.png: Added.
* platform/chromium-win/fast/table/table-row-before-after-content-around-table-expected.png: Added.

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

8 years agoFix crashes when running WebKit1 tests.
andersca@apple.com [Mon, 19 Sep 2011 21:47:01 +0000 (21:47 +0000)]
Fix crashes when running WebKit1 tests.

-[WebView _mustDrawUnionedRect:singleRects:count:] was removed, so just put back the
equivalent code directly into -[WebHTMLView drawRect:].

* WebView/WebHTMLView.mm:
(-[WebHTMLView drawRect:]):
* WebView/WebViewInternal.h:

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

8 years agoUnreviewed, rolling out r95466.
commit-queue@webkit.org [Mon, 19 Sep 2011 21:28:06 +0000 (21:28 +0000)]
Unreviewed, rolling out r95466.
http://trac.webkit.org/changeset/95466
https://bugs.webkit.org/show_bug.cgi?id=68389

Incorrect version of the patch. (Requested by mhahnenberg on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-19

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
(JSC::JSCell::toPrimitive):
* runtime/JSCell.h:
(JSC::JSCell::JSValue::toPrimitive):
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::toPrimitive):
* runtime/JSNotAnObject.h:
* runtime/JSObject.h:
* runtime/JSString.h:

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

8 years agoRemove the last remains of viewless WebKit1
andersca@apple.com [Mon, 19 Sep 2011 21:25:40 +0000 (21:25 +0000)]
Remove the last remains of viewless WebKit1
https://bugs.webkit.org/show_bug.cgi?id=68388

Reviewed by Darin Adler.

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::forceLayoutForNonHTML):
Remove null check.

* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
Remove usesDocumentViews parameter and checks.

(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
Add an assertion that usesDocumentViews is always true.

(-[WebView _isUsingAcceleratedCompositing]):
Remove usesDocumentViews check.

(-[WebView _isSoftwareRenderable]):
Remove usesDocumentViews check.

(-[WebView initWithFrame:frameName:groupName:]):
Remove usesDocumentViews parameter and always pass YES to the _initWithFrame method.

(-[WebView initWithCoder:]):
Remove usesDocumentViews parameter.

(-[WebView _frameViewAtWindowPoint:]):
Remove usesDocumentViews check.

* WebView/WebViewData.h:
Remove usesDocumentViews ivar.

* WebView/WebViewPrivate.h:
Remove usesDocumentViews parameters.

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

8 years ago[Qt][WK2] Make loading errors API easier to use.
alexis.menard@openbossa.org [Mon, 19 Sep 2011 21:09:56 +0000 (21:09 +0000)]
[Qt][WK2] Make loading errors API easier to use.
https://bugs.webkit.org/show_bug.cgi?id=68357

Reviewed by Tor Arne Vestbø.

Make the API to get loading errors easier to use. 95197 introduced
a QJSValue API that is a bit opaque for the client code. Rather than
using a dedicated object, we can just pass the needed information as
parameters of the slot.

* UIProcess/API/qt/qdesktopwebview.cpp:
(QDesktopWebViewPrivate::loadDidFail):
* UIProcess/API/qt/qdesktopwebview.h:
* UIProcess/API/qt/qdesktopwebview_p.h:
* UIProcess/API/qt/qtouchwebpage.h:
* UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
(tst_CommonViewTests::loadNonexistentFileUrl):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
(WebViewAbstraction::WebViewAbstraction):
(WebViewAbstraction::touchViewLoadFailed):
(WebViewAbstraction::desktopViewLoadFailed):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::loadDidFail):
* UIProcess/qt/TouchViewInterface.cpp:
(WebKit::TouchViewInterface::loadDidFail):
* UIProcess/qt/TouchViewInterface.h:
* UIProcess/qt/ViewInterface.h:

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

8 years ago[Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
dimich@chromium.org [Mon, 19 Sep 2011 21:05:28 +0000 (21:05 +0000)]
[Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
https://bugs.webkit.org/show_bug.cgi?id=68267
Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/frames/iframe-reparenting-embed-elements.html

* dom/Document.cpp:
(WebCore::Document::adoptNode):
* html/HTMLFrameElementBase.cpp:
(WebCore::hasPluginElements):
(WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
* html/HTMLFrameElementBase.h:

LayoutTests:

* fast/frames/iframe-reparenting-embed-elements-expected.txt: Added.
* fast/frames/iframe-reparenting-embed-elements.html: Added.
* fast/frames/resources/iframe-reparenting-embed-frame1.html: Added.
* fast/frames/resources/iframe-reparenting-embed-iframe.html: Added.

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