WebKit-https.git
7 years agoWeb Inspector: Network: display JavaScript stack in case of script initiator.
commit-queue@webkit.org [Tue, 18 Dec 2012 10:03:20 +0000 (10:03 +0000)]
Web Inspector: Network: display JavaScript stack in case of script initiator.
https://bugs.webkit.org/show_bug.cgi?id=104899

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Vsevolod Vlasov.

Show popup with navigavle stack-trace.

* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._getPopoverAnchor):
Added new target.
(WebInspector.NetworkLogView.prototype._showPopover):
Added case for new target.
(WebInspector.NetworkLogView.prototype._generateScriptInitiatedPopoverContent):
Generates table with stack trace items.
(WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
Added target marker, removed annoying titles.

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

7 years agoStyle fix to OpenCL SVG Filters
commit-queue@webkit.org [Tue, 18 Dec 2012 09:56:09 +0000 (09:56 +0000)]
Style fix to OpenCL SVG Filters
https://bugs.webkit.org/show_bug.cgi?id=105265

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-12-18
Reviewed by Zoltan Herczeg.

Inserted missing spaces and correct copyright text. There were no vital changes.

* platform/graphics/gpu/opencl/FilterContextOpenCL.cpp:
(WebCore):
* platform/graphics/gpu/opencl/FilterContextOpenCL.h:
(FilterContextOpenCL):
* platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp:
(WebCore::FilterContextOpenCL::applyFEColorMatrix):
* platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp:
(WebCore):
(WebCore::FilterContextOpenCL::compileFETurbulence):
(WebCore::FilterContextOpenCL::applyFETurbulence):
(WebCore::FETurbulence::platformApplyOpenCL):
* platform/graphics/gpu/opencl/OpenCLHandle.h:

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

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Tue, 18 Dec 2012 09:42:37 +0000 (09:42 +0000)]
[Qt] Unreviewed gardening.

Rebaselining a test after r137953.

Patch by Szilard Ledan <szledan@inf.u-szeged.hu> on 2012-12-18

* platform/qt/editing/selection/move-by-character-6-expected.txt:

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

7 years ago[chromium] move webintent related methods to TestRunner library
jochen@chromium.org [Tue, 18 Dec 2012 09:05:03 +0000 (09:05 +0000)]
[chromium] move webintent related methods to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=105164

Reviewed by Darin Fisher.

Also deleted the unused deliveredIntentFailure and
deliveredIntentResult methods.

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
(WebKit):
(WebTestRunner::WebTestDelegate::setCurrentWebIntentRequest):
(WebTestRunner::WebTestDelegate::currentWebIntentRequest):
* DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::registerIntentService):
(WebTestRunner::WebTestProxy::dispatchIntent):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::sendWebIntentResponse):
(WebTestRunner):
(WebTestRunner::TestRunner::deliverWebIntent):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner::WebTestProxyBase::registerIntentService):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::dispatchIntent):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::setCurrentWebIntentRequest):
(WebViewHost::currentWebIntentRequest):
* DumpRenderTree/chromium/WebViewHost.h:
(WebKit):
(WebViewHost):

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

7 years agoWeb Inspector: [WebGL] handle video elements used in WebGL
aandrey@chromium.org [Tue, 18 Dec 2012 09:02:09 +0000 (09:02 +0000)]
Web Inspector: [WebGL] handle video elements used in WebGL
https://bugs.webkit.org/show_bug.cgi?id=105170

Reviewed by Yury Semikhatsky.

Copy current image of video elements into a canvas to use it later in the replay.

* inspector/InjectedScriptCanvasModuleSource.js:
(.):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 18 Dec 2012 08:45:31 +0000 (08:45 +0000)]
Unreviewed GTK gardening.

Rebaselining a test after r137953.
Adding back failure expectations for SVG viewspec tests after the rollout in r137947.
Enhancing failure expectation for a slow HTTP multipart test that can pass,
fail or timeout.

* platform/gtk/TestExpectations:
* platform/gtk/editing/selection/move-by-character-6-expected.txt:

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

7 years agoImplement uncommitted memory for Linux.
commit-queue@webkit.org [Tue, 18 Dec 2012 08:37:24 +0000 (08:37 +0000)]
Implement uncommitted memory for Linux.
https://bugs.webkit.org/show_bug.cgi?id=65766

Patch by Uli Schlachter <psychon@znc.in> on 2012-12-18
Reviewed by Simon Hausmann.

The old approach used MAP_NORESERVE to allocate address space without
committing it. However, that flag gets ignored if
/proc/sys/vm/overcommit_memory is set to 2. The new approach uses a
mapping with PROT_NONE. This works because mappings which aren't even
readable don't get accounted as committed on Linux.

* wtf/OSAllocatorPosix.cpp:
(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::reserveAndCommit):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):

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

7 years ago[chromium] move editing callback dumping to the WebTestProxy
jochen@chromium.org [Tue, 18 Dec 2012 08:25:58 +0000 (08:25 +0000)]
[chromium] move editing callback dumping to the WebTestProxy
https://bugs.webkit.org/show_bug.cgi?id=105013

Reviewed by Darin Fisher.

To decide whether or not to dump the editing callbacks, the WebTestProxy
needs to query the TestRunner. For this purpose, I introduce a
WebTestRunner class that just exposes the shouldDumpEditingCallbacks
method. In contrast to e.g. WebEventSender, the WebTestRunner is just
an interface, and it is not owned by the WebTestInterfaces, but the
embedder of the TestRunner library must provide it. This will change
once all TestRunner methods are in the library.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
(DRTTestRunner::taskList):
(DRTTestRunner::WorkQueue::taskList):
* DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h:
(WebTestRunner):
(WebTestInterfaces):
* DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
(WebKit):
(WebTestRunner):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::shouldBeginEditing):
(WebTestRunner::WebTestProxy::shouldEndEditing):
(WebTestRunner::WebTestProxy::shouldInsertNode):
(WebTestRunner::WebTestProxy::shouldInsertText):
(WebTestRunner::WebTestProxy::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxy::shouldDeleteRange):
(WebTestRunner::WebTestProxy::shouldApplyStyle):
(WebTestRunner::WebTestProxy::didBeginEditing):
(WebTestRunner::WebTestProxy::didChangeSelection):
(WebTestRunner::WebTestProxy::didChangeContents):
(WebTestRunner::WebTestProxy::didEndEditing):
* DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h: Copied from Tools/DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h.
(WebTestRunner):
(WebTestRunner::WebTestRunner::shouldDumpEditingCallbacks):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::~TestRunner):
(WebTestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpEditingCallbacks):
(WebTestRunner::TestRunner::dumpEditingCallbacks):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp:
(WebTestRunner::WebTestInterfaces::Internal::testRunner):
(WebTestRunner::WebTestInterfaces::Internal::setTestRunner):
(WebTestInterfaces::Internal):
(WebTestRunner::WebTestInterfaces::Internal::Internal):
(WebTestRunner::WebTestInterfaces::testRunner):
(WebTestRunner):
(WebTestRunner::WebTestInterfaces::setTestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::shouldBeginEditing):
(WebTestRunner::WebTestProxyBase::shouldEndEditing):
(WebTestRunner::WebTestProxyBase::shouldInsertNode):
(WebTestRunner::WebTestProxyBase::shouldInsertText):
(WebTestRunner::WebTestProxyBase::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxyBase::shouldDeleteRange):
(WebTestRunner::WebTestProxyBase::shouldApplyStyle):
(WebTestRunner::WebTestProxyBase::didBeginEditing):
(WebTestRunner::WebTestProxyBase::didChangeSelection):
(WebTestRunner::WebTestProxyBase::didChangeContents):
(WebTestRunner::WebTestProxyBase::didEndEditing):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::initialize):
(TestShell::createNewWindow):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

7 years ago[chromium] Fix methods in TestRunner that directly modify the settings instead of...
jochen@chromium.org [Tue, 18 Dec 2012 07:58:35 +0000 (07:58 +0000)]
[chromium] Fix methods in TestRunner that directly modify the settings instead of going through WebPreferences
https://bugs.webkit.org/show_bug.cgi?id=105154

Reviewed by Tony Chang.

If the settings are modified directly, the embedder can't keep track of
them and might accidentially override the changed settings.

* DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
(WebPreferences):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::setAsynchronousSpellCheckingEnabled):
(WebTestRunner):
(WebTestRunner::TestRunner::setMinimumTimerInterval):
(WebTestRunner::TestRunner::setTouchDragDropEnabled):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
(WebTestRunner::WebPreferences::reset):
(WebTestRunner::WebPreferences::applyTo):

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

7 years ago[BlackBerry] Editable text element can't be selected
commit-queue@webkit.org [Tue, 18 Dec 2012 07:34:20 +0000 (07:34 +0000)]
[BlackBerry] Editable text element can't be selected
https://bugs.webkit.org/show_bug.cgi?id=105240

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-12-17
Reviewed by Rob Buis.
Internally reviewed by Genevieve Mak and Mike Fenton.

Internal PR266755
When the target is Text, we should allow it to collect text nodes in
the shadow tree of text editable elements.

* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getNodesFromRect):

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

7 years ago[Shadow] LargeDistributionWithLayout.html should be updated
shinyak@chromium.org [Tue, 18 Dec 2012 07:28:52 +0000 (07:28 +0000)]
[Shadow] LargeDistributionWithLayout.html should be updated
https://bugs.webkit.org/show_bug.cgi?id=105242

Reviewed by Ryosuke Niwa.

Since this test was written when distribution took O(N^2). However, now it's almost O(N), so this test finishes
in very short time. We should convert it unit to runs/s.

This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.

* ShadowDOM/LargeDistributionWithLayout.html:

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

7 years agoWeb Inspector: paint inspector overlay on a transparency layer
caseq@chromium.org [Tue, 18 Dec 2012 07:14:18 +0000 (07:14 +0000)]
Web Inspector: paint inspector overlay on a transparency layer
https://bugs.webkit.org/show_bug.cgi?id=97659

Reviewed by Yury Semikhatsky.

Add a call to PlatformContextSkia::setDrawingToImageBuffer(true) to
fix wrong rendering of content on transparent background.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::paintPageOverlay):

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

7 years agoConstant fold !{number} in the parser
ggaren@apple.com [Tue, 18 Dec 2012 06:54:52 +0000 (06:54 +0000)]
Constant fold !{number} in the parser
https://bugs.webkit.org/show_bug.cgi?id=105232

Reviewed by Filip Pizlo.

Typically, we wait for hot execution and constant fold in the DFG.
However, !0 and !1 are common enough in minifiers that it can be good
to get them out of the way early, for faster/smaller parsing and startup.

* parser/ASTBuilder.h:
(JSC::ASTBuilder::createLogicalNot): !{literal} is super simple, especially
since there's no literal form of NaN or Inf.

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

7 years agoExposing querySelector function on WebNode
commit-queue@webkit.org [Tue, 18 Dec 2012 06:37:08 +0000 (06:37 +0000)]
Exposing querySelector function on WebNode
https://bugs.webkit.org/show_bug.cgi?id=105193

Patch by Alex Hutter <ahutter@chromium.org> on 2012-12-17
Reviewed by Darin Fisher.

This change is necessitated by the new autofill flows in chromium.

* public/WebNode.h:
* src/WebNode.cpp:
(WebKit::WebNode::querySelector):
(WebKit):

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

7 years agoUnreviewed unit test skipping.
jchaffraix@webkit.org [Tue, 18 Dec 2012 06:10:43 +0000 (06:10 +0000)]
Unreviewed unit test skipping.

Filed https://bugs.webkit.org/show_bug.cgi?id=105253 to re-enable them.

* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI):
(TestWebKitAPI::TEST):

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

7 years agoUnreviewed rebaseline after r137593.
loislo@chromium.org [Tue, 18 Dec 2012 05:53:50 +0000 (05:53 +0000)]
Unreviewed rebaseline after r137593.

* platform/chromium-linux-x86/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-linux/editing/selection/move-by-character-6-expected.png:
* platform/chromium-linux/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.png:
* platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac-snowleopard/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac/editing/selection/move-by-character-6-expected.png:
* platform/chromium-mac/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-win/editing/selection/move-by-character-6-expected.png:
* platform/chromium-win/editing/selection/move-by-character-6-expected.txt:

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

7 years agoAdd ASSERTions to ensure that CSSPropertys that are variables only ever refer to...
macpherson@chromium.org [Tue, 18 Dec 2012 05:35:34 +0000 (05:35 +0000)]
Add ASSERTions to ensure that CSSPropertys that are variables only ever refer to CSSValues that are variables.
https://bugs.webkit.org/show_bug.cgi?id=104876

Reviewed by Steve Block.

Add assertions to CSSProperty constructors to make that if it is initialized with CSSPropertyVariable that
the value type associated with it is also a variable. This is already asserted at read time, but ASSERTing
here will produce a more useful backtrace.

No new tests as functionality unchanged.

* css/CSSProperty.h:
(WebCore::CSSProperty::CSSProperty):

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

7 years agoWeb Inspector: Make inspector scripts sourceURL absolute.
vsevik@chromium.org [Tue, 18 Dec 2012 05:30:10 +0000 (05:30 +0000)]
Web Inspector: Make inspector scripts sourceURL absolute.
https://bugs.webkit.org/show_bug.cgi?id=105166

Reviewed by Yury Semikhatsky.

* inspector/front-end/utilities.js:

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

7 years agoREGRESSION(r137442): Crash because of an uninitialized member.
commit-queue@webkit.org [Tue, 18 Dec 2012 05:23:27 +0000 (05:23 +0000)]
REGRESSION(r137442): Crash because of an uninitialized member.
https://bugs.webkit.org/show_bug.cgi?id=105246

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Noam Rosenthal.

TextureMapperGL defines m_context although TextureMapper defines m_context.
r137442 removes the initialization code in TextureMapperGL, which is
what causes this regression. This patch removes the duplicated member
in TextureMapperGL.

No new tests. Covered by existing tests.

* platform/graphics/texmap/TextureMapper.cpp:
(WebCore::TextureMapper::TextureMapper):
* platform/graphics/texmap/TextureMapper.h:
(WebCore::TextureMapper::setGraphicsContext):
(WebCore::TextureMapper::graphicsContext):
(TextureMapper):
* platform/graphics/texmap/TextureMapperGL.h:
(WebCore):

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

7 years agoQueue container size requests while images are loading.
pdr@google.com [Tue, 18 Dec 2012 05:01:49 +0000 (05:01 +0000)]
Queue container size requests while images are loading.
https://bugs.webkit.org/show_bug.cgi?id=105097

Reviewed by Dean Jackson.

Source/WebCore:

We use CachedImage::setContainerSizeForRenderer(...) to notify images of requesting
container sizes. Unfortunately, if the image is not yet loaded we ignore this container
size information! This patch stores requesting container sizes made while the image is
not yet loaded.

This patch fixes a bug where SVG images would display incorrectly on the first load but
correctly thereafter. Additionally, this bug caused the SVGImageCache to not be used in many
real world scenarios.

This patch is loosely based on a patch by blambov in WK98403.

Test: http/tests/misc/svg-image-delayed-size-negotiation.html

* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::didRemoveClient):
(WebCore::CachedImage::allClientsRemoved):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::clear):
(WebCore::CachedImage::createImage):
* loader/cache/CachedImage.h:

    A new map has been added to track renderer -> size information before an image has
    loaded. Note that this affects all images (not just images that require container size
    information) but we cannot know the image type before the image has loaded.

LayoutTests:

I reused the embedded.svg and svg-slow.pl test files from a similar test for svg-as-object
size negotiation. svg-slow.pl simply delays the loading of the embedded.svg file.
Triggering this bug reliably using the local filesystem is too brittle.

* http/tests/misc/svg-image-delayed-size-negotiation-expected.html: Added.
* http/tests/misc/svg-image-delayed-size-negotiation.html: Added.

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

7 years agoDFG is too aggressive eliding overflow checks for additions involving large constants
fpizlo@apple.com [Tue, 18 Dec 2012 04:35:10 +0000 (04:35 +0000)]
DFG is too aggressive eliding overflow checks for additions involving large constants
https://bugs.webkit.org/show_bug.cgi?id=105239

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

If we elide overflow checks on an addition (or subtraction) involving a larger-than-2^32 immediate,
then make sure that the non-constant child of the addition knows that he's got to do an overflow
check, by flowing the UsedAsNumber property at him.

* dfg/DFGGraph.h:
(JSC::DFG::Graph::addSpeculationMode):
(Graph):
(JSC::DFG::Graph::addShouldSpeculateInteger):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-int-overflow-large-constants-in-a-line-expected.txt: Added.
* fast/js/dfg-int-overflow-large-constants-in-a-line.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-int-overflow-large-constants-in-a-line.js: Added.
(foo):

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

7 years agoWeb Inspector: need to visually distinguish UA shadow roots
shinyak@chromium.org [Tue, 18 Dec 2012 04:33:40 +0000 (04:33 +0000)]
Web Inspector: need to visually distinguish UA shadow roots
https://bugs.webkit.org/show_bug.cgi?id=104877

Reviewed by Yury Semikhatsky.

Source/WebCore:

Now we have an option to show ShadowRoot in the Inspector. Since the Inspector has displayed UserAgent ShadowRoot and
Author ShadowRoot as the same #shadow-root, a user could not distinguish them.

We would like to show UserAgent ShadowRoot as #webkit-shadow-root.

Test: inspector/shadow-root.html

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForNode): Make nodeName of UserAgent ShadowRoot #webkit-shadow-root.
Since the correct nodeName of ShadowRoot is #document-fragment, we have to specify the nodeName of Author ShadowRoot
as #shadow-root here.

LayoutTests:

* inspector/elements/shadow-dom-modify-chardata-expected.txt:
* inspector/elements/shadow-root-expected.txt:
* inspector/elements/shadow-root.html: Adds <input> test.

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

7 years agofast/dom/shadow/host-wrapper-reclaimed.html is failing on EFL bots
tasak@google.com [Tue, 18 Dec 2012 04:28:42 +0000 (04:28 +0000)]
fast/dom/shadow/host-wrapper-reclaimed.html is failing on EFL bots
https://bugs.webkit.org/show_bug.cgi?id=103109

Reviewed by Kentaro Hara.

host-wrapper-reclaimed uses gc(), but the function gc is not defined
in all platforms, e.g. "ReferenceError: Can't find variable: gc".
So we should include js-test-pre.js, which defines gc.

* fast/dom/shadow/host-wrapper-reclaimed-expected.txt:
* fast/dom/shadow/host-wrapper-reclaimed.html:

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

7 years ago[BlackBerry] Prevent selection handles from being rendered after selection was canceled
commit-queue@webkit.org [Tue, 18 Dec 2012 04:19:25 +0000 (04:19 +0000)]
[BlackBerry] Prevent selection handles from being rendered after selection was canceled
https://bugs.webkit.org/show_bug.cgi?id=105203

Patch by Yongxin Dai <yodai@rim.com> on 2012-12-17
Reviewed by Rob Buis.

PR255438

Here is the explanation why handles occur without selection overlay.
1. Still touch at current selection (Selection A) initiated by touch-hold
2. Selection expanding (Selection B) is ongoing
3. Finger moves. In UI thread:
    1) SelectionHander::cancelSelection() gets called.
        a. Selection A is canceled immediately (clear selecting state and hide handles)
        b. Post a request to webkit thread to cancel Selection A.
4. In webkit thread:
    1) Selection B becomes active selection
        a. Show selection overlay for Selection B
        b. Dispatch Selection B to UI thread to show handles
    2) Handle the request of canceling Selection A. The selection A was gone. Instead the active Selection B is canceled.
    The visual change is Selection overlay for Selection B becomes invisible..
5. In UI thread:
    Selection B is rendered. The start handle and the end handle occur without selection overlay.

The fix is to notify client with a empty selection whenever the selection is canceled in webkit thread.

Reviewed Internally by Mike Fenton.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::cancelSelection):

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

7 years agoDFG: Refactor DFGCorrectableJumpPoint to reduce size of OSRExit data
msaboff@apple.com [Tue, 18 Dec 2012 03:51:07 +0000 (03:51 +0000)]
DFG: Refactor DFGCorrectableJumpPoint to reduce size of OSRExit data
https://bugs.webkit.org/show_bug.cgi?id=105237

Reviewed by Filip Pizlo.

Replaced DFGCorrectableJumpPoint with OSRExitCompilationInfo which is used and kept alive only while we are
compiling in the DFG.  Moved the patchable branch offset directly into OSRExit.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/AbstractMacroAssembler.h:
* dfg/DFGCorrectableJumpPoint.cpp: Removed.
* dfg/DFGCorrectableJumpPoint.h: Removed.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::appendExitJump):
(JITCompiler):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::setPatchableCodeOffset):
(JSC::DFG::OSRExit::getPatchableCodeOffsetAsJump):
(JSC::DFG::OSRExit::codeLocationForRepatch):
(JSC::DFG::OSRExit::correctJump):
* dfg/DFGOSRExit.h:
(OSRExit):
* dfg/DFGOSRExitCompilationInfo.h: Added.
(OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::failureJump):
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):

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

7 years agoTry to fix the Mac build.
weinig@apple.com [Tue, 18 Dec 2012 03:44:54 +0000 (03:44 +0000)]
Try to fix the Mac build.

* NetworkProcess/mac/NetworkProcessMac.mm:

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

7 years ago[chromium] Add the GL_CHROMIUM_lose_context to WebGraphicsContext3D
danakj@chromium.org [Tue, 18 Dec 2012 03:30:27 +0000 (03:30 +0000)]
[chromium] Add the GL_CHROMIUM_lose_context to WebGraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=105238

Reviewed by James Robinson.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::loseContext):

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

7 years ago[EFL] Add ecore_imf_evas to FindEcore.cmake
commit-queue@webkit.org [Tue, 18 Dec 2012 02:39:54 +0000 (02:39 +0000)]
[EFL] Add ecore_imf_evas to FindEcore.cmake
https://bugs.webkit.org/show_bug.cgi?id=105159

Patch by Halton Huo <halton.huo@intel.com> on 2012-12-17
Reviewed by Laszlo Gombos.

.:

ecore_imf_evas is a separate library, we should add for EFL port as well.

* Source/cmake/FindEcore.cmake: Add finding FIND_EFL_LIBRARY for ecore_imf_evas

Source/WebKit2:

* PlatformEfl.cmake: Add ECORE_IMF_EVAS_LIBRARIES to WebProcess_LIBRARIES

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

7 years agoCoordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
commit-queue@webkit.org [Tue, 18 Dec 2012 02:38:10 +0000 (02:38 +0000)]
Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103959

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop() is used when class
methods cannot be called asynchronously by client. Updates of tiles are
committed as soon as all the events in event queue have been processed.
After this patch Frame sets m_commitTileUpdatesOnIdleEventLoop to true.

In addition, remove TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed()
which was introduced for Coordinated Graphics.

Refactoring covered by existing tests.

* page/Frame.cpp:
(WebCore::Frame::setTiledBackingStoreEnabled):
* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTrajectoryVector):
  Separate setting a trajectory vector from coverWithTilesIfNeeded().
(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):
(WebCore::TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop):
* platform/graphics/TiledBackingStoreClient.h:
(WebCore::TiledBackingStoreClient::tiledBackingStoreHasPendingTileCreation):
    If TiledBackingStore does not create all tiles, TiledBackingStore
    notifies a client of needing to create tiles more, when
    m_commitTileUpdatesOnIdleEventLoop is false.

Source/WebKit2:

Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
It has two problem.
1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent
TiledBackingStore from asynchronously sending UpdateTile message to UI
Process.
2. CreateTile and RemoveTile message can be sent to UI Process at any time.

This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
It means only during flushing layer states, CoordinatedGraphicsLayer
calls methods of TiledBackingStore, which indirectly call createTile(),
updateTile() and removeTile().

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::CoordinatedGraphicsLayer::setContentsScale):
(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
(WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
(WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

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

7 years agoCan't visit sites with untrusted certs with the NetworkProcess.
beidson@apple.com [Tue, 18 Dec 2012 02:22:51 +0000 (02:22 +0000)]
Can't visit sites with untrusted certs with the NetworkProcess.
<rdar://problem/12885641> and https://bugs.webkit.org/show_bug.cgi?id=105235

Reviewed by Sam Weinig.

For Mac the missing functionality is being able to tell the network layer in the
NetworkProcess to temporarily accept a certificate chain for the given host.

This patch adds some SPI supporting the way this works on Mac.

Add a message and Mac implementation for "allowSpecificHTTPSCertificateForHost":
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):

Add SPI for the embedding app"
* UIProcess/API/C/WKContext.cpp:
(WKContextAllowSpecificHTTPSCertificateForHost):
* UIProcess/API/C/WKContextPrivate.h:

* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
* UIProcess/WebContext.h:

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

7 years agoTrack menu should be sorted
dino@apple.com [Tue, 18 Dec 2012 01:56:28 +0000 (01:56 +0000)]
Track menu should be sorted
https://bugs.webkit.org/show_bug.cgi?id=105229

Reviewed by Eric Carlson.

Source/WebCore:

Make sure that the <li> elements in the track menu are correctly
sorted as they are built. This uses insertion sort, but it shouldn't
be horrible given that we don't expect a huge number of tracks.

Test: media/video-controls-captions-trackmenu-sorted.html

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::insertTextTrackMenuItemIntoSortedContainer): New function that calls insertBefore with
the correct parameters to ensure the <ul> is correctly sorted.
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
* html/shadow/MediaControlElements.h:
(MediaControlClosedCaptionsTrackListElement): Rename menuItems to m_menuItems for consistency.

LayoutTests:

New test to make sure we sort the menu of available tracks.

* media/video-controls-captions-trackmenu-sorted-expected.txt: Added.
* media/video-controls-captions-trackmenu-sorted.html: Added.
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:

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

7 years agoUnreviewed. Add Silvia Pfeiffer to contributor list.
dino@apple.com [Tue, 18 Dec 2012 01:48:03 +0000 (01:48 +0000)]
Unreviewed. Add Silvia Pfeiffer to contributor list.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agoRegression causing DOM objects to have unstable NPObject* references with v8 bindings
commit-queue@webkit.org [Tue, 18 Dec 2012 01:43:21 +0000 (01:43 +0000)]
Regression causing DOM objects to have unstable NPObject* references with v8 bindings
https://bugs.webkit.org/show_bug.cgi?id=104921

Source/WebCore:

Patch by Matthew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Fix regression introduced by changeset 135804 resulting in
unstable NPObject* references for v8 objects.  In the iter !=
v8NPObjectMap->end() code path, objectVector was left unassigned
if the for loop terminated without returning.

Also, V8Object::GetIdentityHash() is documented as not being guaranteed
as unique.  As such, don't ASSERT() that two objects with the same hash
must therefor be the same object.

Tests: plugins/npruntime/embed-property-iframe-equality.html

* bindings/v8/NPV8Object.cpp:
(WebCore::npCreateV8ScriptObject): Fix.

LayoutTests:

Patch by Mathew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Add variant of embed-property-equality test to verify that the
test still passes when the object being tested for equality
has already been remembered by a plugin from a different
JavaScript context.

* plugins/npruntime/embed-property-iframe-equality.html: Added.
* plugins/npruntime/embed-property-iframe-equality-expected.txt: Added.

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

7 years agoDFG is too aggressive with eliding overflow checks in loops
fpizlo@apple.com [Tue, 18 Dec 2012 01:35:13 +0000 (01:35 +0000)]
DFG is too aggressive with eliding overflow checks in loops
https://bugs.webkit.org/show_bug.cgi?id=105226

Reviewed by Mark Hahnenberg and Oliver Hunt.

Source/JavaScriptCore:

If we see a variable's live range cross basic block boundaries, conservatively assume that it may
be part of a data-flow back-edge, and as a result, we may have entirely integer operations that
could lead to the creation of an integer that is out of range of 2^52 (the significand of a double
float). This does not seem to regress any of the benchmarks we care about, and it fixes the bug.

In future we may want to actually look at whether or not there was a data-flow back-edge instead
of being super conservative about it. But we have no evidence, yet, that this would help us on
real code.

* dfg/DFGNodeFlags.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-int-overflow-in-loop-expected.txt: Added.
* fast/js/dfg-int-overflow-in-loop.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-int-overflow-in-loop.js: Added.
(foo):

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

7 years agoSeamless iframe should not announce a new browsing context
cfleizach@apple.com [Tue, 18 Dec 2012 01:21:55 +0000 (01:21 +0000)]
Seamless iframe should not announce a new browsing context
https://bugs.webkit.org/show_bug.cgi?id=86317

Reviewed by Eric Seidel.

Source/WebCore:

Introduce a new role for seamless frames so that the platforms can decide what to do
with this kind of object. For the mac, it's exposed as a group.

Test: platform/mac/accessibility/seamless-iframe.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isWebArea):
(WebCore::AccessibilityObject::isSeamlessWebArea):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(createAccessibilityRoleMap):

Source/WebKit/chromium:

* public/WebAccessibilityRole.h:
* src/AssertMatchingEnums.cpp:

LayoutTests:

* platform/mac/accessibility/seamless-iframe-expected.txt: Added.
* platform/mac/accessibility/seamless-iframe.html: Added.

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

7 years agoButterfly::growArrayRight shouldn't be called on null Butterfly objects
mhahnenberg@apple.com [Tue, 18 Dec 2012 01:03:54 +0000 (01:03 +0000)]
Butterfly::growArrayRight shouldn't be called on null Butterfly objects
https://bugs.webkit.org/show_bug.cgi?id=105221

Reviewed by Filip Pizlo.

Currently we depend upon the fact that Butterfly::growArrayRight works with null Butterfly
objects purely by coincidence. We should add a new static function that null checks the old
Butterfly object and creates a new one if it's null, or calls growArrayRight if it isn't for
use in the couple of places in JSObject that expect such behavior to work.

* runtime/Butterfly.h:
(Butterfly):
* runtime/ButterflyInlines.h:
(JSC::Butterfly::createOrGrowArrayRight):
(JSC):
* runtime/JSObject.cpp:
(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createArrayStorage):

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

7 years agoPercentage width replaced element incorrectly rendered when intrinsic size changed
commit-queue@webkit.org [Tue, 18 Dec 2012 00:59:26 +0000 (00:59 +0000)]
Percentage width replaced element incorrectly rendered when intrinsic size changed
https://bugs.webkit.org/show_bug.cgi?id=102784

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-17
Reviewed by Tony Chang.

Source/WebCore:

To make relayout when the image dimension is changed,
and if the logical width is percent type and the containing block fits to it.
In this case, the containing block's width need to be updated first,
because the 'newWidth' was calculated from the 'old containing block width'.

Test: fast/css/percent-width-img-src-change.html

* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageDimensionsChanged):

LayoutTests:

Add test to check when the source of images with percentage width is changed.

* fast/css/percent-width-img-src-change.html: Added.
* fast/css/percent-width-img-src-change-expected.txt: Added.

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

7 years agoDidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since
bdakin@apple.com [Tue, 18 Dec 2012 00:44:40 +0000 (00:44 +0000)]
DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since
that varies
https://bugs.webkit.org/show_bug.cgi?id=105116
-and corresponding-
<rdar://problem/12889449>

Reviewed by Geoff Garen.

DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since that
varies depending on window size. This can lead to a huge amount of variability in
the heuristic which is not desired. Instead, we should use a hard-coded rect.
* page/Page.cpp:
(WebCore::relevantViewRect):
(WebCore):
(WebCore::Page::addRelevantRepaintedObject):
(WebCore::Page::addRelevantUnpaintedObject):

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

7 years ago[CoordinatedGraphics] Assertion hit in WebKit::LayerTreeRenderer::setLayerState()
commit-queue@webkit.org [Tue, 18 Dec 2012 00:26:50 +0000 (00:26 +0000)]
[CoordinatedGraphics] Assertion hit in WebKit::LayerTreeRenderer::setLayerState()
https://bugs.webkit.org/show_bug.cgi?id=104518

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Noam Rosenthal.

CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly() must perform
only during flushing pending layer changes in CoordinatedLayerTreeHost.
RenderLayerCompositor can call GraphicsLayer::flushCompositingState() regardless
of CoordinatedLayerTreeHost and it breaks our assumption. It means that
CoordinatedGraphicsLayer can send messages although m_waitingForUIProcess in
CoordinatedLayerTreeHost is true.

Assertion hits because of the same reason. If RenderLayerCompositor calls
flushCompositingState() before the first CoordinatedLayerTreeHost::flushPendingLayerChanges(),
SetCompositingLayerState message can be prior to SetRootCompositingLayer message.

We fix this by ensuring that we perform the layer flush only in the code
path originating from CoordinatedLayerTreeHost.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::flushCompositingState):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

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

7 years agoFix repositioning of fixed elements on zooming
simon.fraser@apple.com [Tue, 18 Dec 2012 00:26:31 +0000 (00:26 +0000)]
Fix repositioning of fixed elements on zooming
https://bugs.webkit.org/show_bug.cgi?id=105223

Reviewed by Beth Dakin.

Source/WebCore:

When zoomed, scrolling would move the layers of fixed-position
elements oddly. This happened because on the scrolling thread we
passed a scale of 1, rather than the actual page scale to
scrollOffsetForFixedPosition().

Fix by plumbing the page scale through the scrolling state node
to the scrolling node.

Test: platform/mac/tiled-drawing/fixed/four-bars-zoomed.html

* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateScrollingNode.h:
(WebCore::ScrollingStateScrollingNode::frameScaleFactor):
(ScrollingStateScrollingNode):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::update):
* page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::frameScaleFactor):
(ScrollingTreeScrollingNode):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollParameters):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorMac::setScrollParametersForNode):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

LayoutTests:

Testcase that zoomed with fixed-position elements.

* platform/mac/tiled-drawing/fixed/four-bars-zoomed-expected.txt: Added.
* platform/mac/tiled-drawing/fixed/four-bars-zoomed.html: Added.

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

7 years agobuild.webkit.org - add more google windows bots
dpranke@chromium.org [Tue, 18 Dec 2012 00:05:40 +0000 (00:05 +0000)]
build.webkit.org - add more google windows bots
https://bugs.webkit.org/show_bug.cgi?id=105225

Reviewed by Eric Seidel.

Adds two more windows bots (google-windows-3, a builder, and
google-windows-4, a tester) for the Chromium configs.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

7 years agoImplement matching cue by the class name with ::cue pseudo element
commit-queue@webkit.org [Tue, 18 Dec 2012 00:01:39 +0000 (00:01 +0000)]
Implement matching cue by the class name with ::cue pseudo element
https://bugs.webkit.org/show_bug.cgi?id=104191

Patch by Dima Gorbik <dgorbik@apple.com> on 2012-12-17
Reviewed by Antti Koivisto.

Source/WebCore:

Implemented the ::cue() pseudo-element with an argument that may hold a simple selector list.
This enables matching cue objects by the class name.

Test: media/track/track-css-matching.html

* css/CSSGrammar.y.in: support parsing the ::cue() with an argument.
* css/CSSParser.cpp:
(WebCore::CSSParser::detectFunctionTypeToken): tokenize the 'cue'.
(WebCore::CSSParser::updateSpecifiersWithElementName): do not set the tag for the cue pseudo-element because
the ::cue may match elements with different tags.
(WebCore::CSSParser::updateSpecifiers): the behavior for the PseudoCue selector should be same as for
unknown pseudo elements - the pseudo-element should stay on top of the selector chain.
* css/CSSSelector.cpp: added the type detection for the new selector.
(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::extractPseudoType):
* css/CSSSelector.h:
* css/RuleSet.cpp: add a new list to hold all the rulesets for the new pseudo element.
(WebCore::RuleSet::reportMemoryUsage):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::shrinkToFit):
* css/RuleSet.h:
(RuleSet):
(WebCore::RuleSet::cuePseudoRules):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRules):
* dom/Element.cpp: an addition to the rare data to be able to find out if the node is a webvtt node.
(WebCore):
(WebCore::Element::isWebVTTNode):
(WebCore::Element::setIsWebVTTNode):
(WebCore::Element::cloneDataFromElement):
* dom/Element.h:
(Element):
* dom/ElementRareData.h:
(ElementRareData):
* dom/NodeRareData.h:
(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
(WebCore::NodeRareData::isWebVTTNode):
(WebCore::NodeRareData::setIsWebVTTNode):
* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::markNodesAsWebVTTNodes): mark the cloned nodes as WebVTT nodes.
(WebCore):
(WebCore::TextTrackCue::getCueAsHTML):
* html/track/TextTrackCue.h:
(TextTrackCue):
* html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::constructTreeFromToken):
* rendering/style/RenderStyleConstants.h:

LayoutTests:

Verify that ::cue pseudo-element accepts a simple-selector list that matches cue objects by the a class.

* media/track/captions-webvtt/styling.vtt:
* media/track/track-css-matching-expected.txt: Added.
* media/track/track-css-matching.html: Added.

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

7 years agoIndexedDB: Don't use strings to represent serialized values
commit-queue@webkit.org [Mon, 17 Dec 2012 23:59:47 +0000 (23:59 +0000)]
IndexedDB: Don't use strings to represent serialized values
https://bugs.webkit.org/show_bug.cgi?id=104354

Patch by Michael Pruett <michael@68k.org> on 2012-12-17
Reviewed by Kentaro Hara.

Use Vector<uint8_t> rather than String to represent serialized values
in IndexedDB. This change is necessary to implement IndexedDB for JSC.

Tests: storage/indexeddb/*

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::getRecord):
(WebCore::IDBBackingStore::putRecord):
(WebCore::ObjectStoreKeyCursorImpl::value):
(WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
(WebCore::ObjectStoreCursorImpl::value):
(ObjectStoreCursorImpl):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::value):
(WebCore::IndexCursorImpl::value):
(WebCore::IndexCursorImpl::IndexCursorImpl):
(IndexCursorImpl):
(WebCore::IndexCursorImpl::loadCurrentRow):
* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
(Cursor):
* Modules/indexeddb/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):
* Modules/indexeddb/IDBCursorBackendImpl.h:
(WebCore::IDBCursorBackendImpl::value):
* Modules/indexeddb/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::IndexReferencedValueRetrievalOperation::perform):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreRetrievalOperation::perform):
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore):
* bindings/js/SerializedScriptValue.h:
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::createFromWireBytes):
(WebCore):
(WebCore::SerializedScriptValue::toWireBytes):
* bindings/v8/SerializedScriptValue.h:
(SerializedScriptValue):

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

7 years agoLayout Test editing/selection/move-by-character-crash-test-textarea.html is flaky
rniwa@webkit.org [Mon, 17 Dec 2012 23:54:18 +0000 (23:54 +0000)]
Layout Test editing/selection/move-by-character-crash-test-textarea.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104951

Reviewed by Eric Seidel.

The problem was that editing/selection/move-by-character-6.html was running editing commands
in a timer without making the test runner wait. Fixed the bug by calling waitUntilDone and
notifyDone at appropriate places in editing.js.

We don't need to rebaseline other tests since this is the only test that uses commandDelay.

* editing/editing.js:
(setSelectionCommand):
(transposeCharactersCommand):
(moveSelectionLeftByCharacterCommand):
(moveSelectionRightByCharacterCommand):
(extendSelectionLeftByCharacterCommand):
(extendSelectionRightByCharacterCommand):
(moveSelectionForwardByCharacterCommand):
(extendSelectionForwardByCharacterCommand):
(moveSelectionForwardByWordCommand):
(extendSelectionForwardByWordCommand):
(moveSelectionForwardBySentenceCommand):
(extendSelectionForwardBySentenceCommand):
(moveSelectionForwardByLineCommand):
(extendSelectionForwardByLineCommand):
(moveSelectionForwardByLineBoundaryCommand):
(extendSelectionForwardByLineBoundaryCommand):
(moveSelectionBackwardByCharacterCommand):
(extendSelectionBackwardByCharacterCommand):
(moveSelectionBackwardByWordCommand):
(extendSelectionBackwardByWordCommand):
(moveSelectionBackwardBySentenceCommand):
(extendSelectionBackwardBySentenceCommand):
(moveSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineBoundaryCommand):
(moveSelectionBackwardByLineBoundaryCommand):
(boldCommand):
(underlineCommand):
(fontNameCommand):
(fontSizeCommand):
(fontSizeDeltaCommand):
(italicCommand):
(justifyCenterCommand):
(justifyLeftCommand):
(justifyRightCommand):
(insertHTMLCommand):
(insertImageCommand):
(insertLineBreakCommand):
(insertParagraphCommand):
(insertNewlineInQuotedContentCommand):
(typeCharacterCommand):
(selectAllCommand):
(strikethroughCommand):
(undoCommand):
(redoCommand):
(changeRootSize):
(cutCommand):
(copyCommand):
(pasteCommand):
(createLinkCommand):
(unlinkCommand):
(pasteAndMatchStyleCommand):
(deleteCommand):
(forwardDeleteCommand):
(backColorCommand):
(foreColorCommand):
(executeCommand):
* platform/mac/editing/selection/move-by-character-6-expected.txt: Rebaselined.

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

7 years agoCleanup --profiler=perf code a little and allow up to 1000 report files (instead...
eric@webkit.org [Mon, 17 Dec 2012 23:28:08 +0000 (23:28 +0000)]
Cleanup --profiler=perf code a little and allow up to 1000 report files (instead of 100)
https://bugs.webkit.org/show_bug.cgi?id=105217

Reviewed by Dirk Pranke.

Previously --profile would fail strangely if find_unused_filename returned None
(which would happen as soon as we had 100 report files).
Now we'll search through 1000 filenames before giving up (and assert if we failed to find one).
I also made some minor cleanups to the output of perf, and tried to make the
commands more self-documenting by using long-names for args.

* Scripts/webkitpy/common/system/profiler.py:
(SingleFileOutputProfiler.__init__):
(Perf.attach_to_pid):
(Perf.profile_after_exit):

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

7 years agojavascript integer overflow
fpizlo@apple.com [Mon, 17 Dec 2012 23:10:41 +0000 (23:10 +0000)]
javascript integer overflow
https://bugs.webkit.org/show_bug.cgi?id=104967

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Fix PutScopedVar backward flow.

* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-put-scoped-var-backward-flow-expected.txt: Added.
* fast/js/dfg-put-scoped-var-backward-flow.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-put-scoped-var-backward-flow.js: Added.
(sum):

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

7 years agoChange SET_VAR, SET_BORDERVALUE_COLOR macro to require semicolon(;) at the end of...
commit-queue@webkit.org [Mon, 17 Dec 2012 23:08:20 +0000 (23:08 +0000)]
Change SET_VAR, SET_BORDERVALUE_COLOR macro to require semicolon(;) at the end of the line
https://bugs.webkit.org/show_bug.cgi?id=104774

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-12-17
Reviewed by Eric Seidel.

Remove the last ; in SET_VAR, SET_BORDERVALUE_COLOR macro definition.
Add the omitted ; in RenderStyle.h | .cpp

No new tests, just style change.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setColor):
(WebCore::RenderStyle::setVisitedLinkColor):
(WebCore::RenderStyle::setHorizontalBorderSpacing):
(WebCore::RenderStyle::setVerticalBorderSpacing):
* rendering/style/RenderStyle.h:

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

7 years ago[BlackBerry] Deadlock caused by PluginViewPrivate::destroyBuffers()
yoli@rim.com [Mon, 17 Dec 2012 22:43:26 +0000 (22:43 +0000)]
[BlackBerry] Deadlock caused by PluginViewPrivate::destroyBuffers()
https://bugs.webkit.org/show_bug.cgi?id=105215

Reviewed by Rob Buis.
Also internally reviewed by George Staikos.

PR# 266443
It should release mutexes before sending sync message.

* plugins/blackberry/PluginViewPrivateBlackBerry.cpp:
(WebCore::PluginViewPrivate::destroyBuffers):

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

7 years agoChromium rebaseline fast/gradients/css3-linear-angle-gradients.html
commit-queue@webkit.org [Mon, 17 Dec 2012 22:42:35 +0000 (22:42 +0000)]
Chromium rebaseline fast/gradients/css3-linear-angle-gradients.html
https://bugs.webkit.org/show_bug.cgi?id=105211

Patch by Tab Atkins <jackalmage@gmail.com> on 2012-12-17
Reviewed by Dean Jackson.

* platform/chromium-mac-lion/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
* platform/chromium-mac/fast/gradients/css3-linear-angle-gradients-expected.png:
* platform/chromium-win/fast/gradients/css3-linear-angle-gradients-expected.png:

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

7 years agoUnreviewed, rolling out r137198.
commit-queue@webkit.org [Mon, 17 Dec 2012 22:36:16 +0000 (22:36 +0000)]
Unreviewed, rolling out r137198.
http://trac.webkit.org/changeset/137198
https://bugs.webkit.org/show_bug.cgi?id=105212

This patch is causing API behavior compatibility problems
(Requested by zdobersek on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-17

Source/WebCore:

* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateFromSoupMessage):

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(willSendRequestCallback):

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

7 years agoAX: textUnderElement should consider alt text, but skip links and controls
dmazzoni@google.com [Mon, 17 Dec 2012 22:24:03 +0000 (22:24 +0000)]
AX: textUnderElement should consider alt text, but skip links and controls
https://bugs.webkit.org/show_bug.cgi?id=101650

Reviewed by Chris Fleizach.

Source/WebCore:

Getting inner text from an element now ignores focusable descendants
and containers, but uses alternative text.  The computation of
textUnderElement is now recursive and doesn't depend on text
iterators, which might not do the right thing for accessibility
anyways.

For GTK, the old behavior is retained so that support for
the object replacement character is still there. Filed a new
bug (105214) for GTK folks to look at this.

Test: accessibility/button-title-uses-inner-img-alt.html
Test: accessibility/focusable-div.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::textUnderElement):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

Adds new tests to show that getting inner text from an element
now ignores focusable descendants and containers, but uses alternative
text.

Updates and rebaselines several tests to reflect the new logic.
Skips these tests on GTK until support for the object replacement
character can be added.

* accessibility/button-title-uses-inner-img-alt-expected.txt: Added.
* accessibility/button-title-uses-inner-img-alt.html: Added.
* accessibility/focusable-div-expected.txt: Extended with more test cases.
* accessibility/focusable-div.html: Extended with more test cases.
* platform/chromium/TestExpectations: Un-skip test that now passes.
* platform/chromium/accessibility/image-link-expected.txt: Rebaseline
* platform/mac/accessibility/image-link-expected.txt: Rebaseline
* platform/mac/accessibility/internal-link-anchors2-expected.txt: Rebaseline
* platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt: Rebaseline
* platform/mac/accessibility/static-text-role-uses-text-under-element.html: Fix
* platform/mac/accessibility/table-with-aria-role-expected.txt: Rebaseline
* platform/gtk/TestExpectations: Skip these tests until this feature is implemented for GTK.

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

7 years agoConvert sub-pixel iframe-copy-on-scroll tests to use Mock scrollbars
leviw@chromium.org [Mon, 17 Dec 2012 22:17:42 +0000 (22:17 +0000)]
Convert sub-pixel iframe-copy-on-scroll tests to use Mock scrollbars
https://bugs.webkit.org/show_bug.cgi?id=105210

Reviewed by Emil A Eklund.

Converting the iframe tests in sub-pixel/ to use mock scrollbars. These tests needed to
be rebaselined following r137847 anyways. Best to make this change before that.

* fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html:
* fast/sub-pixel/transformed-iframe-copy-on-scroll.html:
* platform/chromium-linux/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
* platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
* platform/chromium/TestExpectations:

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

7 years agoUnreviewed. Adding myself to committers list.
esprehn@chromium.org [Mon, 17 Dec 2012 22:02:22 +0000 (22:02 +0000)]
Unreviewed. Adding myself to committers list.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agonrwt: shuffle code around for cleanup in run_webkit_tests.py
dpranke@chromium.org [Mon, 17 Dec 2012 21:55:27 +0000 (21:55 +0000)]
nrwt: shuffle code around for cleanup in run_webkit_tests.py
https://bugs.webkit.org/show_bug.cgi?id=105078

Reviewed by Ojan Vafai.

This patch reorders functions so that run_webkit_tests can be
understood in a top-down matter better, and to make things slightly
more sensible when I merge manager.py into it.

Also, this adds tests for the actual main() routine, which had several
bugs get through testing a week or two ago.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
(parse_args):
(_set_up_derived_options):
(run):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest):
(RunTest.test_no_http_tests):
(PortTest.disabled_test_mac_lion):
(MainTest):
(MainTest.test_exception_handling):
(MainTest.test_exception_handling.interrupting_run):
(MainTest.test_exception_handling.successful_run):
(MainTest.test_exception_handling.successful_run.FakeRunDetails):
(MainTest.test_exception_handling.exception_raising_run):

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

7 years agowebkitpy: move --lint-test-files code into its own module
dpranke@chromium.org [Mon, 17 Dec 2012 21:50:27 +0000 (21:50 +0000)]
webkitpy: move --lint-test-files code into its own module
https://bugs.webkit.org/show_bug.cgi?id=105077

Reviewed by Eric Seidel.

It really didn't need to be in run_webkit_tests.py anymore.
This patch adds a new lint-test-expectations scripts to Tools/Scripts;
rwt --lint-test-files is still supported for backwards compatibility
for now.

* Scripts/lint-test-expectations: Added.
* Scripts/webkitpy/layout_tests/lint_test_expectations.py: Added.
(lint):
(main):
* Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Added.
(FakePort):
(FakePort.__init__):
(FakePort.test_configuration):
(FakePort.expectations_dict):
(FakePort.skipped_layout_tests):
(FakePort.all_test_configurations):
(FakePort.configuration_specifier_macros):
(FakePort.get_option):
(FakeFactory):
(FakeFactory.__init__):
(FakeFactory.get):
(FakeFactory.all_port_names):
(LintTest):
(LintTest.test_all_configurations):
(LintTest.test_lint_test_files):
(LintTest.test_lint_test_files__errors):
(MainTest):
(MainTest.test_success):
(MainTest.test_success.interrupting_lint):
(MainTest.test_success.successful_lint):
(MainTest.test_success.exception_raising_lint):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(StreamTestingMixin.assertNotEmpty):

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

7 years ago[BlackBerry] Prevent CookieManager from blocking the WKT thread
commit-queue@webkit.org [Mon, 17 Dec 2012 21:48:49 +0000 (21:48 +0000)]
[BlackBerry] Prevent CookieManager from blocking the WKT thread
https://bugs.webkit.org/show_bug.cgi?id=105111

Prevent CookieManager from blocking the WKT Thread.

PR 265603

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-12-17
Reviewed by Rob Buis.

Adding some guards to CookieManager so it will return immedately
if getCookie functions are called when the database isn't loaded yet.

setCookie functions will be redispatched until the database is ready.

* platform/blackberry/CookieManager.cpp:
(WebCore::CookieManager::CookieManager):
(WebCore::CookieManager::setCookies):
(WebCore::CookieManager::getCookie):
(WebCore::CookieManager::generateHtmlFragmentForCookies):
(WebCore::CookieManager::getRawCookies):
(WebCore::CookieManager::removeAllCookies):
(WebCore::CookieManager::getBackingStoreCookies):
(WebCore::CookieManager::setPrivateMode):
(WebCore::CookieManager::removeCookieWithName):
* platform/blackberry/CookieManager.h:

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

7 years agoAdd support for tracking hit test rectangles to enable fast event rejection in the...
leviw@chromium.org [Mon, 17 Dec 2012 21:42:25 +0000 (21:42 +0000)]
Add support for tracking hit test rectangles to enable fast event rejection in the compositor
https://bugs.webkit.org/show_bug.cgi?id=103914

Reviewed by James Robinson.

Source/WebCore:

Adding support for tracking hit test target regions for the purpose of performing initial hit testing
in the compositor to avoid blocking scrolling on the main thread while waiting to hit test events that
aren't occuring in regions with handlers. This is initially being done to avoid having to go to the main
thread when scrolling by flicking on touch devices when the flick occurs outside a tracked touch event
region. This patch includes the implementation to turn this on in Chromium.

To accomplish this goal, Document will now keep a counted hash set of nodes with touch event handlers
instead of only an unsigned integer of the total count. ScrollingCoordinator then updates the compositor
when new touch event handlers are registered or removed, or after layout much like how
nonFastScrollableRegions are currently tracked.

This implementation will not properly update the hit test rects when the renderers are inside a sub-
tree that scrolls.

This change was initially rolled out due to stale Node pointers in Document's touchEventTargets. This
patch adds a callback to remove the Node from that structure to Node's destructor. This is covered
by the touch-target-removed-crash.html test case which is also added.

Test: platform/chromium/fast/events/touch/compositor-touch-hit-rects.html
      platform/chromium/fast/events/touch/touch-target-removed-crash.html

* dom/Document.cpp:
(WebCore::Document::Document): Added a HashCountedSet of touch target nodes. Note: DOMWindow targets
are stored as the Document they point to.
(WebCore::Document::didAddTouchEventHandler): Changed to keep track of the handler instead of a count, and
to update the ScrollingCoordinator with the change.
(WebCore::Document::didRemoveTouchEventHandler): Ditto.
* dom/Document.h:
(WebCore::Document::hasTouchEventHandlers): It's no longer O(1) to get the count of touch handlers, so
expose whether there are any or not.
(WebCore::Document::touchEventTargets):
* dom/Node.cpp:
(WebCore::Node::didMoveToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):
* history/CachedFrame.cpp:
(WebCore::CachedFrameBase::restore):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::updateType):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::addEventListener): Add the Document to the touch target set instead of DOMWindow.
(WebCore::DOMWindow::removeEventListener):
* page/EventHandler.cpp:
(WebCore::EventHandler::handleTouchEvent):
* page/Frame.cpp:
(WebCore::Frame::setDocument):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::computeAbsoluteTouchEventTargetRects): Walk the renderers for event handler
nodes and generate the absolute hit testing rects.
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::setTouchEventTargetRectsChanged): Hook to pass along the hit test rects to
the scrolling tree/compositor.
(ScrollingCoordinator):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRectsChanged):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):
* page/scrolling/chromium/ScrollingCoordinatorChromium.h:
(ScrollingCoordinatorChromium):
* testing/Internals.cpp:
(WebCore::Internals::touchEventHandlerCount): Changed to do the work to calculate the actual count since
it's no longer stored as an int in Document.
(WebCore::Internals::touchEventTargetClientRects):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

Source/WebKit/chromium:

Enabling touch event target region tracking.

* features.gypi:
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::requestTouchEventType):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

LayoutTests:

* platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
* platform/chromium/fast/events/touch/compositor-touch-hit-rects.html: Added.
* platform/chromium/fast/events/touch/touch-target-removed-crash-expected.txt: Added.
* platform/chromium/fast/events/touch/touch-target-removed-crash.html: Added.

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

7 years agobuild-webkit: rename --template-tag to --template-element to match ENABLE #define...
adamk@chromium.org [Mon, 17 Dec 2012 21:40:59 +0000 (21:40 +0000)]
build-webkit: rename --template-tag to --template-element to match ENABLE #define name
https://bugs.webkit.org/show_bug.cgi?id=105072

Reviewed by Laszlo Gombos.

* Scripts/webkitperl/FeatureList.pm:

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

7 years agoRationalize array profiling for out-of-bounds and hole cases
fpizlo@apple.com [Mon, 17 Dec 2012 21:38:51 +0000 (21:38 +0000)]
Rationalize array profiling for out-of-bounds and hole cases
https://bugs.webkit.org/show_bug.cgi?id=105139

Reviewed by Geoffrey Garen.

This makes ArrayProfile track whether or not we had out-of-bounds, which allows
for more precise decision-making in the DFG.

Also cleaned up ExitKinds for out-of-bounds and hole cases to make it easier to
look at them in the profiler.

Slight speed-up (5-8%) on SunSpider/crypto-md5.

* bytecode/ArrayProfile.cpp:
(JSC::ArrayProfile::computeUpdatedPrediction):
(JSC::ArrayProfile::briefDescription):
* bytecode/ArrayProfile.h:
(JSC::ArrayProfile::ArrayProfile):
(JSC::ArrayProfile::addressOfOutOfBounds):
(JSC::ArrayProfile::expectedStructure):
(JSC::ArrayProfile::structureIsPolymorphic):
(JSC::ArrayProfile::outOfBounds):
(JSC::ArrayProfile::polymorphicStructure):
* bytecode/CodeBlock.cpp:
(JSC::dumpChain):
* bytecode/ExitKind.cpp:
(JSC::exitKindToString):
(JSC::exitKindIsCountable):
* bytecode/ExitKind.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compileContiguousPutByVal):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JIT.h:
* jit/JITInlines.h:
(JSC::JIT::emitArrayProfileOutOfBoundsSpecialCase):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emitSlow_op_put_by_val):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emitSlow_op_put_by_val):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

7 years agoAdd some unit testing for WTF::clampTo* functions
jchaffraix@webkit.org [Mon, 17 Dec 2012 21:37:29 +0000 (21:37 +0000)]
Add some unit testing for WTF::clampTo* functions
https://bugs.webkit.org/show_bug.cgi?id=105060

Reviewed by Emil A Eklund.

The new tests are targeted at clamping to int / unsigned and float as those are
the one explicitely exposed through more dedicated functions (like clampToInteger,
clampToPositiveInteger and clampToFloat).

* TestWebKitAPI/Tests/WTF/MathExtras.cpp:

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

7 years ago[BlackBerry] Null pointer access in compositorDrawsRootLayer
yoli@rim.com [Mon, 17 Dec 2012 21:34:56 +0000 (21:34 +0000)]
[BlackBerry] Null pointer access in compositorDrawsRootLayer
https://bugs.webkit.org/show_bug.cgi?id=105204

Reviewed by Rob Buis.

PR# 267188.
Add a null check for m_mainFrame in the function.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::compositorDrawsRootLayer):

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

7 years agoDragging a .jpg to Finder saves it as .jpeg
commit-queue@webkit.org [Mon, 17 Dec 2012 21:28:15 +0000 (21:28 +0000)]
Dragging a .jpg to Finder saves it as .jpeg
https://bugs.webkit.org/show_bug.cgi?id=105140
https://code.google.com/p/chromium/issues/detail?id=35811

Patch by Avi Drissman <avi@chromium.org> on 2012-12-17
Reviewed by Tony Chang.

If the filename's extension is already valid for the MIME type, we don't
need to rewrite it to the preferred extension.

No layout tests because it involves dragging items to the desktop.

* platform/chromium/ClipboardChromium.cpp:
(WebCore::writeImageToDataObject):

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

7 years ago <rdar://problem/12895354> NetworkProcess should not exit after downloading
ap@apple.com [Mon, 17 Dec 2012 21:22:44 +0000 (21:22 +0000)]
    <rdar://problem/12895354> NetworkProcess should not exit after downloading
        https://bugs.webkit.org/show_bug.cgi?id=105209

        Reviewed by Anders Carlsson.

        * NetworkProcess/NetworkProcess.cpp:
        (WebKit::NetworkProcess::shouldTerminate): This process should never voluntarily
        terminate, because it keeps session auth and cookies.

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

7 years ago[BlackBerry] Use application size rather than screen size where appropriate.
commit-queue@webkit.org [Mon, 17 Dec 2012 20:37:38 +0000 (20:37 +0000)]
[BlackBerry] Use application size rather than screen size where appropriate.
https://bugs.webkit.org/show_bug.cgi?id=105201

Patch by Andrew Lo <anlo@rim.com> on 2012-12-17
Reviewed by Rob Buis.
Internally reviewed by Jeff Rogers.

Switch from screenSize to applicationSize where appropriate.
Internal PR266400

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::transformedViewportSize):
(BlackBerry::WebKit::WebPagePrivate::setDefaultLayoutSize):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::initialize):

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

7 years ago[BlackBerry] Improve DOMSupport visibleSelectionForClosestActualWordStart for content...
mifenton@rim.com [Mon, 17 Dec 2012 20:30:03 +0000 (20:30 +0000)]
[BlackBerry] Improve DOMSupport visibleSelectionForClosestActualWordStart for content editable.
https://bugs.webkit.org/show_bug.cgi?id=105198

Reviewed by Rob Buis.

PR 258038.

Improve closest word matching by giving preference to the left when
distances are equal.

Also enforce container matching to avoid selecting the paragraph
marker if a CE div is followed immediately by a CE paragraph.

Minor refactor - don't calculate the distance if the selection
isn't on a word.

Reviewed Internally by Gen Mak and Nima Ghanavatian.

* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::visibleSelectionForClosestActualWordStart):

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

7 years ago[CSS Exclusions] shape-outside on floats for rectangle shapes height/width
commit-queue@webkit.org [Mon, 17 Dec 2012 20:07:57 +0000 (20:07 +0000)]
[CSS Exclusions] shape-outside on floats for rectangle shapes height/width
https://bugs.webkit.org/show_bug.cgi?id=100398

Patch by Bem Jones-Bey <bjonesbe@adobe.com> on 2012-12-17
Reviewed by Julien Chaffraix.

Source/WebCore:

Implement shape outside for floats changing only the height and width
as a simple starting point.

This implementation changes floats to use the bounding box of the
shape outside instead of the margin box for layout. The content box of
the float is unchanged. This patch does not support positioning the
shape outside box, so the x and y parameters are currently ignored in
the specified shape. This will be fixed in a patch for bug 100399.

Tests: fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored.html
       fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html
       fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage.html
       fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle.html

* CMakeLists.txt: Add ExclusionShapeOutsideInfo.{cpp,h}.
* GNUmakefile.list.am: Add ExclusionShapeOutsideInfo.{cpp,h}.
* Target.pri: Add ExclusionShapeOutsideInfo.{cpp,h}.
* WebCore.gypi: Add ExclusionShapeOutsideInfo.{cpp,h}.
* WebCore.vcproj/WebCore.vcproj: Add ExclusionShapeOutsideInfo.{cpp,h}.
* WebCore.xcodeproj/project.pbxproj: Add ExclusionShapeOutsideInfo.{cpp,h}.
* rendering/ExclusionShapeOutsideInfo.cpp: Added. Associates the
    ExclusionShape object for shape outside with a RenderBox. Analagous to
    ExclusionShapeInsideInfo.
(WebCore::exclusionShapeOutsideInfoMap):
(WebCore::ExclusionShapeOutsideInfo::ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::~ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::ensureInfoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::infoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::isInfoEnabledForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::removeInfoForRenderBox):
(WebCore::ExclusionShapeOutsideInfo::computedShape):
* rendering/ExclusionShapeOutsideInfo.h: Added. Associates the
    ExclusionShape object for shape outside with a RenderBox. Analagous to
    ExclusionShapeInsideInfo.
(ExclusionShapeOutsideInfo):
(WebCore::ExclusionShapeOutsideInfo::create):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalLeft):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalRight):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalTop):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalBottom):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalWidth):
(WebCore::ExclusionShapeOutsideInfo::shapeLogicalHeight):
(WebCore::ExclusionShapeOutsideInfo::setShapeSize):
(WebCore::ExclusionShapeOutsideInfo::dirtyShapeSize):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::insertFloatingObject): Use the shape outside's bounding box to set the width that is
    used for inline layout for the float and it's siblings.
(WebCore::RenderBlock::positionNewFloats): Use the shape outside's bounding box to set the height that
    is used for inline layout for the float and it's siblings. Ignore margins when positioning if the float
    has shape outside, per the exclusions spec.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::willBeDestroyed): Clean up associated ExclusionShape.
(WebCore::RenderBox::styleDidChange): Handle style change for shape outside.
(WebCore::RenderBox::updateExclusionShapeOutsideInfoAfterStyleChange): Handle style change for shape outside.
* rendering/RenderBox.h:
(WebCore::RenderBox::exclusionShapeOutsideInfo): Get the ExclusionShapeOutsideInfo associated with this
    RenderBox.

LayoutTests:

Tests for the basic shape outside functionality to show how the shape affects inline text and other floats.
Also test using percentages to specify the shape and that margins are properly ignored (per the spec), when a
shape is applied to a float.

* fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored-expected.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-margin-is-ignored.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-expected.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple-expected.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage-expected.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle-percentage.html: Added.
* fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rectangle.html: Added.

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

7 years ago[BlackBerry] Clean up log output in WebKit/blackberry.
jpetsovits@rim.com [Mon, 17 Dec 2012 19:59:58 +0000 (19:59 +0000)]
[BlackBerry] Clean up log output in WebKit/blackberry.
https://bugs.webkit.org/show_bug.cgi?id=104823

Reviewed by George Staikos.

Behavior-preserving change, fixing many issues with logging:
- Call logAlways() instead of BBLOG() in already defined-out debug blocks.
- Call logAlways() instead of BBLOG() for serious errors, too.
- Fix build for the DEBUG_OVERFLOW_DETECTION block in ChromeClientBlackBerry.
- Fix build for double declarations of "elapsed" variables in RenderQueue.
- Fix compiler warnings due to format string / parameter mismatches.
- Remove unnecessary trailing newlines in logged strings.
- Consistently use Platform:: as prefix except inside WebCore-namespaced code.
- Use indentation that actually passes WebKit style checks.
- Change point/size/rect output to use Platform toString() formats for consistency.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::bestDivisor):
(BlackBerry::WebKit::BackingStorePrivate::suspendBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::suspendScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::scroll):
(BlackBerry::WebKit::BackingStorePrivate::renderJob):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
(BlackBerry::WebKit::BackingStorePrivate::scrollBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::renderContents):
(BlackBerry::WebKit::BackingStorePrivate::blitToWindow):
(BlackBerry::WebKit::BackingStorePrivate::fillWindow):
(BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):
(BlackBerry::WebKit::BackingStorePrivate::clearWindow):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::contentsSizeChanged):
(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
(BlackBerry::WebKit::WebPage::touchEvent):
(BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):
(BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::overflowExceedsContentsSize):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::checkFingerIntersection):
(BlackBerry::WebKit::FatFingers::findIntersectingRegions):
(BlackBerry::WebKit::FatFingers::checkForText):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::convertStringToWchar):
(BlackBerry::WebKit::convertStringToWcharVector):
(BlackBerry::WebKit::convertSpannableStringToString):
(BlackBerry::WebKit::InputHandler::learnText):
(BlackBerry::WebKit::InputHandler::requestCheckingOfString):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestCancelled):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::setInputModeEnabled):
(BlackBerry::WebKit::InputHandler::setElementFocused):
(BlackBerry::WebKit::InputHandler::spellCheckBlock):
(BlackBerry::WebKit::InputHandler::nodeTextChanged):
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
(BlackBerry::WebKit::InputHandler::frameUnloaded):
(BlackBerry::WebKit::InputHandler::selectionChanged):
(BlackBerry::WebKit::InputHandler::setSelection):
(BlackBerry::WebKit::InputHandler::handleKeyboardInput):
(BlackBerry::WebKit::InputHandler::deleteTextRelativeToCursor):
(BlackBerry::WebKit::InputHandler::deleteText):
(BlackBerry::WebKit::InputHandler::spannableTextInRange):
(BlackBerry::WebKit::InputHandler::setComposingRegion):
(BlackBerry::WebKit::InputHandler::finishComposition):
(BlackBerry::WebKit::InputHandler::setText):
(BlackBerry::WebKit::InputHandler::setTextAttributes):
(BlackBerry::WebKit::InputHandler::setRelativeCursorPosition):
(BlackBerry::WebKit::InputHandler::setSpannableTextAndRelativeCursor):
(BlackBerry::WebKit::InputHandler::setComposingText):
(BlackBerry::WebKit::InputHandler::commitText):
* WebKitSupport/RenderQueue.cpp:
(BlackBerry::WebKit::RenderQueue::addToRegularQueue):
(BlackBerry::WebKit::RenderQueue::addToScrollZoomQueue):
(BlackBerry::WebKit::RenderQueue::render):
(BlackBerry::WebKit::RenderQueue::renderAllCurrentRegularRenderJobs):
(BlackBerry::WebKit::RenderQueue::startRegularRenderJobBatchIfNeeded):
(BlackBerry::WebKit::RenderQueue::renderVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::renderVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::renderRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::renderNonVisibleScrollJob):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::SelectionHandler::shouldUpdateSelectionOrCaretForPoint):
(BlackBerry::WebKit::SelectionHandler::setCaretPosition):
(BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):
(BlackBerry::WebKit::SelectionHandler::setSelection):
(BlackBerry::WebKit::SelectionHandler::selectObject):
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):
(BlackBerry::WebKit::SelectionHandler::caretPositionChanged):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::initialize):

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

7 years agoWeb Inspector: Search by selection
commit-queue@webkit.org [Mon, 17 Dec 2012 19:44:04 +0000 (19:44 +0000)]
Web Inspector: Search by selection
https://bugs.webkit.org/show_bug.cgi?id=104970

Patch by John J. Barton <johnjbarton@chromium.org> on 2012-12-17
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Upon activation of the search control, conditionally set input.value to window.getSelection().
For both single file (SearchController) and multifile (AdvancedSearchController).

Test: inspector/editor/text-editor-selection-to-search.html

* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.show):
(WebInspector.SearchView.prototype.syncToSelection):
* inspector/front-end/SearchController.js:
(WebInspector.SearchController.prototype.showSearchField):

LayoutTests:

New inspector test for editor setting the search query

* inspector/editor/text-editor-selection-to-search-expected.txt: Added.
* inspector/editor/text-editor-selection-to-search.html: Added.

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

7 years agorpt --profile --chromium-android throws exception
eric@webkit.org [Mon, 17 Dec 2012 19:35:24 +0000 (19:35 +0000)]
rpt --profile --chromium-android throws exception
https://bugs.webkit.org/show_bug.cgi?id=105061

Reviewed by Daniel Bates.

Somehow popen(args) got turned into popen(*args) at some point,
which caused my new stringify code to fail when args was passed by name.
Fixed and tested.

* Scripts/webkitpy/common/system/executive.py:
(Executive._stringify_args):
(Executive):
(Executive.popen):
* Scripts/webkitpy/common/system/executive_unittest.py:
(ExecutiveTest.test_popen_args):

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

7 years agoUse Platform::current() instead of webKitPlatformSupport() in DumpRenderTree
pilgrim@chromium.org [Mon, 17 Dec 2012 19:32:26 +0000 (19:32 +0000)]
Use Platform::current() instead of webKitPlatformSupport() in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=105054

Reviewed by Jochen Eisinger.

Part of a refactoring series; see tracking bug 82948.

* DumpRenderTree/chromium/NotificationPresenter.cpp:
(NotificationPresenter::show):
* DumpRenderTree/chromium/Task.cpp:
(postTask):
* DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:

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

7 years ago[GStreamer] Use gst_element_link_pads_full() with CHECK_NOTHING for speed and sanity
commit-queue@webkit.org [Mon, 17 Dec 2012 19:21:05 +0000 (19:21 +0000)]
[GStreamer] Use gst_element_link_pads_full() with CHECK_NOTHING for speed and sanity
https://bugs.webkit.org/show_bug.cgi?id=105181

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2012-12-17
Reviewed by Philippe Normand.

Replace some calls to gst_pad_link() on request pads, by
gst_element_link_pads_full() with CHECK_NOTHING flag, removing
unnecessary pad compatibility checks and simplifying code.

* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webKitWebAudioSrcConstructed): Links audioconvert source with a
requested interleave sink using gst_element_link_pads_full().
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Links a
requested source pad from videoTee with the queue sink.

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

7 years agoClamp values in LayoutUnit::operator/ when SATURATED_LAYOUT_ARITHMETIC is enabled
eae@chromium.org [Mon, 17 Dec 2012 19:12:45 +0000 (19:12 +0000)]
Clamp values in LayoutUnit::operator/ when SATURATED_LAYOUT_ARITHMETIC is enabled
https://bugs.webkit.org/show_bug.cgi?id=104955

Reviewed by Julien Chaffraix.

Source/WebCore:

LayoutUnit::operator/ currently does not clamp values and
instead overflows when given a value greater than INT_MAX or
less than INT_MIN.

Test: TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp

* platform/LayoutUnit.h:
(WebCore::operator/):
Clamp value if SATURATED_LAYOUT_ARITHMETIC is enabled.

Tools:

Add tests for LayoutUnit.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/ForwardingHeaders: Added.
* TestWebKitAPI/ForwardingHeaders/WebCore: Added.
* TestWebKitAPI/ForwardingHeaders/WebCore/LayoutUnit.h: Added.
* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:
* TestWebKitAPI/TestWebKitAPI.gypi:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp: Added.
(TestWebKitAPI):
(TestWebKitAPI::TEST):
* TestWebKitAPI/win/TestWebKitAPI.vcproj:

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

7 years agoDon't allow edge TileCache tiles to be larger than necessary
simon.fraser@apple.com [Mon, 17 Dec 2012 18:59:26 +0000 (18:59 +0000)]
Don't allow edge TileCache tiles to be larger than necessary
https://bugs.webkit.org/show_bug.cgi?id=105195

Reviewed by Anders Carlsson.

The TileCache would allow edge tiles to be larger than the required size, with the assumption
that the extra space would never be visible. However, for content tiled layers, it can be,
and it doesn't get correctly cleared. So always keep the edge tiles at the specified size.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::revalidateTiles):

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

7 years ago[chromium] removed unused preferences from testRunner.overridePreference
jochen@chromium.org [Mon, 17 Dec 2012 18:46:33 +0000 (18:46 +0000)]
[chromium] removed unused preferences from testRunner.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=105169

Reviewed by Tony Chang.

Most notably this removes the code related to font family maps which is
now handled via window.internals.settings

* DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
(WebPreferences):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::overridePreference):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
(WebTestRunner::WebPreferences::applyTo):

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

7 years agoSource/WebKit/chromium: [chromium] Move ownership of WebLayerTreeView to WebWidgetClient
commit-queue@webkit.org [Mon, 17 Dec 2012 18:44:44 +0000 (18:44 +0000)]
Source/WebKit/chromium: [chromium] Move ownership of WebLayerTreeView to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=105071

Patch by James Robinson <jamesr@chromium.org> on 2012-12-17
Reviewed by Adrienne Walker.

This moves ownership of a given WebWidget's WebLayerTreeView from WebViewImpl out to the embedder by way of
WebWidgetClient. To deal with the two-sided nature of the patch, if construction by the new path fails
WebViewImpl constructs a WebLayerTreeView by the old path, which means it keeps ownership.

* public/WebWidgetClient.h:
(WebWidgetClient):
(WebKit::WebWidgetClient::initializeLayerTreeView):
(WebKit::WebWidgetClient::layerTreeView):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::webLayerTreeView):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* src/WebViewImpl.h:

Tools: [chromium] Move creation of WebLayerTreeView to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=105071

Patch by James Robinson <jamesr@chromium.org> on 2012-12-17
Reviewed by Adrienne Walker.

Update WebViewHost for the new WebWidgetClient interface.

* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::initializeLayerTreeView):
(WebViewHost::layerTreeView):
(WebViewHost::~WebViewHost):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

7 years ago[CSS Exclusions] Floats should respect shape-inside on exclusions
commit-queue@webkit.org [Mon, 17 Dec 2012 18:27:28 +0000 (18:27 +0000)]
[CSS Exclusions] Floats should respect shape-inside on exclusions
https://bugs.webkit.org/show_bug.cgi?id=89261

Patch by Bem Jones-Bey <bjonesbe@adobe.com> on 2012-12-17
Reviewed by David Hyatt.

Source/WebCore:

Position floats properly with respect to an exclusion shape. Note that
this will not attempt to position floats in a polygon that has
multiple segments. In the multiple segment case, the floats will be
positioned as if the exclusion did not exist.

Updated an existing test case to test for this.
Test: fast/exclusions/shape-inside/shape-inside-floats-simple.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeLogicalLocationForFloat): Adjust the
right and left offsets to take into account the right and left offset
contributed by the exclusion shape.

LayoutTests:

Update test to properly test floats with shape-inside.

* fast/exclusions/shape-inside/shape-inside-floats-simple-expected.html:
* fast/exclusions/shape-inside/shape-inside-floats-simple.html:

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

7 years agoImplement add64 for MIPS assembler after r136601
commit-queue@webkit.org [Mon, 17 Dec 2012 18:25:08 +0000 (18:25 +0000)]
Implement add64 for MIPS assembler after r136601
https://bugs.webkit.org/show_bug.cgi?id=104106

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2012-12-17
Reviewed by Zoltan Herczeg.

Added add64 function to MacroAssebler of MIPS.

* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::add32):
(JSC::MacroAssemblerMIPS::add64):
(MacroAssemblerMIPS):

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

7 years ago[EFL] Unit tests process hanging on WK2 Release bots
thiago.santos@intel.com [Mon, 17 Dec 2012 17:51:41 +0000 (17:51 +0000)]
[EFL] Unit tests process hanging on WK2 Release bots
https://bugs.webkit.org/show_bug.cgi?id=105021

Reviewed by Kenneth Rohde Christiansen.

Follow-up of r137605, which made it more difficult to reproduce
the race condition but doesn't entirely solve the problem. Now
we are handling only points in the middle of the fork()/exec().

* UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
(WebKit::ProcessLauncher::launchProcess):

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

7 years ago[EFL][WK2] window_create doesn't receive the url
kenneth@webkit.org [Mon, 17 Dec 2012 17:35:55 +0000 (17:35 +0000)]
[EFL][WK2] window_create doesn't receive the url
https://bugs.webkit.org/show_bug.cgi?id=105184

Reviewed by Alexis Menard.

Source/WebKit2:

Pass the url to the window_create method.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::createNewPage):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/tests/test_ewk2_window_features.cpp:
(createDefaultWindow):
(createWindow):
* UIProcess/efl/PageUIClientEfl.cpp:
(WebKit::PageUIClientEfl::createNewPage):

Tools:

* MiniBrowser/efl/main.c: Use the url supplied to window_create
(on_window_create):

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

7 years agoGraphicsLayer's repaint count should update even when debugging option to show it...
commit-queue@webkit.org [Mon, 17 Dec 2012 17:19:20 +0000 (17:19 +0000)]
GraphicsLayer's repaint count should update even when debugging option to show it is off
https://bugs.webkit.org/show_bug.cgi?id=105178

Patch by Antoine Quint <graouts@apple.com> on 2012-12-17
Reviewed by Simon Fraser.

Update the repain count even if the debug option to show them is turned off.
This allows the count to be accurate in between toggles of the debug option
and to allow the InspectorLayerTreeAgent to get accurate results any time
the layer tree is requested (see webkit.org/b/105024).

* platform/graphics/mac/WebLayer.mm:
(drawLayerContents):

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

7 years ago[CSS Exclusions] Add helper functions for converting floats to LayoutUnits
commit-queue@webkit.org [Mon, 17 Dec 2012 17:10:53 +0000 (17:10 +0000)]
[CSS Exclusions] Add helper functions for converting floats to LayoutUnits
https://bugs.webkit.org/show_bug.cgi?id=103450

Patch by Hans Muller <hmuller@adobe.com> on 2012-12-17
Reviewed by Dirk Schulze.

When a float logicalTop value is converted to a LayoutUnit it's necessary to
use LayoutUnit::fromFloatCeil() to ensure that we're snapping to a value that's
inside the ExclusionShape.  Similarly, to convert a logicalBottom value from
float to LayoutUnit we use LayoutUnit::fromFloatFloor().  Added a pair of private
ExlcusionShapeInsideInfo methods that do the conversions and refactored existing
code to use them.

This is just a cleanup.  No new tests are needed, the existing tests cover
these changes.

* rendering/ExclusionShapeInsideInfo.cpp:
(WebCore::ExclusionShapeInsideInfo::adjustLogicalLineTop): Use the new floatLogicalTopToLayoutUnit() method.
* rendering/ExclusionShapeInsideInfo.h:
(WebCore::ExclusionShapeInsideInfo::shapeLogicalTop): Use the new floatLogicalTopToLayoutUnit() method.
(WebCore::ExclusionShapeInsideInfo::shapeLogicalBottom): Use the new floatLogicalBottomToLayoutUnit() method.
(ExclusionShapeInsideInfo):
(WebCore::ExclusionShapeInsideInfo::floatLogicalTopToLayoutUnit): Convert a float to a LayoutUnit with LayoutUnit::fromFloatCeil().
(WebCore::ExclusionShapeInsideInfo::floatLogicalBottomToLayoutUnit): Convert a float to a LayoutUnit with LayoutUnit::fromFloatFloor().

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

7 years agoWeb Inspector: Provide the paint count of layers through the LayerTreeAgent
commit-queue@webkit.org [Mon, 17 Dec 2012 16:57:16 +0000 (16:57 +0000)]
Web Inspector: Provide the paint count of layers through the LayerTreeAgent
https://bugs.webkit.org/show_bug.cgi?id=105024

Patch by Antoine Quint <graouts@apple.com> on 2012-12-17
Reviewed by Pavel Feldman.

Source/WebCore:

We add a new optional .paintCount property to the Layer object, passing through the
relevant information from GraphicsLayer.

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

LayoutTests:

Add the paintCount property to the expected output of the LayerTreeAgent test.

* inspector-protocol/layer-tree-expected.txt:
* inspector-protocol/layer-tree.html:

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

7 years agoWeb Inspector: [chromium] make toolbar render with Mountain Lion-friendly colors
pfeldman@chromium.org [Mon, 17 Dec 2012 16:35:55 +0000 (16:35 +0000)]
Web Inspector: [chromium] make toolbar render with Mountain Lion-friendly colors
https://bugs.webkit.org/show_bug.cgi?id=105177

Reviewed by Vsevolod Vlasov.

Source/WebCore:

* inspector/front-end/UIUtils.js:
(WebInspector.platformFlavor):
* inspector/front-end/inspector.css:
(#toolbar):
(body.dock-to-bottom #toolbar):
(.toolbar-item):

Source/WebKit/chromium:

* src/js/devTools.css:
(body.dock-to-bottom #toolbar):
(body.undocked.platform-mac-leopard #toolbar):
(body.undocked.platform-mac-leopard.inactive #toolbar):
(body.undocked.platform-mac-snowleopard #toolbar):
(body.undocked.platform-mac-snowleopard.inactive #toolbar):
(body.undocked.platform-mac-mountain-lion #toolbar):
(body.undocked.platform-mac-mountain-lion.inactive #toolbar):

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

7 years agoWeb Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect...
loislo@chromium.org [Mon, 17 Dec 2012 16:31:14 +0000 (16:31 +0000)]
Web Inspector: Native Memory Instrumentation: MemoryInstrumentation doesn't detect reportMemoryUsage method defined in a base class.
https://bugs.webkit.org/show_bug.cgi?id=105026

Reviewed by Yury Semikhatsky.

Old SFINAE test was replaced with new one based on this article:
http://stackoverflow.com/questions/1966362/sfinae-to-check-for-inherited-member-functions

Source/WTF:

* wtf/MemoryInstrumentation.h:
(MemoryInstrumentation):
(yes):
(IsInstrumented):
(no):
(WTF::MemoryInstrumentation::IsInstrumented::BaseMixin::reportMemoryUsage):
(WTF::MemoryInstrumentation::selectInstrumentationMethod):
(InstrumentationSelector):
(WTF):
(WTF::::reportObjectMemoryUsage):

Tools:

New test which covers this problem was added.

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

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

7 years ago[Qt][WK2] Unreviewed gardening.
ossy@webkit.org [Mon, 17 Dec 2012 16:22:31 +0000 (16:22 +0000)]
[Qt][WK2] Unreviewed gardening.

* platform/qt-5.0-wk2/TestExpectations: Skip a new failing test.
* platform/qt-5.0-wk2/compositing/iframes/page-cache-layer-tree-expected.txt: Added because of minor pixel differences.
* platform/qt-5.0-wk2/fast/images/crossfade-client-not-removed-crash-expected.txt: Added WK2 specific result.
* platform/qt-5.0-wk2/fast/text/zero-font-size-expected.txt: Added after r137902.
* platform/qt-5.0-wk2/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt: Updated.

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

7 years agoAttribute: Remove unused constructor and isNull().
akling@apple.com [Mon, 17 Dec 2012 16:20:28 +0000 (16:20 +0000)]
Attribute: Remove unused constructor and isNull().
<http://webkit.org/b/105179>

Reviewed by Antti Koivisto.

Removed the Attribute constructor that takes a localName rather than a full QualifiedName as that was never used.
Also removed Attribute::isNull(), since that was only called in one place where isNull() will never be true.

* dom/Attribute.h:
* html/HTMLIFrameElement.cpp:
(WebCore::HTMLIFrameElement::collectStyleForPresentationAttribute):

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

7 years ago[Blackberry] Static code analysis warning fixes
commit-queue@webkit.org [Mon, 17 Dec 2012 15:45:42 +0000 (15:45 +0000)]
[Blackberry] Static code analysis warning fixes
https://bugs.webkit.org/show_bug.cgi?id=105129

Patch by Anthony Scian <ascian@rim.com> on 2012-12-17
Reviewed by Rob Buis.

Source/WebCore:

- alloca can return NULL, recoded to just use a temp var

* plugins/blackberry/PluginViewBlackBerry.cpp:
(WebCore::PluginView::updateBuffer):

Source/WebKit/blackberry:

- disable copy/op= in BackingStore
- cache and check intermediate values in parentLayer
- disable copy/op= in InRegionScroller
- disable copy/op= in WebPageGroupLoadDeferrer
- disable copy/op= in WebSettings
- disable copy/op= in WebViewportArguments
- disable copy/op= in BackingStoreClient
- disable copy/op= in TileBuffer
- if stopNode is not NULL, loop could iterate past NULL; added NULL check to loop
  to make the code more robust

* Api/BackingStore.h:
* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::calculateInRegionScrollableAreasForPoint):
(BlackBerry::WebKit::parentLayer):
* Api/InRegionScroller.h:
* Api/WebPageGroupLoadDeferrer.h:
* Api/WebSettings.h:
* Api/WebViewportArguments.h:
* WebKitSupport/BackingStoreClient.h:
(BackingStoreClient):
* WebKitSupport/BackingStoreTile.h:
(TileBuffer):
* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::visibleTextQuads):

Tools:

Added null checks for fopen calls, no recovery attempted; access fault prevention only.

* DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::createFile):
(BlackBerry::WebKit::DumpRenderTree::runTest):

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

7 years ago[Qt][WK2] compositing/overflow/automatically-opt-into-composited-scrolling.html makes...
ossy@webkit.org [Mon, 17 Dec 2012 15:01:59 +0000 (15:01 +0000)]
[Qt][WK2] compositing/overflow/automatically-opt-into-composited-scrolling.html makes other tests fail
https://bugs.webkit.org/show_bug.cgi?id=105173

Unreviewed gardening, skip the culprit tests to paint the bots green.

* platform/qt-5.0-wk2/TestExpectations:

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

7 years ago[WK2] TiledBackingStore: css3/device-adapt/viewport-width-not-affecting-next-page...
mikhail.pozdnyakov@intel.com [Mon, 17 Dec 2012 14:59:46 +0000 (14:59 +0000)]
[WK2] TiledBackingStore: css3/device-adapt/viewport-width-not-affecting-next-page.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=105131

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

The problem was lead by truncation of the scaled result for 'contentFixedSize'.
Fixed now with using FloatSize::scale() instead of IntSize::scale().

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::sendViewportAttributesChanged):

LayoutTests:

Unskipped css3/device-adapt/viewport-width-not-affecting-next-page.html for WK2 EFL.

* platform/efl-wk2/TestExpectations:

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

7 years agoWeb Inspector: Make popover content accessible for clicks.
commit-queue@webkit.org [Mon, 17 Dec 2012 14:53:49 +0000 (14:53 +0000)]
Web Inspector: Make popover content accessible for clicks.
https://bugs.webkit.org/show_bug.cgi?id=105167

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-17
Reviewed by Vsevolod Vlasov.

Currently it is very hard to move mouse pointer inside of popover area.
The only maneuver is to precisely jerk the mouse in direction of popover.

This path makes anchor and popover "active" areas overlap, so it becomes
possible to smoothly move mouse to popover interior.

* inspector/front-end/Popover.js:
(WebInspector.Popover.prototype._innerShow): Make popover "outer" border
an be "active" area.
* inspector/front-end/popover.css: Allow popover "outer" border receive
mouse events.

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

7 years agoAdd Anton Vayvod and Tim Volodine as contributors in committers.py
peter@chromium.org [Mon, 17 Dec 2012 14:40:38 +0000 (14:40 +0000)]
Add Anton Vayvod and Tim Volodine as contributors in committers.py
https://bugs.webkit.org/show_bug.cgi?id=105025

Unreviewed. Adds two contributors to committers.py.
They are initially contributing to the Text Autosizing feature (master bug: 84186).

Patch by John Mellor <johnme@chromium.org> on 2012-12-17

* Scripts/webkitpy/common/config/committers.py:

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

7 years agoWeb Inspector: Persist Audit selections across sessions
caseq@chromium.org [Mon, 17 Dec 2012 14:14:13 +0000 (14:14 +0000)]
Web Inspector: Persist Audit selections across sessions
https://bugs.webkit.org/show_bug.cgi?id=103944

Reviewed by Alexander Pavlov.

Make selected audit categories a persistent setting, to simplify life for those
repeatedly running same set of categories.

* inspector/front-end/AuditLauncherView.js:
(WebInspector.AuditLauncherView):
(WebInspector.AuditLauncherView.prototype.addCategory.get var):
(WebInspector.AuditLauncherView.prototype.addCategory):
(WebInspector.AuditLauncherView.prototype._selectAllClicked):
(WebInspector.AuditLauncherView.prototype._categoryClicked):
(WebInspector.AuditLauncherView.prototype._createCategoryElement):

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

7 years ago[WK2] Enable tests that use boolean overridePreference
commit-queue@webkit.org [Mon, 17 Dec 2012 14:04:20 +0000 (14:04 +0000)]
[WK2] Enable tests that use boolean overridePreference
https://bugs.webkit.org/show_bug.cgi?id=105008

Unreviewed gardening. Enable tests that call overridePreference()
with a boolean value, mostly webgl ones. Add a few fail results for
EFL.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-17

* platform/efl/TestExpectations:
* platform/wk2/TestExpectations:

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

7 years ago[Texmap] Drawing of ARB textures broken after r137498.
zeno.albisser@digia.com [Mon, 17 Dec 2012 14:01:37 +0000 (14:01 +0000)]
[Texmap] Drawing of ARB textures broken after r137498.
https://bugs.webkit.org/show_bug.cgi?id=105165

Disable antialiasing for ARB textures after unifying
code paths. We are currently missing a fragment shader
to do antialiasing with ARB textures.

Reviewed by Kenneth Rohde Christiansen.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawTexture):

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

7 years agoAdd manual test to verify that geometry methods (moveTo, etc) work
kenneth@webkit.org [Mon, 17 Dec 2012 13:54:48 +0000 (13:54 +0000)]
Add manual test to verify that geometry methods (moveTo, etc) work
https://bugs.webkit.org/show_bug.cgi?id=105160

Reviewed by Alexis Menard.

* ManualTests/window-geometry.html: Added.

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

7 years agoUnreviewed, add myself to committers.py.
mikhail.pozdnyakov@intel.com [Mon, 17 Dec 2012 13:50:45 +0000 (13:50 +0000)]
Unreviewed, add myself to committers.py.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agoWeb Inspector: Popup flickers when cursor moves between elements with same anchor.
commit-queue@webkit.org [Mon, 17 Dec 2012 12:33:41 +0000 (12:33 +0000)]
Web Inspector: Popup flickers when cursor moves between elements with same anchor.
https://bugs.webkit.org/show_bug.cgi?id=104992

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-17
Reviewed by Pavel Feldman.

Popup disappears and then appears again when mouse pointer traverses
between sub-elements of anchor element.

* inspector/front-end/Popover.js: Split method "_mouseOut".
(WebInspector.PopoverHelper.prototype._popoverMouseOut):
Handler for Popover.
(WebInspector.PopoverHelper.prototype._mouseOut):
Handler for PopoverHelper.

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

7 years ago[Qt][WK1]REGRESSION(r137811): compositing/tiling/crash-huge-layer.html makes the...
ossy@webkit.org [Mon, 17 Dec 2012 12:13:42 +0000 (12:13 +0000)]
[Qt][WK1]REGRESSION(r137811): compositing/tiling/crash-huge-layer.html makes the following test crash on 32 bit
https://bugs.webkit.org/show_bug.cgi?id=105158

Unreviewed gardening, skip the culprit test to paint the bots green.

* platform/qt-5.0-wk1/TestExpectations:

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

7 years ago[Chromium] Remove support for TRACE_EVENT_IF_LONGER_THANx macros
caseq@chromium.org [Mon, 17 Dec 2012 12:09:11 +0000 (12:09 +0000)]
[Chromium] Remove support for TRACE_EVENT_IF_LONGER_THANx macros
https://bugs.webkit.org/show_bug.cgi?id=104784

Reviewed by Pavel Feldman.

Source/Platform:

- remove threshold and id of related begin event from arguments of addTraceEvent()
- do not return the index of added event from addTraceEvent()

* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::addTraceEvent):

Source/WebCore:

- removed TRACE_EVENT_IF_LONGER_THANx macros;
- changed addTraceEvent() to return void, as we no longer need the index of added event.

* platform/EventTracer.h:
(EventTracer):
* platform/chromium/EventTracerChromium.cpp:
(WebCore::EventTracer::addTraceEvent):
* platform/chromium/TraceEvent.h:
(TraceEvent):
(WebCore::TraceEvent::addTraceEvent):
(WebCore::TraceEvent::TraceEndOnScopeClose::addEventIfEnabled):
(Data):

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

7 years agoFix Math.pow implementation with MinGW-w64
commit-queue@webkit.org [Mon, 17 Dec 2012 11:49:58 +0000 (11:49 +0000)]
Fix Math.pow implementation with MinGW-w64
https://bugs.webkit.org/show_bug.cgi?id=105087

Patch by Jonathan Liu <net147@gmail.com> on 2012-12-17
Reviewed by Simon Hausmann.

The MinGW-w64 runtime has different behaviour for pow()
compared to other C runtimes. This results in the following
test262 tests failing with the latest MinGW-w64 runtime:
- S15.8.2.13_A14
- S15.8.2.13_A16
- S15.8.2.13_A20
- S15.8.2.13_A22

Handle the special cases that are different with MinGW-w64.

* runtime/MathObject.cpp:
(JSC::mathPow):

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