profile/ivi/webkit-efl.git
12 years agoMerge AllocationSpace into MarkedSpace
mhahnenberg@apple.com [Fri, 27 Jan 2012 02:30:38 +0000 (02:30 +0000)]
Merge AllocationSpace into MarkedSpace
https://bugs.webkit.org/show_bug.cgi?id=77116

Reviewed by Geoffrey Garen.

Merging AllocationSpace and MarkedSpace in preparation for future refactoring/enhancement to
MarkedSpace allocation.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* heap/AllocationSpace.cpp: Removed.
* heap/AllocationSpace.h: Removed.
* heap/BumpSpace.h:
(BumpSpace):
* heap/Heap.h:
(JSC::Heap::objectSpace):
(Heap):
():
* heap/HeapBlock.h:
():
* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::tryAllocateHelper):
(JSC):
(JSC::MarkedSpace::tryAllocate):
(JSC::MarkedSpace::allocateSlowCase):
(JSC::MarkedSpace::allocateBlock):
(JSC::MarkedSpace::freeBlocks):
(TakeIfUnmarked):
(JSC::TakeIfUnmarked::TakeIfUnmarked):
(JSC::TakeIfUnmarked::operator()):
(JSC::TakeIfUnmarked::returnValue):
(JSC::MarkedSpace::shrink):
(GatherDirtyCells):
(JSC::GatherDirtyCells::returnValue):
(JSC::GatherDirtyCells::GatherDirtyCells):
(JSC::GatherDirtyCells::operator()):
(JSC::MarkedSpace::gatherDirtyCells):
* heap/MarkedSpace.h:
(MarkedSpace):
(JSC::MarkedSpace::blocks):
(JSC::MarkedSpace::forEachCell):
(JSC):
(JSC::MarkedSpace::allocate):

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

12 years agoFix bad code generated by the JSC idl code generator for [CachedAttribute] attributes
commit-queue@webkit.org [Fri, 27 Jan 2012 02:25:01 +0000 (02:25 +0000)]
Fix bad code generated by the JSC idl code generator for [CachedAttribute] attributes
https://bugs.webkit.org/show_bug.cgi?id=77165

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-26
Reviewed by Oliver Hunt.

Missing parameter in a call to deserialize() and using 'this' in the
attribute accessor functions (which are static).

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(NativeToJSValue):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::jsTestSerializedScriptValueInterfaceValue):

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

12 years agoSource/WebCore: [chromium] Allow modification of size of partially occluded quads...
wjmaclean@chromium.org [Fri, 27 Jan 2012 02:11:55 +0000 (02:11 +0000)]
Source/WebCore: [chromium] Allow modification of size of partially occluded quads during culling to reduce pixel overdraw.
https://bugs.webkit.org/show_bug.cgi?id=76349

Reviewed by James Robinson.

Prior to this patch, draw culling either rejects a DrawQuad because it is completely
occluded, or draws the entire quad (even if it is largely occluded). This patch
attempts to reduce the number of pixels drawn by determining if a partially
occluded DrawQuad can be resized to a smaller quad, based on what portion of the
DrawQuad is actually visible, and performing that resizing where possible.

Added cases to existing unit tests.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawTileQuad):
* platform/graphics/chromium/cc/CCDrawQuad.cpp:
(WebCore::CCDrawQuad::CCDrawQuad):
* platform/graphics/chromium/cc/CCDrawQuad.h:
(WebCore::CCDrawQuad::setQuadVisibleRect):
(WebCore::CCDrawQuad::quadVisibleRect):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::rectSubtractRegion):
(WebCore::CCQuadCuller::cullOccludedQuads):

Source/WebKit/chromium: [chromium] Allow modification of size of partially occluded quads.
https://bugs.webkit.org/show_bug.cgi?id=76349

Reviewed by James Robinson.

* tests/CCQuadCullerTest.cpp:
(WebCore::makeTileQuads)
(WebCore::setQuads):
(WebCore::TEST):

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

12 years ago2012-01-26 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Fri, 27 Jan 2012 02:10:52 +0000 (02:10 +0000)]
2012-01-26  Oliver Hunt  <oliver@apple.com>

        MSVC bug fix.
        <rdar://problem/10703671> MSVC generates bad code for enum compare.

        RS=Geoff

        Make bitfield large enough to work around MSVC's desire to make enums
        signed types.

        * bytecode/CallLinkInfo.h:
        (CallLinkInfo):

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

12 years ago[chromium] Revert changes which added setResourceUsageCHROMIUM gl extension since...
commit-queue@webkit.org [Fri, 27 Jan 2012 02:09:26 +0000 (02:09 +0000)]
[chromium] Revert changes which added setResourceUsageCHROMIUM gl extension since feature changed directions
https://bugs.webkit.org/show_bug.cgi?id=77120

Patch by Michal Mocny <mmocny@google.com> on 2012-01-26
Reviewed by Kenneth Russell.

* public/platform/WebGraphicsContext3D.h:
(WebGraphicsContext3D):
* src/GraphicsContext3DChromium.cpp:
(WebCore):
* tests/FakeWebGraphicsContext3D.h:
(WebKit::FakeWebGraphicsContext3D::setVisibilityCHROMIUM):

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

12 years agoScrollbars disappear when switching from legacy to overlay scrollbars
andersca@apple.com [Fri, 27 Jan 2012 02:01:47 +0000 (02:01 +0000)]
Scrollbars disappear when switching from legacy to overlay scrollbars
https://bugs.webkit.org/show_bug.cgi?id=77166

Reviewed by Dan Bernstein.

* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollbarStyleChanged):
Call positionScrollbarLayers to make sure that the new scrollbar layers are positioned correctly.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::updateScrollerStyle):
Call ScrollbarThemeMac::setNewPainterForScrollbar after making the call to the scrollbar painter controller
to set the horizontal or vertical imp, since setting the imp will reset the knob style.

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

12 years agoNULL ptr in WebCore::ContainerNode::parserAddChild
abarth@webkit.org [Fri, 27 Jan 2012 01:55:36 +0000 (01:55 +0000)]
NULL ptr in WebCore::ContainerNode::parserAddChild
https://bugs.webkit.org/show_bug.cgi?id=76258

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/parser/nested-fragment-parser-crash.html

We always need a parent element to attach to.  In crazy cases, we can
have elements in the stack of open elements that are already detached
from the DOM.  In those cases, they don't have a parent, so we aren't
able to enforce the maximum DOM depth.  (Fortunately, they're not
attached to the DOM anymore so we don't need to enforce the maximum DOM
depth!)

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::attachLater):
(WebCore::HTMLConstructionSite::fosterParent):

LayoutTests:

This crazy test case causes the parser to do all manner of crazy
things, which is good times for testing.

* fast/parser/nested-fragment-parser-crash-expected.txt: Added.
* fast/parser/nested-fragment-parser-crash.html: Added.

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

12 years agoAll DFG helpers that may call out to arbitrary JS code must know where they
fpizlo@apple.com [Fri, 27 Jan 2012 01:15:16 +0000 (01:15 +0000)]
All DFG helpers that may call out to arbitrary JS code must know where they
were called from due to inlining and call stack walking
https://bugs.webkit.org/show_bug.cgi?id=77070
<rdar://problem/10750834>

Source/JavaScriptCore:

Reviewed by Geoff Garen.

Changed the DFG to always record a code origin index in the tag of the argument
count (which we previously left blank for the benefit of LLInt, but is still
otherwise unused by the DFG), so that if we ever need to walk the stack accurately
we know where to start. In particular, if the current ExecState* points several
semantic call frames away from the true semantic call frame because we had
performed inlining, having the code origin index recorded means that we can reify
those call frames as necessary to give runtime/library code an accurate view of
the current JS state.

This required several large but mechanical changes:

- Calling a function from the DFG now plants a store32 instruction to store the
  code origin index. But the indices of code origins were previously picked by
  the DFG::JITCompiler after code generation completed. I changed this somewhat;
  even though the code origins are put into the CodeBlock after code gen, the
  code gen now knows a priori what their indices will be. Extensive assertions
  are in place to ensure that the two don't get out of sync, in the form of the
  DFG::CallBeginToken. Note that this mechanism has almost no effect on JS calls;
  those don't need the code origin index set in the call frame because we can get
  it by doing a binary search on the return PC.

- Stack walking now always calls trueCallFrame() first before beginning the walk,
  since even the top call frame may be wrong. It still calls trueCallerFrame() as
  before to get to the next frame, though trueCallerFrame() is now mostly a
  wrapper around callerFrame()->trueCallFrame().

- Because the mechanism for getting the code origin of a call frame is bimodal
  (either the call frame knows its code origin because the code origin index was
  set, or it's necessary to use the callee frame's return PC), I put in extra
  mechanisms to determine whether your caller, or your callee, corresponds to
  a call out of C++ code. Previously we just had the host call flag, but this is
  insufficient as it does not cover the case of someone calling JSC::call(). But
  luckily we can determine this just by looking at the return PC: if the return
  PC is in range of the ctiTrampiline, then two things are true: this call
  frame's PC will tell you nothing about where you came from in your caller, and
  the caller already knows where it's at because it must have set the code origin
  index (unless it's not DFG code, in which case we don't care because there is
  no inlining to worry about).

- During testing this revealed a simple off-by-one goof in DFG::ByteCodeParser's
  inlining code, so I fixed it.

- Finally because I was tired of doing random #if's for checking if I should be
  passing around an Instruction* or a ReturnAddressPtr, I created a class called
  AbstractPC that holds whatever notion of a PC is appropriate for the current
  execution environment. It's designed to work gracefully even if both the
  interpreter and the JIT are compiled in, and should integrate nicely with the
  LLInt.

This is neutral on all benchmarks and fixes some nasty corner-case regressions of
evil code that uses combinations of getters/setters and function.arguments.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CodeBlock.h:
(JSC::CodeBlock::codeOrigin):
(CodeBlock):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(CallBeginToken):
(JSC::DFG::CallBeginToken::CallBeginToken):
(JSC::DFG::CallBeginToken::assertCodeOriginIndex):
(JSC::DFG::CallBeginToken::assertNoCodeOriginIndex):
(DFG):
(JSC::DFG::CallExceptionRecord::CallExceptionRecord):
(CallExceptionRecord):
(JSC::DFG::JITCompiler::JITCompiler):
(JITCompiler):
(JSC::DFG::JITCompiler::nextCallBeginToken):
(JSC::DFG::JITCompiler::beginCall):
(JSC::DFG::JITCompiler::notifyCall):
(JSC::DFG::JITCompiler::addExceptionCheck):
(JSC::DFG::JITCompiler::addFastExceptionCheck):
* dfg/DFGOperations.cpp:
():
* dfg/DFGRepatch.cpp:
(JSC::DFG::tryBuildGetByIDList):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* interpreter/AbstractPC.cpp: Added.
(JSC):
(JSC::AbstractPC::AbstractPC):
* interpreter/AbstractPC.h: Added.
(JSC):
(AbstractPC):
(JSC::AbstractPC::AbstractPC):
(JSC::AbstractPC::hasJITReturnAddress):
(JSC::AbstractPC::jitReturnAddress):
(JSC::AbstractPC::hasInterpreterReturnAddress):
(JSC::AbstractPC::interpreterReturnAddress):
(JSC::AbstractPC::isSet):
(JSC::AbstractPC::operator!):
():
* interpreter/CallFrame.cpp:
(JSC):
(JSC::CallFrame::trueCallFrame):
(JSC::CallFrame::trueCallerFrame):
* interpreter/CallFrame.h:
(JSC::ExecState::abstractReturnPC):
(JSC::ExecState::codeOriginIndexForDFGWithInlining):
(ExecState):
(JSC::ExecState::trueCallFrame):
(JSC::ExecState::trueCallFrameFromVMCode):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::retrieveArgumentsFromVMCode):
(JSC::Interpreter::retrieveCallerFromVMCode):
(JSC::Interpreter::findFunctionCallFrameFromVMCode):
* interpreter/Interpreter.h:
(Interpreter):
():
* jit/JITStubs.cpp:
(JSC):
():
* jit/JITStubs.h:
(JSC):
(JSC::returnAddressIsInCtiTrampoline):
* runtime/JSFunction.cpp:
(JSC::JSFunction::argumentsGetter):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::getOwnPropertyDescriptor):

LayoutTests:

Reviewed by Geoff Garen.

* fast/js/dfg-inline-arguments-use-directly-from-inlined-code-expected.txt: Added.
* fast/js/dfg-inline-arguments-use-directly-from-inlined-code.html: Added.
* fast/js/dfg-inline-arguments-use-from-all-the-places-broken-expected.txt: Added.
* fast/js/dfg-inline-arguments-use-from-all-the-places-broken.html: Added.
* fast/js/dfg-inline-arguments-use-from-all-the-places-expected.txt: Added.
* fast/js/dfg-inline-arguments-use-from-all-the-places.html: Added.
* fast/js/dfg-inline-arguments-use-from-getter-expected.txt: Added.
* fast/js/dfg-inline-arguments-use-from-getter.html: Added.
* fast/js/script-tests/dfg-inline-arguments-use-directly-from-inlined-code.js: Added.
(foo):
(bar):
(argsToStr):
* fast/js/script-tests/dfg-inline-arguments-use-from-all-the-places-broken.js: Added.
(foo):
(fuzz):
(getter):
(bar):
(argsToStr):
* fast/js/script-tests/dfg-inline-arguments-use-from-all-the-places.js: Added.
(foo):
(fuzz):
(getter):
(bar):
(argsToStr):
* fast/js/script-tests/dfg-inline-arguments-use-from-getter.js: Added.
(foo):
(bar):
(argsToStr):

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

12 years agoRemove builder name so http://trac.webkit.org/changeset/106035 actually works.
ojan@chromium.org [Fri, 27 Jan 2012 01:14:06 +0000 (01:14 +0000)]
Remove builder name so trac.webkit.org/changeset/106035 actually works.
https://bugs.webkit.org/show_bug.cgi?id=77164

Reviewed by Dirk Pranke.

http://trac.webkit.org/changeset/106035 depends on builder_name being
falsey by default. There's other code that requires it to be iterable
by default. So, make it be the empty string.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):

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

12 years ago[Chromium]: svg/W3C-SVG-1.1/text-text-03-b.svg is marked as flakey, when it isn't
commit-queue@webkit.org [Fri, 27 Jan 2012 01:08:15 +0000 (01:08 +0000)]
[Chromium]: svg/W3C-SVG-1.1/text-text-03-b.svg is marked as flakey, when it isn't
https://bugs.webkit.org/show_bug.cgi?id=77157

Unreviewed Chromium expectations update to remove a no-longer-flakey test.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-26

* platform/chromium/test_expectations.txt: Removed svg/W3C-SVG-1.1/text-text-03-b.svg

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

12 years agoThe registration of schemes is currently racey as they are not registered from the...
cdn@chromium.org [Fri, 27 Jan 2012 00:54:30 +0000 (00:54 +0000)]
The registration of schemes is currently racey as they are not registered from the main thread.
Getting rid of the assert that ensures that we are registering from the main thread until we can fix this.

Thank you ap@webkit for helping us identify this.

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

Reviewed by Adam Barth.

* platform/SchemeRegistry.cpp:
(WebCore::CORSEnabledSchemes):

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

12 years agoAdd GestureTapDown and GestureDoubleTap gesture types to WebGestureEvent.
commit-queue@webkit.org [Fri, 27 Jan 2012 00:42:49 +0000 (00:42 +0000)]
Add GestureTapDown and GestureDoubleTap gesture types to WebGestureEvent.
https://bugs.webkit.org/show_bug.cgi?id=77140

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-01-26
Reviewed by Darin Fisher.

* public/WebInputEvent.h:
():
* src/WebInputEventConversion.cpp:
(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
* src/WebPopupMenuImpl.cpp:
(WebKit::WebPopupMenuImpl::handleInputEvent):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleInputEvent):

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

12 years agorun-perf-test should include relative file paths in test names
rniwa@webkit.org [Fri, 27 Jan 2012 00:37:27 +0000 (00:37 +0000)]
run-perf-test should include relative file paths in test names
https://bugs.webkit.org/show_bug.cgi?id=77144

Reviewed by Adam Birth.

Include all directory names in the test name separated by "/".
e.g. Bindings/event-target-wrapper.html translates to Bindings/event-target-wrapper

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner):
(PerfTestsRunner._process_parser_test_result):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):

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

12 years agoWe don't need to always repaint overlay scrollbars if they're in layers
andersca@apple.com [Fri, 27 Jan 2012 00:31:29 +0000 (00:31 +0000)]
We don't need to always repaint overlay scrollbars if they're in layers
https://bugs.webkit.org/show_bug.cgi?id=77159

Reviewed by Beth Dakin.

If a scrollable area has overlay scrollbars we'll always invalidate both scrollbars, regardless of
whether both scroll offsets actually change since they're translucent and we want to draw the new page
contents underneath.

However, if the scrollbars are painted into GraphicsLayers they'll be composited by the GPU, and so we don't
need to repaint them unless the corresponding scroll offset actually changes (which is handled in Scrollbar::updateThumb).

* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::setScrollOffsetFromAnimation):

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

12 years agowebkitpy: re-land cleanup of test scaffolding
dpranke@chromium.org [Fri, 27 Jan 2012 00:16:24 +0000 (00:16 +0000)]
webkitpy: re-land cleanup of test scaffolding
https://bugs.webkit.org/show_bug.cgi?id=77153

Reviewed by Eric Seidel.

This is an attempt to reland the change in bug 76973 /
r105935. My earlier attempt to manipulate PYTHONPATH
seems to only work some of the time, for reasons that
elude me. Directly adding Tools/Scripts to sys.path from
inside the test script appears to work (more?) reliably.

Also, it seemed like the files didn't actually get deleted
the last time; I don't know why.

* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(command_line):
(ExecutiveTest):
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
(main):
* Scripts/webkitpy/common/system/fileutils.py: Removed.
* Scripts/webkitpy/test/cat.py: Removed.
* Scripts/webkitpy/test/cat_unittest.py: Removed.
* Scripts/webkitpy/test/echo.py: Removed.
* Scripts/webkitpy/test/echo_unittest.py: Removed.

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

12 years agoIndexedDB: WebCore::IDBKey objects are leaked
jsbell@chromium.org [Fri, 27 Jan 2012 00:07:11 +0000 (00:07 +0000)]
IndexedDB: WebCore::IDBKey objects are leaked
https://bugs.webkit.org/show_bug.cgi?id=77114

Reviewed by Tony Chang.

Fixing memory leaks, no new tests.

* storage/IDBKey.h:
(WebCore::IDBKey::createInvalid):
(WebCore::IDBKey::createNumber):
(WebCore::IDBKey::createString):
(WebCore::IDBKey::createDate):
(WebCore::IDBKey::createArray):

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

12 years agorun-webkit-tests calls "nm" when it doesn't need to
ojan@chromium.org [Fri, 27 Jan 2012 00:03:23 +0000 (00:03 +0000)]
run-webkit-tests calls "nm" when it doesn't need to
https://bugs.webkit.org/show_bug.cgi?id=77143

Reviewed by Dirk Pranke.

If we are not running any test that can be skipped by checking
the DRT feature list or looking at the list of symbols, avoid calling
out to DRT or calling "nm".

This saves ~700ms on my Mac Pro. In cases where you still have to call out
to "nm" it's only a couple ms slower.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.__init__):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.skipped_tests):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort._should_check_for_missing_features):
(WebKitPort):
(WebKitPort._should_check_for_missing_symbols):
(WebKitPort._skipped_tests_for_unsupported_features):
(WebKitPort.skipped_layout_tests):
(WebKitPort.skipped_tests):
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(WebKitPortTest.test_skipped_directories_for_symbols):
(test_skipped_directories_for_features):
(test_skipped_directories_for_features_no_matching_tests_in_test_list):
(test_skipped_layout_tests):

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

12 years agoSource/WebCore: Add a scheme registry for CORS requests. Allow simple CORS requests...
cdn@chromium.org [Thu, 26 Jan 2012 23:50:31 +0000 (23:50 +0000)]
Source/WebCore: Add a scheme registry for CORS requests. Allow simple CORS requests to be made to registered schemes.
https://bugs.webkit.org/show_bug.cgi?id=77041

Reviewed by Alexey Proskuryakov.

* loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
* platform/SchemeRegistry.cpp:
(WebCore::CORSEnabledSchemes):
(WebCore):
(WebCore::SchemeRegistry::registerCORSEnabledScheme):
(WebCore::SchemeRegistry::isCORSEnabledScheme):
* platform/SchemeRegistry.h:
(SchemeRegistry):

Source/WebKit/chromium: Add API to register schemes which can be sent simple CORS requests.
https://bugs.webkit.org/show_bug.cgi?id=77041

Reviewed by Alexey Proskuryakov.

* public/WebSecurityPolicy.h:
(WebSecurityPolicy):
* src/WebSecurityPolicy.cpp:
(WebKit::WebSecurityPolicy::registerCORSEnabledScheme):
(WebKit):

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

12 years agocompositing/shadows/shadow-drawing.html and svg/css/group-with-shadow.svg are failing...
leviw@chromium.org [Thu, 26 Jan 2012 23:48:11 +0000 (23:48 +0000)]
compositing/shadows/shadow-drawing.html and svg/css/group-with-shadow.svg are failing on Chromium Win
https://bugs.webkit.org/show_bug.cgi?id=77151

Unreviewed gardening. Rebaselining expectations for the above tests on Chromium-Windows and re-enabling them.

* platform/chromium-win-vista/compositing/shadows: Added.
* platform/chromium-win-vista/compositing/shadows/shadow-drawing-expected.png: Added.
* platform/chromium-win-vista/svg/css/group-with-shadow-expected.png: Added.
* platform/chromium-win-xp/compositing/shadows: Added.
* platform/chromium-win-xp/compositing/shadows/shadow-drawing-expected.png: Added.
* platform/chromium-win-xp/svg/css: Removed.
* platform/chromium-win/compositing/shadows/shadow-drawing-expected.png:
* platform/chromium-win/svg/css/group-with-shadow-expected.png:
* platform/chromium/test_expectations.txt:

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

12 years agoFile extension for webp files is .webp
noel.gordon@gmail.com [Thu, 26 Jan 2012 23:44:21 +0000 (23:44 +0000)]
File extension for webp files is .webp
https://bugs.webkit.org/show_bug.cgi?id=76982

Reviewed by Adam Barth.

No new tests. No change in behavior.

* platform/image-decoders/webp/WEBPImageDecoder.h:
(WebCore::WEBPImageDecoder::filenameExtension):

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

12 years agoSupport a suffix on ChangeLog filenames based on a configuration file
commit-queue@webkit.org [Thu, 26 Jan 2012 23:29:16 +0000 (23:29 +0000)]
Support a suffix on ChangeLog filenames based on a configuration file
https://bugs.webkit.org/show_bug.cgi?id=76956

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-01-26
Reviewed by Kentaro Hara.

Modify the tools used to generate, edit and resolve ChangeLogs to support
the addition of a suffix to the ChangeLog filename.

This patch makes it easier to support alternate ChangeLog files in branches.

* Scripts/VCSUtils.pm:
(changeLogSuffix):
(changeLogFileName):
* Scripts/commit-log-editor:
* Scripts/prepare-ChangeLog:
(getLatestChangeLogs):
(generateNewChangeLogs):
(generateFileList):
* Scripts/resolve-ChangeLogs:
(findChangeLog):

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

12 years agocompositing/shadows/shadow-drawing.html and svg/css/group-with-shadow.svg are failing...
leviw@chromium.org [Thu, 26 Jan 2012 23:25:39 +0000 (23:25 +0000)]
compositing/shadows/shadow-drawing.html and svg/css/group-with-shadow.svg are failing on Chromium Win
https://bugs.webkit.org/show_bug.cgi?id=77151

Unreviewed gardening. Marking the above 2 tests as flaky on Chromium Windows until
I can root cause the change.

* platform/chromium/test_expectations.txt:

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

12 years ago[chromium] Remove dead and unnecessary code related to LayerChromium::cleanupResources
alokp@chromium.org [Thu, 26 Jan 2012 23:13:44 +0000 (23:13 +0000)]
[chromium] Remove dead and unnecessary code related to LayerChromium::cleanupResources
https://bugs.webkit.org/show_bug.cgi?id=77137

Reviewed by James Robinson.

No new test needed. Only removing dead code.

* platform/graphics/chromium/LayerChromium.cpp:
* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::layerTreeHost):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::setLayerTreeHost):

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

12 years agoMove horizontal rubber-band checks to ScrollElasticityController::handleWheelEvent
andersca@apple.com [Thu, 26 Jan 2012 23:06:01 +0000 (23:06 +0000)]
Move horizontal rubber-band checks to ScrollElasticityController::handleWheelEvent
https://bugs.webkit.org/show_bug.cgi?id=77147

Reviewed by Adam Roben.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
Always call ScrollElasticityController::handleWheelEvent, and only call didBeginScrollGesture and
didEndScrollGesture if the event was actually handled.

(WebCore::ScrollAnimatorMac::shouldRubberBandInDirection):
Implement this.

* platform/mac/ScrollElasticityController.h:
* platform/mac/ScrollElasticityController.mm:
(WebCore::ScrollElasticityController::handleWheelEvent):
Check if we should rubber-band and return false if we shouldn't.

(WebCore::ScrollElasticityController::shouldRubberBandInHorizontalDirection):
Ask the client if we should rubber-band.

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

12 years agoUnreviewed, rolling out r106038.
commit-queue@webkit.org [Thu, 26 Jan 2012 22:58:21 +0000 (22:58 +0000)]
Unreviewed, rolling out r106038.
http://trac.webkit.org/changeset/106038
https://bugs.webkit.org/show_bug.cgi?id=77142

Caused a bunch of skipped tests to not be skipped. (Requested
by ojan on #webkit).

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

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
(TestExpectationParser.parse):
(TestExpectationParser._parse_line):
(TestExpectationParser._collect_matching_tests):
(TestExpectations.__init__):
(TestExpectations._add_skipped_tests):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.test_dirs):
(Port.normalize_test_name):
(Port.update_baseline):
(Port.layout_tests_dir):
(Port.relative_perf_test_filename):
(Port.abspath_for_test):

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

12 years agoFix build when VERBOSE_SPECULATION_FAILURE is enabled in DFG
pvarga@webkit.org [Thu, 26 Jan 2012 22:55:26 +0000 (22:55 +0000)]
Fix build when VERBOSE_SPECULATION_FAILURE is enabled in DFG
https://bugs.webkit.org/show_bug.cgi?id=77104

Reviewed by Filip Pizlo.

* dfg/DFGOperations.cpp:
():

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

12 years ago[chromium] Remove setLayerTreeHost nonsense on lost context
jamesr@google.com [Thu, 26 Jan 2012 22:46:53 +0000 (22:46 +0000)]
[chromium] Remove setLayerTreeHost nonsense on lost context
https://bugs.webkit.org/show_bug.cgi?id=76675

Reviewed by Kenneth Russell.

This code isn't needed any more. On a lost context event, we drop all TextureManager-managed textures through
the proxy and no layer types need special lost context handling.

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::didRecreateGraphicsContext):

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

12 years agoLayout Test fast/workers/storage/interrupt-database.html is a flaky crasher on Debug...
leviw@chromium.org [Thu, 26 Jan 2012 22:33:58 +0000 (22:33 +0000)]
Layout Test fast/workers/storage/interrupt-database.html is a flaky crasher on Debug Chromium Bots
https://bugs.webkit.org/show_bug.cgi?id=77136

Unreviewed gardening. Marking fast/workers/storage/interrupt-database.html as a flaky
crasher on debug Chromium bots.

* platform/chromium/test_expectations.txt:

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

12 years agoSimplify checking of whether we should rubberband horizontally
andersca@apple.com [Thu, 26 Jan 2012 22:33:49 +0000 (22:33 +0000)]
Simplify checking of whether we should rubberband horizontally
https://bugs.webkit.org/show_bug.cgi?id=77141

Reviewed by Adam Roben.

Have a single check for horizontal rubber-banding in both directions. This is in preparation
for moving this code into ScrollElasticityController.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::shouldRubberBandInHorizontalDirection):
(WebCore::ScrollAnimatorMac::handleWheelEvent):

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

12 years agoFix include path in gyp file for V8InternalSettings.h
commit-queue@webkit.org [Thu, 26 Jan 2012 22:26:42 +0000 (22:26 +0000)]
Fix include path in gyp file for V8InternalSettings.h
https://bugs.webkit.org/show_bug.cgi?id=77128

Patch by Scott Graham <scottmg@chomium.org> on 2012-01-26
Reviewed by Kent Tamura.

* WebCore.gyp/WebCore.gyp:

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

12 years ago[chromium] Add enter/exitRunLoop to WebThread API
jamesr@google.com [Thu, 26 Jan 2012 22:26:23 +0000 (22:26 +0000)]
[chromium] Add enter/exitRunLoop to WebThread API
https://bugs.webkit.org/show_bug.cgi?id=76012

Reviewed by Darin Fisher.

This adds those two APIs to WebKit::WebThread and converts CCLayerTreeHostTest over to use these APIs instead
of webkit_support. The immediate motivation is that we can't use webkit_support in webkit_unit_tests in the
component build.

* WebKit.gyp:
* public/platform/WebThread.h:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::onEndTest):
(WTF::CCLayerTreeHostTest::TimeoutTask::run):
(WTF::CCLayerTreeHostTest::BeginTask::BeginTask):
(WTF::CCLayerTreeHostTest::BeginTask::~BeginTask):
(WTF::CCLayerTreeHostTest::BeginTask::run):
(WTF::CCLayerTreeHostTest::runTest):

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

12 years agoWe shouldn't synchronously update styles on all documents after running script
jamesr@google.com [Thu, 26 Jan 2012 22:24:10 +0000 (22:24 +0000)]
We shouldn't synchronously update styles on all documents after running script
https://bugs.webkit.org/show_bug.cgi?id=46761

Reviewed by Simon Fraser.

Currently we call Document::updateStyleForAllDocuments() after invoking any event or timeout handler. This is
slow since it iterates over the entire document tree and defeats our recalcStyle timer batching. It is
unnecessary as any code that depends on styles or the render tree being up to date must call
updateStyleIfNeeded() on the document it is accessing.

The first reference I can find to this code is in r798 in the file WebCore/khtml/xml/domnode_impl.cpp. It's been
cargo culted forward ever since.

* bindings/ScriptControllerBase.cpp:
(WebCore::ScriptController::executeScript):
* bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::ScriptController):
(WebCore::ScriptController::executeScriptInWorld):
* bindings/js/ScriptController.h:
* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::ScriptController):
* bindings/v8/ScriptController.h:
* dom/ScriptElement.cpp:
(WebCore::ScriptElement::executeScript):
* inspector/InspectorClient.cpp:
(WebCore::InspectorClient::doDispatchMessageOnFrontendPage):

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

12 years agoUnreviewed, rolling out r106027.
commit-queue@webkit.org [Thu, 26 Jan 2012 22:10:59 +0000 (22:10 +0000)]
Unreviewed, rolling out r106027.
http://trac.webkit.org/changeset/106027
https://bugs.webkit.org/show_bug.cgi?id=77139

"It messed up Qt5 buildbots." (Requested by jeez_ on #webkit).

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

* platform/qt-4.8/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

12 years agoGet rid of ScrollElasticityController::beginScrollGesture()
andersca@apple.com [Thu, 26 Jan 2012 22:10:53 +0000 (22:10 +0000)]
Get rid of ScrollElasticityController::beginScrollGesture()
https://bugs.webkit.org/show_bug.cgi?id=77138

Reviewed by Adam Roben.

ScrollElasticityController::handleWheelEvent now checks if the wheel event phase is
PlatformWheelEventPhaseBegan and sets up the gesture state if it is.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
* platform/mac/ScrollElasticityController.h:
(ScrollElasticityController):
* platform/mac/ScrollElasticityController.mm:
(WebCore::ScrollElasticityController::handleWheelEvent):

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

12 years agoParsing test_expecations.txt + Skipped lists takes too long
ojan@chromium.org [Thu, 26 Jan 2012 21:46:36 +0000 (21:46 +0000)]
Parsing test_expecations.txt + Skipped lists takes too long
https://bugs.webkit.org/show_bug.cgi?id=77059

Reviewed by Dirk Pranke.

This saves ~100ms on the Apple Mac port.
-memoize a bunch of path methods.
-Avoid doing multiple disk accesses per line.
-Parse the skipped list directly instead of turning it into a test_expecations.txt
formatting string and parsing that.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
(TestExpectationParser.parse_skipped_tests):
(TestExpectationParser._parse_line):
(TestExpectationParser._collect_matching_tests):
(TestExpectations.__init__):
(TestExpectations._add_skipped_tests):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port):
(Port.test_isfile):
(Port.normalize_test_name):
(Port.layout_tests_dir):
(Port.abspath_for_test):

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

12 years agoGet rid of ScrollElasticityController::endScrollGesture()
andersca@apple.com [Thu, 26 Jan 2012 21:38:19 +0000 (21:38 +0000)]
Get rid of ScrollElasticityController::endScrollGesture()
https://bugs.webkit.org/show_bug.cgi?id=77134

Reviewed by Adam Roben.

Just make ScrollElasticityController::handleWheelEvent call snapRubberBand if the wheel
event phase is PlatformWheelEventPhaseEnded.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
* platform/mac/ScrollElasticityController.h:
(ScrollElasticityController):
* platform/mac/ScrollElasticityController.mm:
(WebCore::ScrollElasticityController::handleWheelEvent):

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

12 years agoCrash in SVGSVGElement::currentViewBoxRect.
inferno@chromium.org [Thu, 26 Jan 2012 21:35:44 +0000 (21:35 +0000)]
Crash in SVGSVGElement::currentViewBoxRect.
https://bugs.webkit.org/show_bug.cgi?id=77121

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Symbols shouldn't be rendered. Revert the ASSERT
from r105513 into a hard check.

Test: svg/custom/symbol-viewport-element-crash.svg

* svg/SVGLengthContext.cpp:
(WebCore::SVGLengthContext::determineViewport):

LayoutTests:

* svg/custom/symbol-viewport-element-crash-expected.txt: Added.
* svg/custom/symbol-viewport-element-crash.svg: Added.

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

12 years agoOnly store the SVN revision in the summarized results if we're on a builder
ojan@chromium.org [Thu, 26 Jan 2012 21:26:06 +0000 (21:26 +0000)]
Only store the SVN revision in the summarized results if we're on a builder
https://bugs.webkit.org/show_bug.cgi?id=76976

Reviewed by Dirk Pranke.

This shaves another ~130ms off the single test run-webkit-tests runtime.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(summarize_results):
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ResultSummaryTest.get_result):
(ResultSummaryTest):
(ResultSummaryTest.get_result_summary):
(ResultSummaryTest.get_unexpected_results):
(ResultSummaryTest.test_no_svn_revision):
(ResultSummaryTest.test_svn_revision):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.use_trac_links_in_results_html):

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

12 years agoRoll chromium_rev to 119248
commit-queue@webkit.org [Thu, 26 Jan 2012 21:17:34 +0000 (21:17 +0000)]
Roll chromium_rev to 119248
https://bugs.webkit.org/show_bug.cgi?id=77124

Patch by John Bates <jbates@google.com> on 2012-01-26
Reviewed by James Robinson.

* DEPS:

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

12 years agoInline beginScrollGesture/endScrollGesture in handleWheelEvent
andersca@apple.com [Thu, 26 Jan 2012 21:08:45 +0000 (21:08 +0000)]
Inline beginScrollGesture/endScrollGesture in handleWheelEvent
https://bugs.webkit.org/show_bug.cgi?id=77133

Reviewed by Andreas Kling.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):

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

12 years agoNo need to set m_haveScrolledSincePageLoad in beginScrollGesture
andersca@apple.com [Thu, 26 Jan 2012 20:56:17 +0000 (20:56 +0000)]
No need to set m_haveScrolledSincePageLoad in beginScrollGesture
https://bugs.webkit.org/show_bug.cgi?id=77132

Reviewed by Andreas Kling.

m_haveScrolledSincePageLoad is already set to true in handleWheelEvent so we don't need
to set it to true again.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::beginScrollGesture):

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

12 years agoSimplify checking for whether we should rubberband or not when at the edge
andersca@apple.com [Thu, 26 Jan 2012 20:46:15 +0000 (20:46 +0000)]
Simplify checking for whether we should rubberband or not when at the edge
https://bugs.webkit.org/show_bug.cgi?id=77131

Reviewed by Beth Dakin.

We only need to check once if we're pinned at either edge whether we should rubber-band
or not. Do this when the wheel event phase is PlatformWheelEventPhaseBegan. This lets us
remove a bunch of code that would keep track of the current horizontal scroll direction.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::handleWheelEvent):
(WebCore::ScrollAnimatorMac::beginScrollGesture):

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

12 years ago[JSC] Inspector instrumentation for JavaScript calls.
efidler@rim.com [Thu, 26 Jan 2012 20:39:06 +0000 (20:39 +0000)]
[JSC] Inspector instrumentation for JavaScript calls.
https://bugs.webkit.org/show_bug.cgi?id=40119

Reviewed by Geoffrey Garen.

Source/WebCore:

Covered by existing Chromium inspector tests

* bindings/js/JSCallbackData.cpp:
(WebCore::JSCallbackData::invokeCallback):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::handleEvent):
* bindings/js/JSMainThreadExecState.h:
(WebCore::JSMainThreadExecState::instrumentedCall):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willCallFunctionImpl):

LayoutTests:

* inspector/timeline/timeline-injected-script-eval-expected.txt: expectation is now valid cross-platform
* inspector/timeline/timeline-receive-response-event-expected.txt: ditto
* platform/chromium/inspector/timeline/timeline-injected-script-eval-expected.txt: Removed.
* platform/chromium/inspector/timeline/timeline-receive-response-event-expected.txt: Removed.

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

12 years agoSignal to skia to force A8 text from LCD output, but only when we have to disable...
vangelis@chromium.org [Thu, 26 Jan 2012 20:30:40 +0000 (20:30 +0000)]
Signal to skia to force A8 text from LCD output, but only when we have to disable LCD because we're in a layer
https://bugs.webkit.org/show_bug.cgi?id=76547

Patch by Mike Reed <reed@google.com> on 2012-01-26
Reviewed by Stephen White.

Existing tests should confirm nothing is broken. Antialiased text
is disabled in layouttests, so they should be unaffected by the
difference in antialiasing quality.

* platform/graphics/skia/SkiaFontWin.cpp:
(WebCore::setupPaintForFont):

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

12 years ago[Qt][WK2] fast/loader tests failed after r94178
commit-queue@webkit.org [Thu, 26 Jan 2012 20:19:05 +0000 (20:19 +0000)]
[Qt][WK2] fast/loader tests failed after r94178
https://bugs.webkit.org/show_bug.cgi?id=67388

Patch by Luciano Wolf <luciano.wolf@openbossa.org> on 2012-01-26
Reviewed by Simon Hausmann.

Tools:

Applying the same fix used for Qt-WebKit1 from bug #67254 -
[Qt][DRT] Normalize file:///tmp/LayoutTests in LayoutTestController::pathToLocalResource()
https://bugs.webkit.org/show_bug.cgi?id=67254
Translate file:///tmp/LayoutTests/* urls into the repository LayoutTests directory, which is
derived from the running location of DumpRenderTree binary.

* WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
(WTR::LayoutTestController::pathToLocalResource):

LayoutTests:

Removing the following tests from skipped list:
fast/loader/local-CSS-from-local.html
fast/loader/local-JavaScript-from-local.html
fast/loader/local-image-from-local.html

* platform/qt-wk2/Skipped:

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

12 years agoUpdating skipped tests after r105997.
jesus@webkit.org [Thu, 26 Jan 2012 20:15:50 +0000 (20:15 +0000)]
Updating skipped tests after r105997.

Unreviewed gardening.

* platform/qt-4.8/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

12 years agoUse PlatformWheelEvent::phase() to determine if a scroll gesture begins or ends
andersca@apple.com [Thu, 26 Jan 2012 20:13:39 +0000 (20:13 +0000)]
Use PlatformWheelEvent::phase() to determine if a scroll gesture begins or ends
https://bugs.webkit.org/show_bug.cgi?id=77127

Reviewed by Beth Dakin.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
Remove handleGestureEvent.

* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::handleWheelEvent):
Look at the event phase to determine when to call didBeginGesture and didEndGesture.

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

12 years agoUsing strncmp() for comparing scheme and port numbers is inefficient
benjamin@webkit.org [Thu, 26 Jan 2012 20:09:40 +0000 (20:09 +0000)]
Using strncmp() for comparing scheme and port numbers is inefficient
https://bugs.webkit.org/show_bug.cgi?id=75821

Reviewed by Darin Adler.

Replace the equal() function comparing 2 arbitrary strings by a template
comparing the string to an array, character by character.

This is only used for small strings: the schemes and the ports.

* platform/KURL.cpp:
(WebCore::equal):
(WebCore::isDefaultPortForScheme):
(WebCore::isNonFileHierarchicalScheme):
(WebCore::isCanonicalHostnameLowercaseForScheme):

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

12 years ago[chromium] Unreviewed, rebaseline after http://trac.webkit.org/changeset/105613.
knorton@google.com [Thu, 26 Jan 2012 20:02:54 +0000 (20:02 +0000)]
[chromium] Unreviewed, rebaseline after trac.webkit.org/changeset/105613.

* platform/chromium-linux/svg/custom/relative-sized-image-expected.png: Added.
* platform/chromium-linux/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium-win/svg/custom/relative-sized-image-expected.png: Added.
* platform/chromium-win/svg/custom/relative-sized-image-expected.txt: Added.
* platform/chromium-win/svg/repaint/image-with-clip-path-expected.png: Added.
* platform/chromium/test_expectations.txt:

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

12 years ago[Qt][WK2] REGRESSION(102228): lot of test failures after enabled page cache
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 19:56:43 +0000 (19:56 +0000)]
[Qt][WK2] REGRESSION(102228): lot of test failures after enabled page cache
https://bugs.webkit.org/show_bug.cgi?id=73999

Reviewed by Kenneth Rohde Christiansen.

Those tests were failing because PageCache was enabled for WTR and they depend on
it being disable: they rely on onload being called after navigating back to a page.

WTR should run without PageCache enabled. This was fixed in r106005, so we can
unskip these now.

* platform/qt-wk2/Skipped:

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

12 years ago[Qt][WK2] Add the componentComplete method to WebView
abecsi@webkit.org [Thu, 26 Jan 2012 19:47:53 +0000 (19:47 +0000)]
[Qt][WK2] Add the componentComplete method to WebView
https://bugs.webkit.org/show_bug.cgi?id=77111

Reviewed by Kenneth Rohde Christiansen.

Move the touch/desktop initialization to componentComplete.
Also return valid default values in the viewport info functions
if the interaction engine is not yet initialized because the
viewport info component could finish initialization earlier
than the WebView, which results in QML warnings during MiniBrowser
startup.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebView::geometryChanged):
(QQuickWebView::componentComplete):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):

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

12 years agoWebWheelEvent::Phase and PlatformWheelEvent::Phase declarations should match AppKit
andersca@apple.com [Thu, 26 Jan 2012 19:28:38 +0000 (19:28 +0000)]
WebWheelEvent::Phase and PlatformWheelEvent::Phase declarations should match AppKit
https://bugs.webkit.org/show_bug.cgi?id=77123

Reviewed by Beth Dakin.

Source/WebCore:

* platform/PlatformWheelEvent.h:
():
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::phaseForEvent):

Source/WebKit2:

* Shared/WebEvent.h:
():
* Shared/mac/WebEventFactory.mm:
(WebKit::phaseForEvent):

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

12 years agoString::latin1() should take advantage of 8 bit strings
msaboff@apple.com [Thu, 26 Jan 2012 19:26:15 +0000 (19:26 +0000)]
String::latin1() should take advantage of 8 bit strings
https://bugs.webkit.org/show_bug.cgi?id=76646

Reviewed by Geoffrey Garen.

* wtf/text/WTFString.cpp:
(WTF::String::latin1): For 8 bit strings, use existing buffer
without conversion.

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

12 years agoDromaeo tests usage of StringImpl find routines cause 8->16 bit conversions
msaboff@apple.com [Thu, 26 Jan 2012 19:23:50 +0000 (19:23 +0000)]
Dromaeo tests usage of StringImpl find routines cause 8->16 bit conversions
https://bugs.webkit.org/show_bug.cgi?id=76645

Reviewed by Geoffrey Garen.

* wtf/text/StringImpl.cpp:
(WTF::equalIgnoringCase): New LChar version.
(WTF::findInner): New helper function.
(WTF::StringImpl::find): Added 8 bit path.
(WTF::reverseFindInner): New helper funciton.
(WTF::StringImpl::reverseFind): Added 8 bit path.
(WTF::StringImpl::reverseFindIgnoringCase): Added 8 bit path.
* wtf/text/StringImpl.h:
(WTF):

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

12 years agoRevert code changes from r105800
dcheng@chromium.org [Thu, 26 Jan 2012 19:23:42 +0000 (19:23 +0000)]
Revert code changes from r105800
https://bugs.webkit.org/show_bug.cgi?id=77071

The strings are already lowercased in EventHandler.cpp:findDropZone() so there's
no need to call lower() again.

Reviewed by Tony Chang.

Covered by existing tests.

* dom/Clipboard.cpp:
(WebCore::Clipboard::hasDropZoneType):

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

12 years ago[Chromium]: rebaseline after r105878
commit-queue@webkit.org [Thu, 26 Jan 2012 19:20:27 +0000 (19:20 +0000)]
[Chromium]: rebaseline after r105878
https://bugs.webkit.org/show_bug.cgi?id=77017

Unreviewed Chromium expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-26

* platform/chromium/svg/stroke/zero-length-path-linecap-rendering-expected.txt: Added.
* platform/chromium/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt: Added.
* platform/chromium/test_expectations.txt:

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

12 years agoREGRESSION (r91125): Polyline tool in google docs is broken
commit-queue@webkit.org [Thu, 26 Jan 2012 19:18:18 +0000 (19:18 +0000)]
REGRESSION (r91125): Polyline tool in google docs is broken
https://bugs.webkit.org/show_bug.cgi?id=65796

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-26
Reviewed by Nikolas Zimmermann.

It turns out that the CG problem is a design decision. The bounding code
returns CGRectNull for cases where a bound is ill-defined, rather than the
empty bound as expected.

I'm also removing the workaround for isEmpty to get correct zero length paths.
It is no longer necessary.

Tested by existing layout tests.

* platform/graphics/cg/PathCG.cpp: Removed path empty and path bound testing classes.
(WebCore::Path::boundingRect): Added check for CGRectNull
(WebCore::Path::fastBoundingRect): Added check for CGRectNull
(WebCore::Path::strokeBoundingRect): Added check for CGRectNull
(WebCore::Path::isEmpty): Reverted to former behavior, just using CGPathIsEmpty.
(WebCore::Path::hasCurrentPoint): Reverted to former behavior, using isEmpty.
(WebCore::Path::transform): Reverted to former behavior, using isEmpty.

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

12 years agoRefactor application of additional style attributes for table elements.
kling@webkit.org [Thu, 26 Jan 2012 19:02:27 +0000 (19:02 +0000)]
Refactor application of additional style attributes for table elements.
<http://webkit.org/b/77095>

Reviewed by Darin Adler.

The primary purpose of this change is to reduce usage of CSSMappedAttributeDeclaration.
Instead of using the mapped attribute decl table for additional table style, just use
regular CSSMutableStyleDeclarations. We cache them all globally, except for the style
that's shared between a table's cells. That one is cached per-table since it depends
on the table's border and padding.

* dom/CSSMappedAttributeDeclaration.cpp:
(WebCore::CSSMappedAttributeDeclaration::~CSSMappedAttributeDeclaration):
* dom/MappedAttributeEntry.h:

    Remove the concept of persistent CSSMappedAttributeDeclarations. The hunk in
    ~CSSMappedAttributeDeclaration was wildly wrong since it would leave stale pointers
    in the decl table, but unreachable since we always leaked one ref to those decls.

* dom/StyledElement.h:
(WebCore::StyledElement::additionalAttributeStyle):
* html/HTMLTableCellElement.cpp:
(WebCore::HTMLTableCellElement::additionalAttributeStyle):
* html/HTMLTableCellElement.h:
(HTMLTableCellElement):
* html/HTMLTableColElement.cpp:
(WebCore::HTMLTableColElement::additionalAttributeStyle):
* html/HTMLTableColElement.h:
(HTMLTableColElement):
* html/HTMLTableElement.cpp:
(WebCore::HTMLTableElement::parseMappedAttribute):
(WebCore::leakBorderStyle):
(WebCore::HTMLTableElement::additionalAttributeStyle):
(WebCore::HTMLTableElement::createSharedCellStyle):
(WebCore::HTMLTableElement::additionalCellStyle):
(WebCore::leakGroupBorderStyle):
(WebCore::HTMLTableElement::additionalGroupStyle):
* html/HTMLTableElement.h:
(HTMLTableElement):
* html/HTMLTableSectionElement.cpp:
(WebCore::HTMLTableSectionElement::additionalAttributeStyle):
* html/HTMLTableSectionElement.h:
(HTMLTableSectionElement):

    Instead of collecting additional style decls into a vector, switch over to a
    "PassRefPtr<CSSMutableStyleDeclaration> additionalAttributeStyle()".
    All style declarations that can be reused for all elements are cached at the return
    sites, leaving only the shared table cell style which we cache on HTMLTableElement.
    Also removed the canHaveAdditionalAttributeStyleDecls() virtual since the default
    additionalAttributeStyle() will just return 0.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::matchAllRules):

    Updated for the new additional style conventions.

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

12 years agoASSERT(!m_overlay) reached in TapHighlightController.cpp:73
abecsi@webkit.org [Thu, 26 Jan 2012 18:46:55 +0000 (18:46 +0000)]
ASSERT(!m_overlay) reached in TapHighlightController.cpp:73
https://bugs.webkit.org/show_bug.cgi?id=77117

Reviewed by Tor Arne Vestbø.

The PageOverlay does only get uninstalled after the fade-out animation finishes,
so do not assert on !m_overlay after the uninstallPageOverlay call.

* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::hideHighlight):

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

12 years agoWeb Inspector: Scripts panel editor container should be based on UISourceCode objects...
vsevik@chromium.org [Thu, 26 Jan 2012 18:45:10 +0000 (18:45 +0000)]
Web Inspector: Scripts panel editor container should be based on UISourceCode objects, not SourceFrames.
https://bugs.webkit.org/show_bug.cgi?id=77098

Reviewed by Pavel Feldman.

* inspector/front-end/ScriptsNavigator.js:
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
(WebInspector.ScriptsPanel.prototype.get visibleView):
(WebInspector.ScriptsPanel.prototype.viewForFile):
(WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced):
(WebInspector.EditorContainer):
(WebInspector.EditorContainer.prototype.get visibleView):
(WebInspector.EditorContainer.prototype.showFile):
(WebInspector.EditorContainer.prototype.setFileIsDirty):
(WebInspector.EditorContainer.prototype.replaceFiles):
(WebInspector.EditorContainer.prototype.reset):
(WebInspector.EditorContainerDelegate):
(WebInspector.EditorContainerDelegate.prototype.viewForFile):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
(WebInspector.ScriptsPanel.SingleFileEditorContainer):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get visibleView):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showFile):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setFileIsDirty):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceFiles):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
* inspector/front-end/TabbedEditorContainer.js:
(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype.get visibleView):
(WebInspector.TabbedEditorContainer.prototype._titleForFile):
(WebInspector.TabbedEditorContainer.prototype._tooltipForFile):
(WebInspector.TabbedEditorContainer.prototype._appendFileTab):
(WebInspector.TabbedEditorContainer.prototype._tabClosed):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):
(WebInspector.TabbedEditorContainer.prototype.replaceFiles.get if):
(WebInspector.TabbedEditorContainer.prototype.replaceFiles):
(WebInspector.TabbedEditorContainer.prototype.setFileIsDirty.get if):
(WebInspector.TabbedEditorContainer.prototype.setFileIsDirty):
(WebInspector.TabbedEditorContainer.prototype.reset):

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

12 years agoWebPreferencesStore: use DEFINE_STATIC_LOCAL for overrides HashMap
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 17:54:08 +0000 (17:54 +0000)]
WebPreferencesStore: use DEFINE_STATIC_LOCAL for overrides HashMap
https://bugs.webkit.org/show_bug.cgi?id=77109

Reviewed by Andreas Kling.

Fix build for Clang.

* Shared/WebPreferencesStore.cpp:
(WebKit):
(WebKit::boolTestRunnerOverridesMap):
(WebKit::WebPreferencesStore::overrideBoolValueForKey):
(WebKit::WebPreferencesStore::removeTestRunnerOverrides):
(WebKit::WebPreferencesStore::getBoolValueForKey):

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

12 years agoLayout Test accessibility/loading-iframe-sends-notification.html occasionally exceeds...
leviw@chromium.org [Thu, 26 Jan 2012 17:52:50 +0000 (17:52 +0000)]
Layout Test accessibility/loading-iframe-sends-notification.html occasionally exceeds the Chromium Windows callstack
https://bugs.webkit.org/show_bug.cgi?id=77110

Unreviewed gardening. Marking accessibility/loading-iframe-sends-notification.html as flaky on the Chromium
Windows Debug bot.

* platform/chromium/test_expectations.txt:

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

12 years agoAdding platform expectations after r105978.
leviw@chromium.org [Thu, 26 Jan 2012 17:42:49 +0000 (17:42 +0000)]
Adding platform expectations after r105978.

Unreviewed gardening.

* platform/chromium-linux/svg/wicd/sizing-flakiness-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/wicd/sizing-flakiness-expected.png: Added.
* platform/chromium-win/svg/wicd/sizing-flakiness-expected.png: Added.

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

12 years agoImplement overridePreference for boolean preferences in WebKitTestRunner
caio.oliveira@openbossa.org [Thu, 26 Jan 2012 17:10:28 +0000 (17:10 +0000)]
Implement overridePreference for boolean preferences in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=77033

Reviewed by Alexey Proskuryakov.

Source/WebKit2:

Implement a way to WebKitTestRunner override preferences for the pages
loaded. Follows the same approach taken by
overrideXSSAuditorEnabledForTestRunner() from r66551, but generalizing to many
preferences.

Preferences are stored in the UI process using WebPreferencesStore, and when
there's a change, this data is sent to Web process, triggering
WebPage::preferencesDidChange(), which take a WebPreferencesStore and apply it's
data to the WebCore::Settings object.

The overridePreference() is executed on the Web process, and set the preferences
without communicating to the UI process. The overriden preferences are stored in
a static map and WebPreferencesStore query this map before returning the values
of each preference. This static map is used only on the Web process.

To clear the overrides we need to clear the map. Since WTR only sets preferences
when resetting the page, we hook the clearing at WebPage::preferencesDidChange().
A WKPreferences private function was exposed to WTR force the update, in case
there's no effective change at UI process (all the properties remains the same).

This clearing could be improved by creating a proper message instead of hooking
at WebPage::preferencesDidChange().

* Shared/WebPreferencesStore.cpp:
(WebKit::WebPreferencesStore::decode):
(WebKit::WebPreferencesStore::overrideBoolValueForKey):
(WebKit::WebPreferencesStore::removeTestRunnerOverrides):
(WebKit::WebPreferencesStore::getBoolValueForKey):
* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesResetTestRunnerOverrides):
* UIProcess/API/C/WKPreferencesPrivate.h:
* UIProcess/WebPreferences.h:
(WebKit::WebPreferences::forceUpdate):
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleOverrideBoolPreferenceForTestRunner):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
(WebKit::InjectedBundle::overrideXSSAuditorEnabledForTestRunner):
* WebProcess/InjectedBundle/InjectedBundle.h:

Tools:

For now overridePreference supports boolean values.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setXSSAuditorEnabled):
(WTR::LayoutTestController::overridePreference):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues): Reset the overrides
explicitly and properly disable the use of PageCache when resetting the
state. Tests that use PageCache can now enable it via overridePreference.

LayoutTests:

* platform/wk2/Skipped:

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

12 years ago[Qt] Support opening multiple URL's from the command line in the Qt MiniBrowser
commit-queue@webkit.org [Thu, 26 Jan 2012 16:07:53 +0000 (16:07 +0000)]
[Qt] Support opening multiple URL's from the command line in the Qt MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=77100

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-26
Reviewed by Simon Hausmann.

This patch makes the MiniBrowser read multiple URL's from the command
line such that there will be one browser window opened for each URL.

* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::handleUserOptions):

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

12 years ago[Qt] The Qt MiniBrowser crashes when given multiple URL's
commit-queue@webkit.org [Thu, 26 Jan 2012 15:28:29 +0000 (15:28 +0000)]
[Qt] The Qt MiniBrowser crashes when given multiple URL's
https://bugs.webkit.org/show_bug.cgi?id=77009

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-26
Reviewed by Simon Hausmann.

This patch fixes a crash in BrowserWindow::newWindow() where a
BrowserWindow-object is constructed with a 0 pointer as the
WindowOptions parameter which leads to a crash.

* MiniBrowser/qt/BrowserWindow.cpp:
(BrowserWindow::BrowserWindow):
(BrowserWindow::newWindow):
* MiniBrowser/qt/BrowserWindow.h:

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

12 years ago[Qt][WK2] Still failing tests after moving to ICU
kbalazs@webkit.org [Thu, 26 Jan 2012 15:20:29 +0000 (15:20 +0000)]
[Qt][WK2] Still failing tests after moving to ICU
https://bugs.webkit.org/show_bug.cgi?id=77102

Unreviewed gardening.

* platform/qt-wk2/Skipped: Skip failing tests for now.

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

12 years agoSVG + <object> tests are flakey
zimmermann@webkit.org [Thu, 26 Jan 2012 15:04:55 +0000 (15:04 +0000)]
SVG + <object> tests are flakey
https://bugs.webkit.org/show_bug.cgi?id=77099

Reviewed by Andreas Kling.

Source/WebCore:

Bug 76447 changed the way RenderSVGRoot figures out its size. Previously RenderSVGRoot directly called out to the
ownerRenderer (RenderEmbeddedObject) to compute its replaced size when embedded through eg. <object> element,
which was quite hacky. It now relies on the ownerRenderers availableLogicalWidth/Height to be correctly set,
which requires that the ownerRenderer is always laid out before the RenderSVGRoot and not the other way round.

This is the source of current flakiness bugs.

In trunk FrameView contains several special hacks, to layout the ownerRenderers view, after the RenderSVGRoots view
finished layout. This worked without flakiness as RenderSVGRoot used to directly call computeReplacedLogicalWidth/Height
on the ownerRenderer, which is now gone. Fortunately we can keep the new design, and can remove all hacks out of
RenderSVGRoot/FrameView, if we can guarantee that the ownerRenderer FrameView is laid out before the RenderSVGRoot FrameView.

This is a much less error-prone approach as the previous one. This lets us run nrwt --tolerance 0 -p svg -g again,
without 100% reproducable failing svg/wicd tests. (There's still one unrelated error, before guard malloc mode passes fully).

Test: svg/wicd/sizing-flakiness.html (Adjusted version of the rightsizing test, made to fail with trunk w/o this patch.)

* page/FrameView.cpp: Remove m_inLayoutParentView.
(WebCore::FrameView::FrameView): Remove no longer needed m_inLayoutParentView.
(WebCore::FrameView::forceLayoutParentViewIfNeeded): Simplify, no need to call updateWidgetPositions anymore, nor to clear/query flags in RenderSVGRoot.
(WebCore::FrameView::layout): Call forceLayoutParentViewIfNeeded() before laying out the embedded document, to guarantee the correct order.
* page/FrameView.h:
(FrameView): Remove m_inLayoutParentView.
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument.
(WebCore::resolveLengthAttributeForSVG): Remove outcommented code, that went in by accident.
(WebCore::RenderSVGRoot::layout): Remove m_needsSizeNegotiationWithHostDocument handling which is now incorrect and no longer needed.
* rendering/svg/RenderSVGRoot.h:
(RenderSVGRoot): Remove m_needsSizeNegotiationWithHostDocument + accessors.

LayoutTests:

Introduce a testcase that fails reproducibly w/o needed guard malloc, if we ever regress <object> sizing again.

* platform/mac/svg/wicd/sizing-flakiness-expected.png:
* platform/mac/svg/wicd/sizing-flakiness-expected.txt:
* svg/wicd/sizing-flakiness.html: Adjusted version of the rightsizing test, made to fail with trunk w/o this patch.

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

12 years ago[GTK][WK2] Primary clipboard should be updated with the current selection in X11...
carlosgc@webkit.org [Thu, 26 Jan 2012 15:03:50 +0000 (15:03 +0000)]
[GTK][WK2] Primary clipboard should be updated with the current selection in X11 platforms
https://bugs.webkit.org/show_bug.cgi?id=77097

Reviewed by Martin Robinson.

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::respondToChangedSelection): Call
setSelectionPrimaryClipboardIfNeeded() to update primary clipboard
in X11 platforms.
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::collapseSelection): Callback called when clearing
clipboard contents.
(WebKit::WebEditorClient::setSelectionPrimaryClipboardIfNeeded):
Updaye primary clipboard with the current selection.

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

12 years agoMake elements that don't have attributes smaller.
kling@webkit.org [Thu, 26 Jan 2012 14:56:34 +0000 (14:56 +0000)]
Make elements that don't have attributes smaller.
<http://webkit.org/b/76876>

Reviewed by Antti Koivisto.

Move the inline style declaration from StyledElement to NamedNodeMap, since having
an inline style declaration also implies having a style attribute on the element.
This saves one CPU word per element that has no attributes.

This reduces memory consumption by 412 kB (on 64-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>.

* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::ensureInlineStyleDecl):
(WebCore::NamedNodeMap::destroyInlineStyleDecl):
(WebCore::NamedNodeMap::createInlineStyleDecl):
* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::inlineStyleDecl):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
(WebCore::StyledElement::addSubresourceAttributeURLs):
* dom/StyledElement.h:
(WebCore::StyledElement::inlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
(WebCore::StyledElement::destroyInlineStyleDecl):

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

12 years agoAnother unreviewed rebaseline.
antonm@chromium.org [Thu, 26 Jan 2012 14:14:40 +0000 (14:14 +0000)]
Another unreviewed rebaseline.

* platform/chromium-mac-snowleopard/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.

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

12 years ago[Qt] Use ICU if available
commit-queue@webkit.org [Thu, 26 Jan 2012 14:07:36 +0000 (14:07 +0000)]
[Qt] Use ICU if available
https://bugs.webkit.org/show_bug.cgi?id=76821

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-01-26
Reviewed by Simon Hausmann.

Source/WebCore:

Adding correct sources to a Qt 5 based build.

No new tests, it's just a build dependency change.

* Target.pri:

Source/WTF:

Adding libicu dependencies for a Qt5 based build.

* WTF.pri:

Tools:

Adding unicode defines for a Qt 5 based build.

* qmake/mkspecs/features/features.prf:

LayoutTests:

Unskipping ICU related tests for Qt 5 and skipping for
Qt 4.

* platform/qt-4.8/Skipped:
* platform/qt-arm/Skipped:
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

12 years ago[EFL] Added missing NETSCAPE_PLUGIN_API macro.
commit-queue@webkit.org [Thu, 26 Jan 2012 13:53:13 +0000 (13:53 +0000)]
[EFL] Added missing NETSCAPE_PLUGIN_API macro.
https://bugs.webkit.org/show_bug.cgi?id=77093

Patch by Tomasz Morawski <t.morawski@samsung.com> on 2012-01-26
Reviewed by Andreas Kling.

The ewk_view_js_window_object_clear function should be inside ENABLE(NETSCAPE_PLUGIN_API) macro.

* ewk/ewk_view.cpp:

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

12 years ago[Qt][Win] One more speculative buildfix after r105970.
ossy@webkit.org [Thu, 26 Jan 2012 13:43:26 +0000 (13:43 +0000)]
[Qt][Win] One more speculative buildfix after r105970.

Source/JavaScriptCore:

* JavaScriptCore.pri:

Source/WTF:

* WTF.pri:

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 12:58:00 +0000 (12:58 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix mac build after r105988.

        * WebCore.exp.in:

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

12 years ago[Qt][Win] Speculative buildfix after r105970.
ossy@webkit.org [Thu, 26 Jan 2012 12:46:03 +0000 (12:46 +0000)]
[Qt][Win] Speculative buildfix after r105970.

* JavaScriptCore.pri: Link lgdi for DeleteObject() and DeleteDC().

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

12 years agosvg/webarchive tests are flakey under guard malloc
zimmermann@webkit.org [Thu, 26 Jan 2012 12:42:06 +0000 (12:42 +0000)]
svg/webarchive tests are flakey under guard malloc
https://bugs.webkit.org/show_bug.cgi?id=77092

Reviewed by Zoltan Herczeg.

Fix flakey tests, by moving the <script> that dumps the test as webarchive, after the actual content.

* svg/webarchive/svg-cursor-subresources-expected.webarchive:
* svg/webarchive/svg-cursor-subresources.svg:
* svg/webarchive/svg-feimage-subresources-expected.webarchive:
* svg/webarchive/svg-feimage-subresources.svg:

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

12 years ago[Qt][WK2] Use QVariant for payload data in application URL schemes.
zeno.albisser@nokia.com [Thu, 26 Jan 2012 12:28:03 +0000 (12:28 +0000)]
[Qt][WK2] Use QVariant for payload data in application URL schemes.
https://bugs.webkit.org/show_bug.cgi?id=77007

Make application schemes use QVariant for payload data.
This allows passing QByteArrays as well as simple String data.

Remove unneeded http header parts that were exposed in
QQuickNetworkReply.

Add ByteArrayTestData class to allow injecting QByteArray
data into an application scheme handler for testing.

Reviewed by Simon Hausmann.

* Shared/qt/QtNetworkReplyData.cpp:
(WebKit::QtNetworkReplyData::QtNetworkReplyData):
(WebKit::QtNetworkReplyData::encode):
(WebKit::QtNetworkReplyData::decode):
* Shared/qt/QtNetworkReplyData.h:
* UIProcess/API/qt/qquicknetworkreply.cpp:
(QQuickNetworkReply::QQuickNetworkReply):
(QQuickNetworkReply::data):
(QQuickNetworkReply::setData):
(QQuickNetworkReply::send):
* UIProcess/API/qt/qquicknetworkreply_p.h:
* UIProcess/API/qt/tests/bytearraytestdata.cpp: Added.
(ByteArrayTestData::ByteArrayTestData):
(ByteArrayTestData::latin1Data):
(ByteArrayTestData::utf8Data):
* UIProcess/API/qt/tests/bytearraytestdata.h: Added.
* UIProcess/API/qt/tests/qmltests/WebView/tst_applicationScheme.qml:
* UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
(main):
* UIProcess/API/qt/tests/tests.pri:
* WebProcess/qt/QtNetworkReply.cpp:
(WebKit::QtNetworkReply::setReplyData):
* WebProcess/qt/QtNetworkReply.h:

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

12 years ago[Qt] Fixed build when using force_static_libs_as_shared
commit-queue@webkit.org [Thu, 26 Jan 2012 12:18:59 +0000 (12:18 +0000)]
[Qt] Fixed build when using force_static_libs_as_shared
https://bugs.webkit.org/attachment.cgi?bugid=77082

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-26
Reviewed by Simon Hausmann.

* Target.pri:

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

12 years agoUnreviewed rebaseline after http://trac.webkit.org/changeset/105977.
antonm@chromium.org [Thu, 26 Jan 2012 12:17:39 +0000 (12:17 +0000)]
Unreviewed rebaseline after trac.webkit.org/changeset/105977.

* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt: Added.
* platform/chromium-mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png: Removed.
* platform/chromium-mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Removed.
* platform/chromium/svg/W3C-SVG-1.1-SE: Added.
* platform/chromium/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
* platform/chromium/svg/stroke: Added.
* platform/chromium/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.
* platform/gtk/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Removed.
* platform/gtk/svg/stroke: Removed.
* platform/gtk/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Removed.
* platform/qt/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Removed.
* svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt: Added.
* svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.

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

12 years ago[WK2] WebKitTestRunner needs layoutTestController.setGeolocationPermission
commit-queue@webkit.org [Thu, 26 Jan 2012 12:16:25 +0000 (12:16 +0000)]
[WK2] WebKitTestRunner needs layoutTestController.setGeolocationPermission
https://bugs.webkit.org/show_bug.cgi?id=42545

Patch by NĂ¡ndor Huszka <huszka.nandor@stud.u-szeged.hu> on 2012-01-26
Reviewed by Zoltan Herczeg.

Source/WebCore:

No need for new tests, there is no behavior change.

Added a line to file which copies the forwarding headers.

* WebCore.vcproj/copyForwardingHeaders.cmd:

Source/WebKit2:

Implement the setGeolocationPermission method.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetGeolocationPermission):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setGeoLocationPermission):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

Implement the setGeolocationPermission method.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setGeolocationPermission):
(WTR):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
(LayoutTestController):

LayoutTests:

Unskip a test which does not fail now and move tests to the appropriate label.

* platform/wk2/Skipped:

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

12 years agoUnreviewed, rolling out r105982.
zimmermann@webkit.org [Thu, 26 Jan 2012 11:58:40 +0000 (11:58 +0000)]
Unreviewed, rolling out r105982.
http://trac.webkit.org/changeset/105982
https://bugs.webkit.org/show_bug.cgi?id=77090

breaks the world (Requested by WildFox on #webkit).

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

* wtf/MainThread.cpp:
(WTF):
* wtf/Platform.h:
* wtf/mac/MainThreadMac.mm:
(WTF):
(WTF::registerGCThread):
(WTF::isMainThreadOrGCThread):

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 11:08:26 +0000 (11:08 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix Qt build after r105978.

        * rendering/svg/RenderSVGResourceClipper.cpp: Add missing Frame/FrameView includes.
        * rendering/svg/RenderSVGResourceSolidColor.cpp: Ditto.
        * rendering/svg/SVGInlineTextBox.cpp: Ditto.
        * rendering/svg/SVGRenderSupport.cpp: Ditto.

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 10:41:52 +0000 (10:41 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix non-AllInOne builds after r105978.

        * rendering/svg/RenderSVGResource.cpp:

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

12 years agoUnreviewed inspector closure compilation fix.
vsevik@chromium.org [Thu, 26 Jan 2012 10:29:09 +0000 (10:29 +0000)]
Unreviewed inspector closure compilation fix.

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

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 10:26:13 +0000 (10:26 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix release builds after r105978.

        * rendering/svg/SVGInlineTextBox.cpp:
        (WebCore::SVGInlineTextBox::paintSelectionBackground): Remove unused variable.

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

12 years ago[Qt] GC should be parallel on Qt platform
commit-queue@webkit.org [Thu, 26 Jan 2012 10:22:25 +0000 (10:22 +0000)]
[Qt] GC should be parallel on Qt platform
https://bugs.webkit.org/show_bug.cgi?id=73309

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-26
Reviewed by Zoltan Herczeg.

These changes made the parallel gc feature available for Qt port.
The implementation of "registerGCThread" and "isMainThreadOrGCThread"
is moved from MainThreadMac.mm to the common MainThread.cpp to make
them available for other platforms.

Measurement results:
V8           speed-up:  1.071x as fast  [From: 746.1ms  To: 696.4ms ]
WindScorpion speed-up:  1.082x as fast  [From: 3490.4ms To: 3226.7ms]
V8 Splay     speed-up:  1.158x as fast  [From: 145.8ms  To: 125.9ms ]

Tested on Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz with 4-core.

* wtf/MainThread.cpp:
(WTF):
(WTF::registerGCThread):
(WTF::isMainThreadOrGCThread):
* wtf/Platform.h:
* wtf/mac/MainThreadMac.mm:

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

12 years ago[NRWT] Support --ignore-metrics
kbalazs@webkit.org [Thu, 26 Jan 2012 10:10:22 +0000 (10:10 +0000)]
[NRWT] Support --ignore-metrics
https://bugs.webkit.org/show_bug.cgi?id=76278

Reviewed by Tony Chang.

Port the feature from ORWT.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_compare_test):
* Scripts/webkitpy/layout_tests/port/driver.py:
(DriverOutput):
(DriverOutput.strip_metrics):
* Scripts/webkitpy/layout_tests/port/driver_unittest.py:
(DriverOutputTest):
(DriverOutputTest.test_strip_metrics):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):

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

12 years agoUnreviewed, rolling out r105968.
tkent@chromium.org [Thu, 26 Jan 2012 10:07:12 +0000 (10:07 +0000)]
Unreviewed, rolling out r105968.
http://trac.webkit.org/changeset/105968
https://bugs.webkit.org/show_bug.cgi?id=76995

Incorrect behavior change

Source/WebCore:

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate):

LayoutTests:

* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:

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

12 years agoUnreviewed, rolling out r105935 and r105954.
commit-queue@webkit.org [Thu, 26 Jan 2012 09:51:20 +0000 (09:51 +0000)]
Unreviewed, rolling out r105935 and r105954.
http://trac.webkit.org/changeset/105935
http://trac.webkit.org/changeset/105954
https://bugs.webkit.org/show_bug.cgi?id=77080

test-webkitpy is still broken (Requested by abarth on
#webkit).

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

* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(never_ending_command):
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
* Scripts/webkitpy/common/system/fileutils.py:
(make_stdout_binary):
* Scripts/webkitpy/test/cat.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/cat_unittest.py:
(CatTest):
(CatTest.assert_cat):
(CatTest.test_basic):
(CatTest.test_no_newline):
(CatTest.test_unicode):
(CatTest.test_as_command):
* Scripts/webkitpy/test/echo.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/echo_unittest.py:
(EchoTest):
(EchoTest.test_basic):
(EchoTest.test_no_newline):
(EchoTest.test_unicode):
(EchoTest.test_argument_order):
(EchoTest.test_empty_arguments):
(EchoTest.test_no_arguments):
(EchoTest.test_as_command):

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

12 years agocrash in WebCore::RenderSVGContainer::paint
zimmermann@webkit.org [Thu, 26 Jan 2012 09:50:47 +0000 (09:50 +0000)]
crash in WebCore::RenderSVGContainer::paint
https://bugs.webkit.org/show_bug.cgi?id=69714

Reviewed by Dirk Schulze.

Source/WebCore:

When RenderSVGResourceClipper draws its children to a mask, it requires some special constraints:
- fill-opacity/stroke-opacity/opacity forced to 1
- masker/filter resources shouldn't be applied to the children
- fill must be set to the initial fill paint server for all children (solid black)
- stroke must be set to the initial stroke paint server for all children (none)

This was achieved before by mutating the style of the children, which made them need a relayout.
SVGImageBufferTools:renderSubtreeToImageBuffer thus needed to layout the children, if needed, before painting.

This can be completly avoided, when changing RenderSVGResourceClipper to avoid style mutations.
Introduce a new "PaintBehaviorRenderingSVGMask", and set the current FrameViews paintBehaviour to this
state, before painting the subtree. This way we can detect that we're rendering a clip mask, without
having to mutate the style of the children and without having to relayout.

We can now ASSERT(!item->needsLayout()) in renderSubtreeToImageBuffer.

Tests: svg/clip-path/clip-path-tspan-and-stroke.svg
       svg/custom/layout-loop.svg

* rendering/PaintPhase.h:
* rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
(WebCore::RenderSVGResourceClipper::removeClientFromCache):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceMasker.h:
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::createTileImage):
* rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
* rendering/svg/SVGImageBufferTools.cpp:
(WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::paint):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::prepareToRenderSVGContent):

LayoutTests:

Added a new test covering the clipper specific demands when rendering its children to a mask.
(fill/stroke-opacity=1, opacity=1, don't apply masker/filter to children)

All cases are covered by existing tests, I'm adding a new combination of <tspan> within a <text>,
that tries to apply a stroke paint server, which is supposed to be ignored.

* platform/chromium/test_expectations.txt:
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Added.
* svg/clip-path/clip-path-tspan-and-stroke.svg: Added.
* svg/custom/layout-loop-expected.txt: Added.
* svg/custom/layout-loop.svg: Added.

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:40:26 +0000 (09:40 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Regenerated some new SVG results using a Lion machine, to make the baseline pass with --tolerance 0 -p on a vanilla iMac again.

        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
        * platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png:
        * platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:
        * platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt:
        * platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.txt:
        * platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png:
        * platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt:
        * platform/mac/test_expectations.txt

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:28:11 +0000 (09:28 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix win build, by disabling ENABLE_SHADOW_DOM by default.

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

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

12 years ago2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 26 Jan 2012 09:09:35 +0000 (09:09 +0000)]
2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Try to fix Qt/Win build by building OwnPtrWin.cpp into the WTF library.

        * WTF.pro:

2012-01-26  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Try to fix Gtk build - JSShadowRoot.cpp can't be found, fix by looking for it in the derived sources.

        * GNUmakefile.list.am:

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

12 years ago[GTK] Detect cross-compilation in webkitdirs.pm to not generate gtkdoc
rgabor@webkit.org [Thu, 26 Jan 2012 09:01:21 +0000 (09:01 +0000)]
[GTK] Detect cross-compilation in webkitdirs.pm to not generate gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Martin Robinson.

* Scripts/webkitdirs.pm:
(isCrossCompilation):
(buildAutotoolsProject):

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

12 years ago[Qt] Unreviewed gardening after r105917.
ossy@webkit.org [Thu, 26 Jan 2012 08:56:21 +0000 (08:56 +0000)]
[Qt] Unreviewed gardening after r105917.

* platform/qt/Skipped:
* platform/qt/test_expectations.txt:

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

12 years agoPort Mozilla's Graph Server
rniwa@webkit.org [Thu, 26 Jan 2012 08:28:57 +0000 (08:28 +0000)]
Port Mozilla's Graph Server
https://bugs.webkit.org/show_bug.cgi?id=76312

Reviewed by Adam Barth.

Add the app engine backend for the Mozilla's graph server used on perf-webkit.appspot.com.

To deploy webkit-perf.appspot.com, you also need to pull index.html, embed.html, graph.html, jq,
js (except config.js), and css (except title.png) from https://github.com/mozilla/graphs.

* Websites/perf-webkit.appspot.com: Added.
* Websites/perf-webkit.appspot.com/app.yaml: Added.
* Websites/perf-webkit.appspot.com/create_handler.py: Added.
(CreateHandler):
(CreateHandler.post):
(CreateHandler._createBuilder):
(CreateHandler._createBuilder.execute):
(CreateHandler._createBranch):
(CreateHandler._createBranch.execute):
(CreateHandler._createPlatform):
(CreateHandler._createPlatform.execute):
* Websites/perf-webkit.appspot.com/dashboard_handler.py: Added.
(DashboardHandler):
(DashboardHandler.get):
* Websites/perf-webkit.appspot.com/index.yaml: Added.
* Websites/perf-webkit.appspot.com/main.py: Added.
(main):
* Websites/perf-webkit.appspot.com/manifest_handler.py: Added.
(ManifestHandler):
(ManifestHandler.get):
* Websites/perf-webkit.appspot.com/models.py: Added.
(NumericIdHolder):
(NumericIdHolder.whose):
(createInTransactionWithNumericIdHolder):
(modelFromNumericId):
(Branch):
(Platform):
(Builder):
(Builder.authenticate):
(Builder.hashedPassword):
(Build):
(Test):
(TestResult):
(ReportLog):
* Websites/perf-webkit.appspot.com/report_handler.py: Added.
(ReportHandler):
(ReportHandler.post):
(ReportHandler._modelByKeyNameInBodyOrError):
(ReportHandler._integerInBody):
(ReportHandler._timestampInBody):
(ReportHandler._output):
(ReportHandler._resultsAreValid):
(ReportHandler._createBuildIfPossible):
(ReportHandler._createBuildIfPossible.execute):
(ReportHandler._addTestIfNeeded):
(ReportHandler._addTestIfNeeded.execute):
* Websites/perf-webkit.appspot.com/runs_handler.py: Added.
(RunsHandler):
(RunsHandler.get):
* Websites/perf-webkit.appspot.com/static: Added.
* Websites/perf-webkit.appspot.com/static/create-models.html: Added.
* Websites/perf-webkit.appspot.com/static/manual-submit.html: Added.

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

12 years agoREGRESSION (r105555): Incorrect use of OS() macro breaks OwnPtr when used with Win32...
aestes@apple.com [Thu, 26 Jan 2012 08:17:47 +0000 (08:17 +0000)]
REGRESSION (r105555): Incorrect use of OS() macro breaks OwnPtr when used with Win32 data types
https://bugs.webkit.org/show_bug.cgi?id=77073

Reviewed by Ryosuke Niwa.

r105555 changed PLATFORM(WIN) to OS(WIN), but WTF_OS_WIN isn't defined.
This should have been changed to OS(WINDOWS). This causes the
preprocessor to strip out Win32 data type overrides for deleteOwnedPtr,
causing allocations made by Win32 to be deleted by fastmalloc.

* wtf/OwnPtrCommon.h:
(WTF): Use OS(WINDOWS) instead of OS(WIN).

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

12 years agoWeb Inspector: Improve user experience of advanced search panel closing.
vsevik@chromium.org [Thu, 26 Jan 2012 08:16:01 +0000 (08:16 +0000)]
Web Inspector: Improve user experience of advanced search panel closing.
https://bugs.webkit.org/show_bug.cgi?id=76983

Reviewed by Pavel Feldman.

Added close button to search panel.
Esc now closes the panel even when search filed has focus.

* English.lproj/localizedStrings.js:
* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.close):
(WebInspector.SearchView):
(WebInspector.SearchView.prototype._onKeyDown):
(WebInspector.SearchView.prototype._closeButtonPressed):
* inspector/front-end/inspector.css:
(.search-view .search-panel):
(.search-view .search-panel button.search-close-button):
* inspector/front-end/inspector.js:
(WebInspector._escPressed):
(WebInspector.closeDrawerView):

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

12 years agohttps://bugs.webkit.org/show_bug.cgi?id=76995.
commit-queue@webkit.org [Thu, 26 Jan 2012 08:06:16 +0000 (08:06 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=76995.
WebKit fails IETC :indeterminate and input type=radio test.

As per the HTML spec http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#dom-input-indeterminate,
only checkbox input type should respect the indeterminate state.
Removed the support for indeterminate state for radio input types.

Source/WebCore:

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.

Modified the existing test cases.

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate): Indeterminate state is supported only for checkbox input type.

LayoutTests:

Modified the existing test cases.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.

* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:

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