Re-land http://trac.webkit.org/changeset/94441 now that lforschler is ready.

This patch enables testing on the mac-ews bots.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124468 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: [Regression] context menu does not open on Sources panel tabs on mac
https://bugs.webkit.org/show_bug.cgi?id=93000

Reviewed by Pavel Feldman.

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Implement InRegionScroller class as a in-region scroll controller
https://bugs.webkit.org/show_bug.cgi?id=92889
PR #186587

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

Internally reviewed by Arvid Nilsson.

Source/WebKit:

* PlatformBlackBerry.cmake: Added InRegionScroller.cpp|h to the build system.

Source/WebKit/blackberry:

Moved all in-region scrolling code out of WebPagePrivate to the just
created InRegionScroller class. This class aims to:

1) Centralize all in-region scroll code and clean up WebPagePrivate as a consequence.
2) Be the bases to add UI/Compositing thread driven scrolls to in-region.

The patch does not change any functionallity change.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::scrollBy):
(BlackBerry::WebKit::WebPagePrivate::notifyInRegionScrollStatusChanged):
(BlackBerry::WebKit::WebPagePrivate::clearDocumentData):
(BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::layer):
* WebKitSupport/InRegionScroller.cpp: Added.
(WebKit):
(BlackBerry::WebKit::canScrollInnerFrame):
(BlackBerry::WebKit::canScrollRenderBox):
(BlackBerry::WebKit::parentLayer):
(BlackBerry::WebKit::enclosingLayerNode):
(BlackBerry::WebKit::isNonRenderViewFixedPositionedContainer):
(BlackBerry::WebKit::pushBackInRegionScrollable):
(BlackBerry::WebKit::InRegionScroller::InRegionScroller):
(BlackBerry::WebKit::InRegionScroller::setNode):
(BlackBerry::WebKit::InRegionScroller::node):
(BlackBerry::WebKit::InRegionScroller::reset):
(BlackBerry::WebKit::InRegionScroller::isNull):
(BlackBerry::WebKit::InRegionScroller::scrollBy):
(BlackBerry::WebKit::InRegionScroller::inRegionScrollableAreasForPoint):
(BlackBerry::WebKit::InRegionScroller::scrollNodeRecursively):
(BlackBerry::WebKit::InRegionScroller::scrollRenderer):
(BlackBerry::WebKit::InRegionScroller::adjustScrollDelta):
* WebKitSupport/InRegionScroller.h: Added.
(WebCore):
(WebKit):
(InRegionScroller):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124470 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] WebViewImpl::showTouchHighlightQuads isn't needed for Android
https://bugs.webkit.org/show_bug.cgi?id=92921

Reviewed by Nate Chapin.

We originally added a stub implementation of this function to make
merging detectContentOnTouch easier, but showTouchHighlightQuads is
being removed from the chromium-android branch in favor of the code in
https://bugs.webkit.org/show_bug.cgi?id=84487. This patch removes the
stub.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::detectContentIntentOnTouch):
* src/WebViewImpl.h:
(WebViewImpl):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124471 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] make sometimes using a single core
https://bugs.webkit.org/show_bug.cgi?id=92998

Reviewed by Martin Robinson.

In the GTK 64-bit Release buildbot some builds use a single core
for the make process. I suspect this is because in those cases
nproc reports a single core available. The proposed solution is to
always rely on all the cores available in the machine.

* Scripts/webkitdirs.pm:
(determineNumberOfCPUs):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124472 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Month-year selector on calendar picker should be touch friendly.
https://bugs.webkit.org/show_bug.cgi?id=92678

Patch by Kevin Ellis <kevers@chromium.org> on 2012-08-02
Reviewed by Kent Tamura.

Previously the month-year popup menu was implemented using a listbox,
which does not support CSS customization.  Entries in the listbox
were too shallow to reliably target with touch gestures.  The
replacement popup is CSS configurable with larger entries on devices
that support touch input.

Manually tested with and without touch support in English, Japanese
and Arabic.

* Resources/calendarPicker.css:
(.month-selector-popup): Update to use scrollable div instead of listbox.
(.month-selector-popup-contents): Render popup as a table within a scrollable div.
(.month-selector-popup-entry): Formatting entries in the month-year popup.
(.selected-month-year): Highlight the selected month-year.
(@media (pointer:coarse)): Enlarge entries in the popup meu on devices that support touch.
* Resources/calendarPicker.js:
(YearMonthController.prototype.attachTo): Change selector popup from a list-box to a div.
(YearMonthController.prototype._redraw): Populate table based popup rather than listbox.
(YearMonthController.prototype._showPopup): Set scroll position and resize for scrollbar.
(YearMonthController.prototype._closePopup): Restore focus to the calendar.
(YearMonthController.prototype._getSelection): Added to retrieve the selected month-year.
(YearMonthController.prototype._handleMouseMove): Added to update selected month-year on hover.
(YearMonthController.prototype._handleMonthPopupKey): Add keyboard navigation.
(YearMonthController.prototype._handleYearMonthChange): Retrieve value from selected month-year.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Speech JavaScript API: Fire speech start event at the same time as sound start event
https://bugs.webkit.org/show_bug.cgi?id=92971

Reviewed by Adam Barth.

Source/WebKit/chromium:

Chromium's speech recognizer doesn't differentiate between "sound
started" and "speech started". Just fire those events at the same
time, and don't provide functions for them in
WebSpeechRecognizerClient.

* public/WebSpeechRecognizerClient.h:
* src/SpeechRecognitionClientProxy.cpp:
(WebKit::SpeechRecognitionClientProxy::didStartSound):
(WebKit::SpeechRecognitionClientProxy::didEndSound):
* src/SpeechRecognitionClientProxy.h:
(SpeechRecognitionClientProxy):

Tools:

Update the MockWebSpeechRecognizer to not fire "speech started" events
separately.

* DumpRenderTree/chromium/MockWebSpeechRecognizer.cpp:
(MockWebSpeechRecognizer::start):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Reviewed by Julien Chaffraix.

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove all uses of ClassInfo for JSStrings in JIT code
https://bugs.webkit.org/show_bug.cgi?id=92935

Reviewed by Geoffrey Garen.

This is the first step in removing our dependence on in-object ClassInfo pointers
in JIT code. Most of the changes are to check the Structure, which is unique for 
JSString primitives.

* bytecode/SpeculatedType.cpp:
(JSC::speculationFromClassInfo):
(JSC::speculationFromStructure): Changed to check the TypeInfo in the Structure
since there wasn't a JSGlobalData immediately available to grab the JSString 
Structure out of.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITInlineMethods.h:
(JSC::JIT::emitLoadCharacterString):
* jit/JITOpcodes.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_convert_this):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_convert_this):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
* jit/SpecializedThunkJIT.h:
(JSC::SpecializedThunkJIT::loadJSStringArgument):
* jit/ThunkGenerators.cpp:
(JSC::stringCharLoad):
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):


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