[chromium] [regression] Don't use ScrollByPrecisePixels on Chromium Mac.
https://bugs.webkit.org/show_bug.cgi?id=91020

Reviewed by Adam Barth.

A change in https://bugs.webkit.org/show_bug.cgi?id=87535 to
improve the operation of smooth scrolling incorrectly caused
Chromium Mac to use the wrong scroll granularity on
hasPreciseScrollingDeltas() == true wheelevent scrolls.
Exclude the change on the Chromium Mac platform.

* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::handleWheelEvent): Adjusted #ifdef to exclude Chromium
Mac from ScrollByPrecisePixels change.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122382 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Move compositor quads to Platform/chromium/public
https://bugs.webkit.org/show_bug.cgi?id=90582

Patch by Alexandre Elias <aelias@google.com> on 2012-07-11
Reviewed by Adrienne Walker.

This moves CCSharedQuadState, CCDrawQuad, and all but two CC*DrawQuad
classes to the WebKit namespace, as a first step to pushing them
across the process boundary for the ubercompositor.

- The intent is to serialize the class hierarchy using the same
mechanism as WebInputEvent.  In order to do this, there are three
requirements: pure POD data, a method returning size, and a packing
pragma.

- Private data members are fine with this kind of serializer, and a
default constructor is not needed.  Because of that, we can maintain
the same encapsulation and convenient APIs (behind
WEBKIT_IMPLEMENTATION) as the original classes.  To ease the
transition, the original WebCore headers still exist and typedef to
the new classes.

- However, SharedQuadState will be serialized using the normal
IPC_STRUCT_TRAITS macro, so I made its members public.  A custom
serializer (on quad lists) will maintain the pointers from quads to
SharedQuadStates.

- I converted the Material casting mechanism to materialCast() methods
living in the derived classes.  That way, the WebCompositorQuad header
doesn't need to know about all its derived classes.

- Quad classes not yet transitioned can still be used in
non-ubercompositor mode.  CCRenderPassDrawQuad and CCYUVVideoDrawQuad
are currently non-POD and I left them in their original files.

This approach is the best I've found so far, since it preserves all
WebCore-facing APIs and avoids unnecessary code duplication (new quad
types or members can be added by modifying only one place).  There
also should not be an unreasonable amount of custom serializer code
required.

Source/Platform:

* Platform.gypi:
* chromium/public/WebCompositorQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCDrawQuad.h.
(WebKit):
(WebCompositorQuad):
(WebKit::WebCompositorQuad::quadRect):
(WebKit::WebCompositorQuad::quadTransform):
(WebKit::WebCompositorQuad::layerTransform):
(WebKit::WebCompositorQuad::layerRect):
(WebKit::WebCompositorQuad::scissorRect):
(WebKit::WebCompositorQuad::opacity):
(WebKit::WebCompositorQuad::needsBlending):
(WebKit::WebCompositorQuad::isLayerAxisAlignedIntRect):
(WebKit::WebCompositorQuad::quadVisibleRect):
(WebKit::WebCompositorQuad::isDebugQuad):
(WebKit::WebCompositorQuad::material):
(WebKit::WebCompositorQuad::sharedQuadState):
(WebKit::WebCompositorQuad::setSharedQuadState):
* chromium/public/WebCompositorSharedQuadState.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.h.
(WebKit):
(WebCompositorSharedQuadState):
* chromium/public/WebCompositorSolidColorQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.h.
(WebKit):
(WebCompositorSolidColorQuad):
(WebKit::WebCompositorSolidColorQuad::color):
* chromium/public/WebCompositorTextureQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCTextureDrawQuad.h.
(WebKit):
(WebCompositorTextureQuad):
(WebKit::WebCompositorTextureQuad::uvRect):
(WebKit::WebCompositorTextureQuad::textureId):
(WebKit::WebCompositorTextureQuad::premultipliedAlpha):
(WebKit::WebCompositorTextureQuad::flipped):

Source/WebCore:

No new tests. (No-op refactoring.)

* WebCore.gypi:
* platform/chromium/support/WebCompositorQuad.cpp: Added.
(WebKit):
(WebKit::WebCompositorQuad::WebCompositorQuad):
(WebKit::WebCompositorQuad::opaqueRect):
(WebKit::WebCompositorQuad::setQuadVisibleRect):
(WebKit::WebCompositorQuad::size):
* platform/chromium/support/WebCompositorSharedQuadState.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSharedQuadState.cpp.
(WebKit):
(WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):
(WebKit::WebCompositorSharedQuadState::create):
(WebKit::WebCompositorSharedQuadState::isLayerAxisAlignedIntRect):
* platform/chromium/support/WebCompositorSolidColorQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp.
(WebKit):
(WebKit::WebCompositorSolidColorQuad::create):
(WebKit::WebCompositorSolidColorQuad::WebCompositorSolidColorQuad):
(WebKit::WebCompositorSolidColorQuad::materialCast):
* platform/chromium/support/WebCompositorTextureQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCTextureDrawQuad.cpp.
(WebKit):
(WebKit::WebCompositorTextureQuad::create):
(WebKit::WebCompositorTextureQuad::WebCompositorTextureQuad):
(WebKit::WebCompositorTextureQuad::setNeedsBlending):
(WebKit::WebCompositorTextureQuad::materialCast):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawQuad):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/cc/CCCheckerboardDrawQuad.cpp:
(WebCore::CCCheckerboardDrawQuad::create):
(WebCore::CCCheckerboardDrawQuad::CCCheckerboardDrawQuad):
(WebCore::CCCheckerboardDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCCheckerboardDrawQuad.h:
(CCCheckerboardDrawQuad):
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp:
(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
(WebCore::CCDebugBorderDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h:
(CCDebugBorderDrawQuad):
* platform/graphics/chromium/cc/CCDrawQuad.cpp: Removed.
* platform/graphics/chromium/cc/CCDrawQuad.h:
(WebCore):
* platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.cpp:
(WebCore::CCIOSurfaceDrawQuad::create):
(WebCore::CCIOSurfaceDrawQuad::CCIOSurfaceDrawQuad):
(WebCore::CCIOSurfaceDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCIOSurfaceDrawQuad.h:
(CCIOSurfaceDrawQuad):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore):
* platform/graphics/chromium/cc/CCRenderPass.h:
(WebCore):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
(WebCore::CCRenderPassDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
(CCRenderPassDrawQuad):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore):
* platform/graphics/chromium/cc/CCSharedQuadState.h:
(WebCore):
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.h:
(WebCore):
* platform/graphics/chromium/cc/CCStreamVideoDrawQuad.cpp:
(WebCore::CCStreamVideoDrawQuad::create):
(WebCore::CCStreamVideoDrawQuad::CCStreamVideoDrawQuad):
(WebCore::CCStreamVideoDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCStreamVideoDrawQuad.h:
(CCStreamVideoDrawQuad):
* platform/graphics/chromium/cc/CCTextureDrawQuad.h:
(WebCore):
* platform/graphics/chromium/cc/CCTileDrawQuad.cpp:
(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):
(WebCore::CCTileDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCTileDrawQuad.h:
(CCTileDrawQuad):
* platform/graphics/chromium/cc/CCYUVVideoDrawQuad.cpp:
(WebCore::CCYUVVideoDrawQuad::create):
(WebCore::CCYUVVideoDrawQuad::CCYUVVideoDrawQuad):
(WebCore::CCYUVVideoDrawQuad::materialCast):
(WebCore):
* platform/graphics/chromium/cc/CCYUVVideoDrawQuad.h:
(CCYUVVideoDrawQuad):

Source/WebKit/chromium:

* tests/CCLayerTestCommon.cpp:
(CCLayerTestCommon::verifyQuadsExactlyCoverRect):
* tests/CCSolidColorLayerImplTest.cpp:
(CCLayerTestCommon::TEST):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122383 268f45cc-cd09-0410-ab3c-d52691b4dbfc
nrwt: clean up names in worker.py
https://bugs.webkit.org/show_bug.cgi?id=90510

Reviewed by Ojan Vafai.

This is the last patch in the series of refactoring worker.py;
all this does is change some names of methods, instance
variables, and method parameters to be clearer (it also changes
some code in manager.py and manager_worker.py to be consistent).

There are no functional changes in this patch and the existing
tests should cover everything.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.__init__):
(Manager.prepare_lists_and_print_output):
(Manager._run_tests.worker_factory):
(Manager._run_tests):
(Manager._show_results_html_file):
(Manager.handle_finished_test_list):
(_WorkerState.__init__):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
(_Broker.post_message):
(_Broker._dispatch_message):
(AbstractWorker.__init__):
(AbstractWorker.run):
(AbstractWorker.yield_to_caller):
(AbstractWorker.post):
(_WorkerConnection.__init__):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
(_TestWorker.__init__):
(_TestWorker.start):
(_TestWorker.handle):
(_TestWorker.stop):
(_TestsMixin):
(_TestsMixin.test_name):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(Worker.__init__):
(Worker.__del__):
(Worker.start):
(Worker.handle):
(Worker._run_test):
(Worker.stop):
(Worker._timeout):
(Worker._kill_driver):
(Worker._run_test_with_timeout):
(Worker._clean_up_after_test):
(Worker._run_test_in_another_thread.SingleTestThread.run):
(Worker._run_test_in_this_thread):
(Worker._run_single_test):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Watchpoints and jump replacement should be decoupled
https://bugs.webkit.org/show_bug.cgi?id=91016

Reviewed by Oliver Hunt.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/AbstractMacroAssembler.h:
(JSC):
(Label):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::appendWatchpoint):
(JSC::CodeBlock::watchpoint):
(DFGData):
* bytecode/Watchpoint.cpp:
(JSC):
* bytecode/Watchpoint.h:
(JSC::Watchpoint::Watchpoint):
(Watchpoint):
(JSC::Watchpoint::fire):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
* jit/JumpReplacementWatchpoint.cpp: Added.
(JSC):
(JSC::JumpReplacementWatchpoint::correctLabels):
(JSC::JumpReplacementWatchpoint::fireInternal):
* jit/JumpReplacementWatchpoint.h: Added.
(JSC):
(JumpReplacementWatchpoint):
(JSC::JumpReplacementWatchpoint::JumpReplacementWatchpoint):
(JSC::JumpReplacementWatchpoint::setDestination):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122385 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Remove empty directories.

* http/tests/websocket/tests/resources: Removed.
* http/tests/websocket/tests/script-tests: Removed.
* http/tests/websocket/tests/workers: Removed.
* http/tests/websocket/tests/workers/resources: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122386 268f45cc-cd09-0410-ab3c-d52691b4dbfc
webkitpy: lint code in webkitpy.layout_tests.models
https://bugs.webkit.org/show_bug.cgi?id=90416

Reviewed by Ojan Vafai.

Cleaning up errors reported from lint-webkitpy.

Also, suppress the warnings about wildcard imports in pylintrc;
we have nothing particularly against them.

* Scripts/webkitpy/layout_tests/models/test_configuration.py:
(TestConfigurationConverter.combinations):
* Scripts/webkitpy/layout_tests/models/test_configuration_unittest.py:
(TestConfigurationTest.test_hash.query_unknown_key):
(TestConfigurationTest.test_eq):
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(ParseError.__init__):
(TestExpectationLine.__init__):
(TestExpectationsModel.get_expectations_string):
(TestExpectationsModel):
(TestExpectationsModel.expectation_to_string):
(TestExpectationsModel.add_expectation_line):
(TestExpectationsModel._clear_expectations_for_test):
(TestExpectationsModel._remove_from_sets):
(TestExpectations.get_expectations_string):
(TestExpectations.expectation_to_string):
(TestExpectations._report_warnings):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(Base.__init__):
(parse_exp):
(SkippedTests.check):
(TestExpectationParserTests.test_parse_empty_string):
* Scripts/webkitpy/layout_tests/models/test_failures.py:
(FailureTimeout.__init__):
(FailureCrash.__init__):
(FailureImageHashMismatch.__init__):
(FailureReftestMismatch.__init__):
(FailureReftestMismatchDidNotOccur.__init__):
(FailureReftestNoImagesGenerated.__init__):
* Scripts/webkitpy/layout_tests/models/test_failures_unittest.py:
(TestFailuresTest.test_unknown_failure_type.UnknownFailure.message):
(TestFailuresTest.test_unknown_failure_type):
(TestFailuresTest):
(TestFailuresTest.test_message_is_virtual):
* Scripts/webkitpy/layout_tests/models/test_results.py:
(TestResult.loads):
(TestResult.has_failure_matching_types):
* Scripts/webkitpy/pylintrc:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122387 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Accidentally used the wrong license (3-clause instead of 2-clause) in some
files I just committed.

Rubber stamped by Oliver Hunt.

* bytecode/Watchpoint.cpp:
* bytecode/Watchpoint.h:
* jit/JumpReplacementWatchpoint.cpp:
* jit/JumpReplacementWatchpoint.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
SVGUseElement should not use Element::ensureShadowRoot().
https://bugs.webkit.org/show_bug.cgi?id=90938

Reviewed by Hajime Morita.

We would like to remove Element::ensureShadowRoot() because we would like to stabilize the lifecycle of Shadow DOM.
This patch rewrites SVGUseElement::create() not to use Element::ensureShadowRoot(). Since our convention to create
a shadow subtree is to create a method createShadowSubtree(), I obeyed it.

No new tests. Simple refactoring.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::create):
(WebCore::SVGUseElement::createShadowSubtree):
(WebCore):
* svg/SVGUseElement.h:
(SVGUseElement):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122389 268f45cc-cd09-0410-ab3c-d52691b4dbfc
commit-queue instances on Compute Engine are missing git-svn
https://bugs.webkit.org/show_bug.cgi?id=91034

Reviewed by Eric Seidel.

git-svn is needed to actually commit to SVN from a git working copy.

* EWSTools/cold-boot.sh:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122390 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add an option to enter paginated mode in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=91035

Reviewed by Dan Bernstein.

Add an item to the Debug menu for MiniBrowser that puts
the web view into paginated mode. For now, we only
do left-to-right pagination, with a fixed column width.

* MiniBrowser/mac/BrowserWindowController.h:
* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController validateMenuItem:]): Update the checked
state of the menu item.
(-[BrowserWindowController isPaginated]): Return YES if paginated.
(-[BrowserWindowController togglePaginationMode:]): Toggle in
and out of pagination mode.
* MiniBrowser/mac/MainMenu.xib: Add the debug menu item.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122391 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG should have fast virtual calls
https://bugs.webkit.org/show_bug.cgi?id=90924

Source/JavaScriptCore: 

Reviewed by Gavin Barraclough.
        
Implements virtual call support in the style of the old JIT, with the
caveat that we still use the same slow path for both InternalFunction
calls and JSFunction calls. Also rationalized the way that our
CodeOrigin indices tie into exception checks (previously it was a
strange one-to-one mapping with fairly limited assertions; now it's a
one-to-many mapping for CodeOrigins to exception checks, respectively).
I also took the opportunity to clean up
CallLinkInfo::callReturnLocation, which previously was either a Call or
a NearCall. Now it's just a NearCall. As well, exceptions during slow
path call resolution are now handled by returning an exception throwing
thunk rather than returning null. And finally, I made a few things
public that were previously private-with-lots-of-friends, because I
truly despise the thought of listing each thunk generating function as
a friend of JSValue and friends.
        
* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::unlink):
* bytecode/CallLinkInfo.h:
(CallLinkInfo):
* bytecode/CodeOrigin.h:
(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet):
* dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::AssemblyHelpers):
* dfg/DFGCCallHelpers.h:
(JSC::DFG::CCallHelpers::CCallHelpers):
* dfg/DFGGPRInfo.h:
(GPRInfo):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compileFunction):
* dfg/DFGJITCompiler.h:
(JSC::DFG::CallBeginToken::CallBeginToken):
(JSC::DFG::CallBeginToken::~CallBeginToken):
(CallBeginToken):
(JSC::DFG::CallBeginToken::set):
(JSC::DFG::CallBeginToken::registerWithExceptionCheck):
(JSC::DFG::CallBeginToken::codeOrigin):
(JSC::DFG::CallExceptionRecord::CallExceptionRecord):
(CallExceptionRecord):
(JSC::DFG::JITCompiler::currentCodeOriginIndex):
(JITCompiler):
(JSC::DFG::JITCompiler::beginCall):
(JSC::DFG::JITCompiler::notifyCall):
(JSC::DFG::JITCompiler::prepareForExceptionCheck):
(JSC::DFG::JITCompiler::addExceptionCheck):
(JSC::DFG::JITCompiler::addFastExceptionCheck):
* dfg/DFGOperations.cpp:
* dfg/DFGRepatch.cpp:
(JSC::DFG::dfgLinkFor):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* dfg/DFGThunks.cpp:
(JSC::DFG::emitPointerValidation):
(DFG):
(JSC::DFG::throwExceptionFromCallSlowPathGenerator):
(JSC::DFG::slowPathFor):
(JSC::DFG::linkForThunkGenerator):
(JSC::DFG::linkCallThunkGenerator):
(JSC::DFG::linkConstructThunkGenerator):
(JSC::DFG::virtualForThunkGenerator):
(JSC::DFG::virtualCallThunkGenerator):
(JSC::DFG::virtualConstructThunkGenerator):
* dfg/DFGThunks.h:
(DFG):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
(JSC::JIT::linkFor):
* runtime/Executable.h:
(ExecutableBase):
(JSC::ExecutableBase::offsetOfJITCodeFor):
(JSC::ExecutableBase::offsetOfNumParametersFor):
* runtime/JSValue.h:
(JSValue):

LayoutTests: 

Rubber stamped by Oliver Hunt.

This changes which piece of code appears on top of the stack at the point of a stack
overflow. As far as Oliver and I can tell, it doesn't matter, so I just rebased the
test.

* fast/js/stack-trace-expected.txt:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122392 268f45cc-cd09-0410-ab3c-d52691b4dbfc
pagesPerView param is misnamed for WKPageSetPageLength()
https://bugs.webkit.org/show_bug.cgi?id=91033

Rubber-stamped by Dan Bernstein.

The name of the second parameter to WKPageSetPageLength(),
'pagesPerView', was confusing; it's a page size (normally width)
in pixels.

* UIProcess/API/C/WKPagePrivate.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122393 268f45cc-cd09-0410-ab3c-d52691b4dbfc
nrwt: add a MessagePool abstraction that the manager will call to replace the broker
https://bugs.webkit.org/show_bug.cgi?id=90511

Reviewed by Ojan Vafai.

This change introduces the new MessagePool abstraction that will
replace the classes in manager_worker_broker. It is a minimal
interface that tries to follow the conventions in
multiprocessing.Pool and concurrency.futures ... it provides a
context manager and a run() method that sends N messages to M
workers processes (starting workers as necessary) and waits for
them all to complete, handling cleanup as necessary. The caller
is responsible for providing a handle() method to handle
messages received from the workers.

This interface basically hides all of the multiprocessing logic from
the manager class.

The initial implementation of MessagePool is a simple shim
around the existing broker classes; a subsequent change will
replace all the other classes with a much simpler
implementation.

No additional tests are provided for now; existing tests should
provide adequate coverage, and I will add new unit tests for the
MessagePool class when I replace the existing implementation.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(TestRunInterruptedException.__reduce__):
(Manager.__init__):
(Manager._run_tests):
(Manager._run_tests.instead):
(Manager.handle):
(Manager._handle_started_test):
(Manager._handle_finished_test_list):
(Manager._handle_finished_test):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
(get):
(_MessagePool):
(_MessagePool.__init__):
(_MessagePool.__enter__):
(_MessagePool.__exit__):
(_MessagePool.run):
(_MessagePool.wait):
(_MessagePool.is_done):
(_MessagePool._worker_is_done):
(_MessagePool._close):
(_MessagePool.handle_done):
(_MessagePool.handle_started_test):
(_MessagePool.handle_finished_test):
(_MessagePool.handle_finished_test_list):
(_MessagePool.handle_exception):
(_MessagePool._log_messages):
(_MessagePool._handle_worker_exception):
(_WorkerState):
(_WorkerState.for):
(_WorkerState.__init__):
(_WorkerState.__repr__):
(_get_broker):
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker_unittest.py:
(make_broker):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122394 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r122358.
http://trac.webkit.org/changeset/122358
https://bugs.webkit.org/show_bug.cgi?id=91037

Build break on WebKit Win (Requested by hayato on #webkit).

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

Source/WebKit/chromium:

* public/WebView.h:
(WebView):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::dragTargetDragEnter):
(WebKit):
(WebKit::WebViewImpl::dragTargetDragOver):
(WebKit::WebViewImpl::dragTargetDrop):
* src/WebViewImpl.h:
(WebViewImpl):

Tools:

* DumpRenderTree/chromium/EventSender.cpp:
(EventSender::doDragDrop):
(EventSender::doMouseUp):
(EventSender::doMouseMove):
(EventSender::beginDragWithFiles):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122395 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening.
Build fix for r122373.

* platform/chromium/support/WebCompositorSharedQuadState.cpp:
(WebKit::WebCompositorSharedQuadState::WebCompositorSharedQuadState):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122396 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix the build by declaring -isPaginated before use.

* MiniBrowser/mac/BrowserWindowController.m:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122397 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

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

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Suppress horizontal conversion of PlatformWheelEvents when hasPreciseScrollingDeltas is true
https://bugs.webkit.org/show_bug.cgi?id=89580

Source/WebCore:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars.  This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Modified shouldTurnVerticalTicksIntoHorizontal
to not perform this conversion for PlatformWheelEvents with preciseScrollingDeltas.

Reviewed by Adam Barth.

Tests: fast/events/touch/gesture/touch-gesture-scroll-sideways.html

* page/EventHandler.cpp:
(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
(WebCore::EventHandler::handleWheelEvent):
* page/EventHandler.h:
(EventHandler):
* page/chromium/EventHandlerChromium.cpp:
(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):
* page/gtk/EventHandlerGtk.cpp:
(WebCore::EventHandler::shouldTurnVerticalTicksIntoHorizontal):

Tools:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars.  This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Modified DumpRenderTree to
let a layout test specify this attribute so that the change's impact
on scrolling can be tested in a layout test.

Reviewed by Adam Barth.

* DumpRenderTree/chromium/EventSender.cpp:
(EventSender::handleMouseWheel):

LayoutTests:

WebKit GTK and Chromium Linux force vertical wheel events to
scroll horizontally when over horizontal scroll bars.  This is
undesirable for touchpad scrolling with
hasPreciseScrollingDeltas() == true. Added a layout test showing
that change correctly suppresses this behaviour.

Reviewed by Adam Barth.

* fast/events/touch/gesture/touch-gesture-scroll-sideways-expected.txt: Added.
* fast/events/touch/gesture/touch-gesture-scroll-sideways.html: Added.
* platform/chromium-linux/fast/events/touch/gesture/touch-gesture-scroll-sideways-expected.txt: Added. Note: test has intentional platform difference.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122399 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros

This removal was handled by a script that translates the relevant macros in to the equivalent checks
using the system availability macros.

Reviewed by Filip Pizlo.

Source/WebCore:

* WebCore.exp.in:
* accessibility/AccessibilityList.h:
* accessibility/AccessibilityTable.h:
* accessibility/mac/AXObjectCacheMac.mm:
* editing/mac/EditorMac.mm:
* loader/MainResourceLoader.cpp:
* loader/MainResourceLoader.h:
* page/AlternativeTextClient.h:
* page/ContextMenuController.cpp:
* page/mac/SettingsMac.mm:
* platform/LocalizedStrings.cpp:
* platform/MemoryPressureHandler.cpp:
* platform/audio/mac/AudioBusMac.mm:
* platform/graphics/Gradient.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
* platform/graphics/ca/GraphicsLayerCA.cpp:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
* platform/graphics/ca/mac/TileCache.mm:
* platform/graphics/cg/GraphicsContextCG.cpp:
* platform/graphics/cg/ImageBufferCG.cpp:
* platform/graphics/cg/ImageBufferDataCG.cpp:
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/cg/ImageCG.cpp:
* platform/graphics/cg/ImageSourceCG.cpp:
* platform/graphics/cg/PathCG.cpp:
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
* platform/graphics/mac/ComplexTextController.cpp:
* platform/graphics/mac/ComplexTextControllerCoreText.mm:
* platform/graphics/mac/FontCacheMac.mm:
* platform/graphics/mac/FontCustomPlatformData.cpp:
* platform/graphics/mac/FontMac.mm:
* platform/graphics/mac/GraphicsContextMac.mm:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
* platform/graphics/mac/SimpleFontDataMac.mm:
* platform/graphics/mac/WebLayer.h:
* platform/graphics/mac/WebLayer.mm:
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
* platform/mac/CursorMac.mm:
* platform/mac/DisplaySleepDisabler.cpp:
* platform/mac/DisplaySleepDisabler.h:
* platform/mac/EmptyProtocolDefinitions.h:
* platform/mac/HTMLConverter.h:
* platform/mac/HTMLConverter.mm:
* platform/mac/MemoryPressureHandlerMac.mm:
* platform/mac/NSScrollerImpDetails.h:
* platform/mac/PlatformEventFactoryMac.mm:
* platform/mac/PopupMenuMac.mm:
* platform/mac/ScrollAnimatorMac.mm:
* platform/mac/ScrollElasticityController.mm:
* platform/mac/SharedTimerMac.mm:
* platform/mac/SuddenTermination.mm:
* platform/mac/WebCoreFullScreenWindow.mm:
* platform/mac/WebCoreNSCellExtras.h:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
* platform/mac/WebFontCache.mm:
* platform/mac/WebVideoFullscreenController.mm:
* platform/mac/WebVideoFullscreenHUDWindowController.mm:
* platform/network/Credential.h:
* platform/network/ResourceHandle.h:
* platform/network/cf/DNSCFNet.cpp:
* platform/network/cf/ProxyServerCFNet.cpp:
* platform/network/cf/ResourceRequest.h:
* platform/network/cf/ResourceRequestCFNet.cpp:
* platform/network/cf/SocketStreamHandleCFNet.cpp:
* platform/network/mac/AuthenticationMac.mm:
* platform/network/mac/CookieStorageMac.mm:
* platform/network/mac/ResourceHandleMac.mm:
* platform/network/mac/ResourceRequestMac.mm:
* platform/network/mac/WebCoreURLResponse.mm:
* platform/text/TextChecking.h:
* platform/text/cf/HyphenationCF.cpp:
* platform/text/mac/HyphenationMac.mm:
* rendering/RenderLayerBacking.cpp:
* rendering/RenderLayerCompositor.cpp:
* rendering/RenderThemeMac.mm:

Source/WebKit/chromium:

* src/mac/WebInputEventFactory.mm:

Source/WebKit/mac:

* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
* Misc/WebKitErrors.m:
* Misc/WebNSControlExtras.m:
* Misc/WebNSFileManagerExtras.mm:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* Plugins/WebNetscapePluginView.mm:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebSystemInterface.mm:
* WebView/WebClipView.mm:
* WebView/WebDynamicScrollBarsView.mm:
* WebView/WebFrameView.mm:
* WebView/WebFullScreenController.mm:
* WebView/WebHTMLView.mm:
* WebView/WebHTMLViewInternal.h:
* WebView/WebPDFDocumentExtras.mm:
* WebView/WebPreferences.mm:
* WebView/WebResourceInternal.h:
* WebView/WebScriptDebugDelegate.h:
* WebView/WebView.mm:
* WebView/WebViewPrivate.h:

Source/WebKit2:

* Shared/DictionaryPopupInfo.cpp:
* Shared/DictionaryPopupInfo.h:
* Shared/mac/PasteboardTypes.mm:
* Shared/mac/WebEventFactory.mm:
* UIProcess/API/mac/PDFViewController.mm:
* UIProcess/API/mac/PageClientImpl.mm:
* UIProcess/API/mac/WKView.mm:
* UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
* UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
* UIProcess/Launcher/mac/EnvironmentVariables.cpp:
* UIProcess/Launcher/mac/EnvironmentVariables.h:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/mac/TextCheckerMac.mm:
* UIProcess/mac/WKFullScreenWindowController.mm:
* UIProcess/mac/WebContextMac.mm:
* UIProcess/mac/WebPageProxyMac.mm:
* WebKit2Prefix.h:
* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
* WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/WebPageMac.mm:
* WebProcess/com.apple.WebProcess.sb.in:
* WebProcess/mac/KeychainItemShimMethods.mm:
* WebProcess/mac/SecItemShimMethods.mm:
* WebProcess/mac/WebProcessMac.mm:
* WebProcess/mac/WebProcessMainMac.mm:
* WebProcess/mac/WebProcessShim.mm:

Source/WTF:

* wtf/Assertions.cpp:
* wtf/FastMalloc.cpp:
* wtf/Platform.h:
* wtf/ThreadingPthreads.cpp:
* wtf/unicode/icu/CollatorICU.cpp:

Tools:

* DumpRenderTree/cf/WebArchiveDumpSupport.cpp:
* DumpRenderTree/mac/CheckedMalloc.cpp:
* DumpRenderTree/mac/DumpRenderTree.mm:
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
* DumpRenderTree/mac/LayoutTestControllerMac.mm:
* DumpRenderTree/mac/TextInputController.m:
* TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
* WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:
* WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122400 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Switch a few cases that care about the SDK over to checking __MAC_OS_X_VERSION_MAX_ALLOWED so that things build.

Part of <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros

Reviewed by Filip Pizlo.

Source/WebCore:

* platform/graphics/cg/GraphicsContextCG.cpp: The SDK we're building against determines whether the constant is available.
* platform/mac/EmptyProtocolDefinitions.h:  The SDK we're building against determines whether the protocols are declared.
* platform/mac/NSScrollerImpDetails.h: The SDK we're building against determines whether the constants and method are
available.
* platform/mac/SharedTimerMac.mm: The SDK we're building against determines whether the function has already been declared.

Source/WTF:

* wtf/FastMalloc.cpp:
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary): The SDK we're building against determines how many elements
the structure is declared as having.

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