WebKit-https.git
7 years agoTurn PageLoad tests into simple performancetests, commit #2
zoltan@webkit.org [Thu, 25 Oct 2012 18:20:17 +0000 (18:20 +0000)]
Turn PageLoad tests into simple performancetests, commit #2
https://bugs.webkit.org/show_bug.cgi?id=99899

Reviewed by Ryosuke Niwa.

We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
to their new location and adds html/js wrappers for them.

This is the #2 commit of the whole patch.

* PageLoad/svg/files/cacuts_01.svg: Removed.
* PageLoad/svg/files/cowboy.svg: Removed.
* PageLoad/svg/files/crawfish2_ganson.svg: Removed.
* SVG/Cactus.html: Added.
* SVG/Cowboy.html: Added.
* SVG/CrawFishGanson.html: Added.
* SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
* SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
* SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
* Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.

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

7 years agoGet rid of ScriptController::clearForNavigation
ojan@chromium.org [Thu, 25 Oct 2012 18:16:28 +0000 (18:16 +0000)]
Get rid of ScriptController::clearForNavigation
https://bugs.webkit.org/show_bug.cgi?id=100390

Reviewed by Adam Barth.

Get rid of clearForNavigation and change resetIsolatedWorlds
to reset so that it can also do the hintForCollectGarbage call.
No new tests. No behavior change.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::reset):
(WebCore::ScriptController::clearForClose):
(WebCore::ScriptController::clearWindowShell):
* bindings/v8/ScriptController.h:
(ScriptController):

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

7 years agor132427 changed the tiling behavior of tiled layer TileCaches as well as the page...
simon.fraser@apple.com [Thu, 25 Oct 2012 18:08:21 +0000 (18:08 +0000)]
r132427 changed the tiling behavior of tiled layer TileCaches as well as the page tile cache
https://bugs.webkit.org/show_bug.cgi?id=100323

Reviewed by Anders Carlsson.

r132427 assumed that TileCaches were only used for the page, and changed the tile
size behavior of all non-page TileCaches.

Fix by giving TiledBacking a new 'CoverageForSlowScrolling' flag which
affects the tile size behavior.

Consolidated the two places that set TileCoverage into one, and in the process
reduced FrameView's direct communication with TiledBacking.

No new tests because we can't test tile size via tests.

* page/FrameView.cpp:
(WebCore::FrameView::didMoveOnscreen): Rely on RenderLayerCompositor to
call setIsInWindow() on the main page tile cache.
(WebCore::FrameView::willMoveOffscreen): Ditto.
(WebCore::FrameView::performPostLayoutTasks): Rather than explicitly tell
the TiledBacking that it should do stuff, just tell the compositor that
layout happened.
* platform/graphics/TiledBacking.h: New CoverageForSlowScrolling flag.
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::tileSizeForCoverageRect): Only use one big tile
if the CoverageForSlowScrolling flag is set.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking): layer->isRootLayer()
is equivalent to renderer()->isRenderView() and clearer.
(WebCore::RenderLayerBacking::tiledBacking): Call adjustTileCacheCoverage().
It would be nice to move the rest of this TiledBacking code from here somehow.
(WebCore::RenderLayerBacking::adjustTileCacheCoverage): Update the TileCoverage
flags, taking into account horizontal and vertical scrollability independently,
and whether we're in slow scrolling mode.
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidLayout): Have the page
tiled backing update it's coverage flags.
(WebCore::RenderLayerCompositor::pageTiledBacking): Utility function.
(WebCore::RenderLayerCompositor::didMoveOnscreen): Moved from FrameView.
(WebCore::RenderLayerCompositor::willMoveOffscreen): Ditto.
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):

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

7 years agoEverything that sets RenderObject::m_style should go through setStyleInternal
commit-queue@webkit.org [Thu, 25 Oct 2012 18:00:23 +0000 (18:00 +0000)]
Everything that sets RenderObject::m_style should go through setStyleInternal
https://bugs.webkit.org/show_bug.cgi?id=100338

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-10-25
Reviewed by Ojan Vafai.

Whenever we set m_style in RenderObject go through setStyleInternal and make
it inline. This gives a common place to put printfs and makes the code cleaner.

No new tests, just a refactor.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
(WebCore::RenderObject::setStyle):
* rendering/RenderObject.h:
(WebCore::RenderObject::setStyleInternal):

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

7 years ago[EFL][WK2] Move non-API classes out of UIProcess/API/efl
commit-queue@webkit.org [Thu, 25 Oct 2012 17:56:26 +0000 (17:56 +0000)]
[EFL][WK2] Move non-API classes out of UIProcess/API/efl
https://bugs.webkit.org/show_bug.cgi?id=100391

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Move non-API classes from UIProcess/API/efl to
UIProcess/efl for clarity.

* PlatformEfl.cmake:
* UIProcess/efl/BatteryProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/BatteryProvider.cpp.
(toBatteryProvider):
(startUpdatingCallback):
(stopUpdatingCallback):
(BatteryProvider::~BatteryProvider):
(BatteryProvider::create):
(BatteryProvider::BatteryProvider):
(BatteryProvider::startUpdating):
(BatteryProvider::stopUpdating):
(BatteryProvider::didChangeBatteryStatus):
* UIProcess/efl/BatteryProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/BatteryProvider.h.
(WebKit):
(BatteryProvider):
* UIProcess/efl/NetworkInfoProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/NetworkInfoProvider.cpp.
(toNetworkInfoProvider):
(startUpdatingCallback):
(stopUpdatingCallback):
(getBandwidthCallback):
(isMeteredCallback):
(NetworkInfoProvider::create):
(NetworkInfoProvider::NetworkInfoProvider):
(NetworkInfoProvider::~NetworkInfoProvider):
(NetworkInfoProvider::bandwidth):
(NetworkInfoProvider::metered):
(NetworkInfoProvider::startUpdating):
(NetworkInfoProvider::stopUpdating):
* UIProcess/efl/NetworkInfoProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/NetworkInfoProvider.h.
(WebKit):
(NetworkInfoProvider):
* UIProcess/efl/PageClientImpl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/PageClientImpl.cpp.
(WebKit):
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::~PageClientImpl):
(WebKit::PageClientImpl::viewImpl):
(WebKit::PageClientImpl::createDrawingAreaProxy):
(WebKit::PageClientImpl::setViewNeedsDisplay):
(WebKit::PageClientImpl::displayView):
(WebKit::PageClientImpl::scrollView):
(WebKit::PageClientImpl::viewSize):
(WebKit::PageClientImpl::isViewWindowActive):
(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::isViewVisible):
(WebKit::PageClientImpl::isViewInWindow):
(WebKit::PageClientImpl::processDidCrash):
(WebKit::PageClientImpl::didRelaunchProcess):
(WebKit::PageClientImpl::pageClosed):
(WebKit::PageClientImpl::toolTipChanged):
(WebKit::PageClientImpl::setCursor):
(WebKit::PageClientImpl::setCursorHiddenUntilMouseMoves):
(WebKit::PageClientImpl::didChangeViewportProperties):
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::canUndoRedo):
(WebKit::PageClientImpl::executeUndoRedo):
(WebKit::PageClientImpl::convertToDeviceSpace):
(WebKit::PageClientImpl::convertToUserSpace):
(WebKit::PageClientImpl::screenToWindow):
(WebKit::PageClientImpl::windowToScreen):
(WebKit::PageClientImpl::doneWithKeyEvent):
(WebKit::PageClientImpl::doneWithTouchEvent):
(WebKit::PageClientImpl::createPopupMenuProxy):
(WebKit::PageClientImpl::createContextMenuProxy):
(WebKit::PageClientImpl::createColorChooserProxy):
(WebKit::PageClientImpl::setFindIndicator):
(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
(WebKit::PageClientImpl::didChangeScrollbarsForMainFrame):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
(WebKit::PageClientImpl::customRepresentationZoomFactor):
(WebKit::PageClientImpl::setCustomRepresentationZoomFactor):
(WebKit::PageClientImpl::flashBackingStoreUpdates):
(WebKit::PageClientImpl::findStringInCustomRepresentation):
(WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
(WebKit::PageClientImpl::updateTextInputState):
(WebKit::PageClientImpl::handleDownloadRequest):
(WebKit::PageClientImpl::pageDidRequestScroll):
(WebKit::PageClientImpl::didChangeContentsSize):
(WebKit::PageClientImpl::didRenderFrame):
(WebKit::PageClientImpl::pageTransitionViewportReady):
* UIProcess/efl/PageClientImpl.h: Renamed from Source/WebKit2/UIProcess/API/efl/PageClientImpl.h.
(WebKit):
(PageClientImpl):
(WebKit::PageClientImpl::create):
(WebKit::PageClientImpl::setPageViewportController):
* UIProcess/efl/PageViewportControllerClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/PageViewportControllerClientEfl.cpp.
(WebKit):
(WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
(WebKit::PageViewportControllerClientEfl::~PageViewportControllerClientEfl):
(WebKit::PageViewportControllerClientEfl::drawingArea):
(WebKit::PageViewportControllerClientEfl::setRendererActive):
(WebKit::PageViewportControllerClientEfl::display):
(WebKit::PageViewportControllerClientEfl::updateViewportSize):
(WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
(WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
(WebKit::PageViewportControllerClientEfl::setViewportPosition):
(WebKit::PageViewportControllerClientEfl::setContentsScale):
(WebKit::PageViewportControllerClientEfl::didResumeContent):
(WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
(WebKit::PageViewportControllerClientEfl::didChangeViewportAttributes):
(WebKit::PageViewportControllerClientEfl::setController):
* UIProcess/efl/PageViewportControllerClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/PageViewportControllerClientEfl.h.
(WebKit):
(PageViewportControllerClientEfl):
(WebKit::PageViewportControllerClientEfl::create):
(WebKit::PageViewportControllerClientEfl::viewSize):
(WebKit::PageViewportControllerClientEfl::scaleFactor):
(WebKit::PageViewportControllerClientEfl::scrollPosition):
* UIProcess/efl/VibrationProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/VibrationProvider.cpp.
(Ewk_Vibration_Client):
(Ewk_Vibration_Client::Ewk_Vibration_Client):
(toVibrationProvider):
(vibrateCallback):
(cancelVibrationCallback):
(VibrationProvider::create):
(VibrationProvider::VibrationProvider):
(VibrationProvider::~VibrationProvider):
(VibrationProvider::vibrate):
(VibrationProvider::cancelVibration):
(VibrationProvider::setVibrationClientCallbacks):
* UIProcess/efl/VibrationProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/VibrationProvider.h.
(WebKit):
(VibrationProvider):
* UIProcess/efl/WebKitTextChecker.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/WebKitTextChecker.cpp.
(WebKit):
(WebKit::isContinuousSpellCheckingEnabled):
(WebKit::setContinuousSpellCheckingEnabled):
(WebKit::uniqueSpellDocumentTag):
(WebKit::closeSpellDocumentWithTag):
(WebKit::checkSpellingOfString):
(WebKit::guessesForWord):
(WebKit::learnWord):
(WebKit::ignoreWord):
(WebKit::availableSpellCheckingLanguages):
(WebKit::updateSpellCheckingLanguages):
(WebKit::loadedSpellCheckingLanguages):
* UIProcess/efl/WebKitTextChecker.h: Renamed from Source/WebKit2/UIProcess/API/efl/WebKitTextChecker.h.
(WebKit):

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

7 years agoAllow LoaderStrategy to override the ResourceLoadScheduler
beidson@apple.com [Thu, 25 Oct 2012 17:16:38 +0000 (17:16 +0000)]
Allow LoaderStrategy to override the ResourceLoadScheduler
https://bugs.webkit.org/show_bug.cgi?id=100355

Reviewed by Anders Carlsson.

Source/WebCore:

Allow LoaderStrategy to override the implementation of the ResourceLoadScheduler.
Add a default implementation that just returns the current ResourceLoadScheduler.

No new tests (No behavior change).

Project file stuff:
* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:

"Virtualize" ResourceLoadScheduler to expose build issues in preparation for future virtualization:
* loader/ResourceLoadScheduler.cpp:
(WebCore::ResourceLoadScheduler::~ResourceLoadScheduler):
* loader/ResourceLoadScheduler.h:
(ResourceLoadScheduler):

Add the new method plus a default implementation:
 * loader/LoaderStrategy.cpp:
(WebCore::LoaderStrategy::resourceLoadScheduler):
* loader/LoaderStrategy.h:

When strategies are enabled, use the LoaderStrategy for this:
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::suspendPostAttachCallbacks):
(WebCore::ContainerNode::resumePostAttachCallbacks):

* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::loadNow):

* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::releaseResources):
(WebCore::ResourceLoader::willSendRequest):

* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load):

* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::performPostLoadActions):

Source/WebKit2:

Add a WebKit2 subclass of ResourceLoadScheduler that currently adds no new functionality:
* WebProcess/Network/WebResourceLoadScheduler.cpp:
(WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler):
* WebProcess/Network/WebResourceLoadScheduler.h:

WebProcess hangs on to the default shared WebResourceLoadScheduler:
* WebProcess/WebProcess.h:
(WebKit::WebProcess::webResourceLoadScheduler):

If the NetworkProcess is enabled, return the new WebResourceLoadScheduler:
* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::resourceLoadScheduler):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

* WebKit2.xcodeproj/project.pbxproj:

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

7 years agoUnreviewed. Update my contact info.
kenneth@webkit.org [Thu, 25 Oct 2012 17:09:53 +0000 (17:09 +0000)]
Unreviewed. Update my contact info.

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

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

7 years agoDFG NewArrayBuffer node should keep its data in a structure on the side to free up...
fpizlo@apple.com [Thu, 25 Oct 2012 17:09:42 +0000 (17:09 +0000)]
DFG NewArrayBuffer node should keep its data in a structure on the side to free up one of the opInfos
https://bugs.webkit.org/show_bug.cgi?id=100328

Reviewed by Oliver Hunt.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.h:
(Graph):
* dfg/DFGNode.h:
(NewArrayBufferData):
(DFG):
(JSC::DFG::Node::newArrayBufferData):
(Node):
(JSC::DFG::Node::startConstant):
(JSC::DFG::Node::numConstants):

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

7 years ago[EFL][WK2] Remove some C'ism from EwkView
commit-queue@webkit.org [Thu, 25 Oct 2012 16:55:04 +0000 (16:55 +0000)]
[EFL][WK2] Remove some C'ism from EwkView
https://bugs.webkit.org/show_bug.cgi?id=100370

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Remove a lot of C'ism from EwkView:
- Make more members private and add C++ methods to
EwkViewImpl for the public C API to use
- Use smart pointers when possible instead of raw
ones
- Use C++ naming conventions for callback functions
and define them as static methods in EwkViewImpl.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::onIMFInputSequenceComplete):
(EwkViewImpl::onIMFPreeditSequenceChanged):
(EwkViewImpl::createIMFContext):
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::~EwkViewImpl):
(EwkViewImpl::setCursor):
(EwkViewImpl::setColorPickerColor):
(EwkViewImpl::isFocused):
(EwkViewImpl::isVisible):
(EwkViewImpl::title):
(EwkViewImpl::inputMethodContext):
(EwkViewImpl::themePath):
(EwkViewImpl::setThemePath):
(EwkViewImpl::customTextEncodingName):
(EwkViewImpl::setCustomTextEncodingName):
(EwkViewImpl::setMouseEventsEnabled):
(EwkViewImpl::setTouchEventsEnabled):
(EwkViewImpl::informIconChange):
(EwkViewImpl::requestColorPicker):
(EwkViewImpl::dismissColorPicker):
(EwkViewImpl::updateTextInputState):
(EwkViewImpl::informURLChange):
(EwkViewImpl::onMouseDown):
(EwkViewImpl::onMouseUp):
(EwkViewImpl::onMouseMove):
(EwkViewImpl::feedTouchEvents):
(EwkViewImpl::onTouchDown):
(EwkViewImpl::onTouchUp):
(EwkViewImpl::onTouchMove):
* UIProcess/API/efl/EwkViewImpl.h:
(WebCore):
(EwkViewImpl::ewkContext):
(EwkViewImpl::settings):
(EwkViewImpl):
(EwkViewImpl::url):
(EwkViewImpl::faviconURL):
(EwkViewImpl::mouseEventsEnabled):
(EwkViewImpl::touchEventsEnabled):
* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::isViewVisible):
(WebKit::PageClientImpl::didRelaunchProcess):
(WebKit::PageClientImpl::handleDownloadRequest):
* UIProcess/API/efl/ewk_settings_private.h:
(Ewk_Settings::create):
(Ewk_Settings::Ewk_Settings):
(Ewk_Settings):
* UIProcess/API/efl/ewk_view.cpp:
(_ewk_view_smart_mouse_up):
(_ewk_view_smart_key_down):
(_ewk_view_smart_add):
(ewk_view_context_get):
(ewk_view_url_get):
(ewk_view_icon_url_get):
(ewk_view_settings_get):
(ewk_view_title_get):
(ewk_view_theme_set):
(ewk_view_theme_get):
(ewk_view_setting_encoding_custom_get):
(ewk_view_setting_encoding_custom_set):
(ewk_view_mouse_events_enabled_set):
(ewk_view_mouse_events_enabled_get):
(ewk_view_color_picker_color_set):
(ewk_view_touch_events_enabled_set):
(ewk_view_touch_events_enabled_get):
* UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):

Source/WTF:

Make OwnPtr useable for Ecore_IMF_Context to avoid
using raw pointers in EFL port.

* wtf/OwnPtrCommon.h:
(WTF):
* wtf/PlatformEfl.cmake:
* wtf/efl/OwnPtrEfl.cpp:
(WTF::deleteOwnedPtr):
(WTF):

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

7 years ago[Qt] Unreviewed gardening, skip failing tests to speedup testing.
ossy@webkit.org [Thu, 25 Oct 2012 16:45:00 +0000 (16:45 +0000)]
[Qt] Unreviewed gardening, skip failing tests to speedup testing.

* platform/qt/TestExpectations:

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

7 years agoUnreviewed. Adding myself as a committer.
tdanderson@chromium.org [Thu, 25 Oct 2012 16:40:06 +0000 (16:40 +0000)]
Unreviewed. Adding myself as a committer.

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

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

7 years agoAssertion failure trying to dispatch notification messages
andersca@apple.com [Thu, 25 Oct 2012 16:34:48 +0000 (16:34 +0000)]
Assertion failure trying to dispatch notification messages
https://bugs.webkit.org/show_bug.cgi?id=100387
<rdar://problem/12573195>

Reviewed by Jessie Berlin.

Pass a zero destination ID when sending WebNotificationManagerProxy messages; they are not
used by the UI process and since the WebNotificationManagerProxy message receiver is global
passing a non-zero destination ID would cause the aforementioned assertion failure.

* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::WebNotificationManager::cancel):
(WebKit::WebNotificationManager::clearNotifications):
(WebKit::WebNotificationManager::didDestroyNotification):

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

7 years agoWeb Inspector: inspector tests failing after r132454
yurys@chromium.org [Thu, 25 Oct 2012 16:30:35 +0000 (16:30 +0000)]
Web Inspector: inspector tests failing after r132454
https://bugs.webkit.org/show_bug.cgi?id=100381

Reviewed by Pavel Feldman.

Source/WebCore:

Added implementation for DOMNodeWrapperMap::reportMemoryUsage method,
otherwise no actual pointer is reported which breaks instrumentation.

* bindings/v8/IntrusiveDOMWrapperMap.h:

LayoutTests:

Enable memory instrumentation tests now that the problem is fixed.

* platform/chromium/TestExpectations:

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

7 years agoInit timeout flag in ResourceErrorCF
dominik.rottsches@intel.com [Thu, 25 Oct 2012 16:28:48 +0000 (16:28 +0000)]
Init timeout flag in ResourceErrorCF
https://bugs.webkit.org/show_bug.cgi?id=100349

Reviewed by Alexey Proskuryakov.

Initialize the timeout property to true if the network error was a timeout error.
This is a speculative fix for the XHR timeout test cases failing on Apple Win -
I can't verify this on a local machine.

No new tests, covered by
LayoutTests/http/tests/xmlhttprequest/timeout/*

* platform/network/cf/ResourceErrorCF.cpp:
(WebCore::ResourceError::ResourceError): Init m_timeout from error code.

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

7 years agoUpdate the C++ llint to work with the latest op_resolve... changes.
mark.lam@apple.com [Thu, 25 Oct 2012 16:09:01 +0000 (16:09 +0000)]
Update the C++ llint to work with the latest op_resolve... changes.
https://bugs.webkit.org/show_bug.cgi?id=100345.

Reviewed by Oliver Hunt.

* llint/LowLevelInterpreter.cpp:
(JSC::CLoop::execute):
- emit opcode name as label when not using COMPUTED_GOTOs. The new op_resolve
  opcodes have jumps to these labels.
- declare all opcode labels as UNUSED_LABEL()s to keep the compiler happy
  for opcodes that are not referenced by anyone.
* offlineasm/asm.rb:
- strip llint_ prefix from opcode names used as labels.

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

7 years ago REGRESSION (r131686): Crashes in NSToolTipManager
ap@apple.com [Thu, 25 Oct 2012 16:01:26 +0000 (16:01 +0000)]
    REGRESSION (r131686): Crashes in NSToolTipManager
        https://bugs.webkit.org/show_bug.cgi?id=99792

        Now that NSToolTip related parts of this change have been rolled out, roll out
        the initial crash fix, too. We have no direct evidence that it's to blame, but it
        doesn't serve any specific purpose any more.

        * UIProcess/API/mac/WKView.mm: (-[WKView viewDidMoveToWindow]):

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

7 years ago'resolution' MQ: Printing should use use high resolution images when available
kenneth@webkit.org [Thu, 25 Oct 2012 15:58:21 +0000 (15:58 +0000)]
'resolution' MQ: Printing should use use high resolution images when available
https://bugs.webkit.org/show_bug.cgi?id=100382

Reviewed by Antti Koivisto.

Special case print to not use the dpi of the screen, but one of 300.

Updated the resolution media query test to cover this.

Source/WebCore:

* css/MediaQueryEvaluator.cpp:
(WebCore::resolutionMediaFeatureEval): Update compared decimal points
to three, due to 300 / 96 being equal to 3.125.

LayoutTests:

* fast/media/mq-resolution-expected.txt:
* fast/media/mq-resolution.html:

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

7 years ago[chromium] External FileSystem should use the root path returned by requestFileSystem
kinuko@chromium.org [Thu, 25 Oct 2012 15:55:22 +0000 (15:55 +0000)]
[chromium] External FileSystem should use the root path returned by requestFileSystem
https://bugs.webkit.org/show_bug.cgi?id=100372

Reviewed by Kentaro Hara.

External FileSystem should use the root path returned by
requestFileSystem as other type is doing. Current implementation
completely ignore the returned path.

New tests are to be added in chromium (as the type is only available in chromeos and chrome extensions)

* Modules/filesystem/chromium/DOMFileSystemChromium.cpp:
(WebCore::DOMFileSystemBase::createFileSystemURL):

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

7 years agoCan't easily position the cursor on an empty line in a textarea with touch if touch...
commit-queue@webkit.org [Thu, 25 Oct 2012 15:40:49 +0000 (15:40 +0000)]
Can't easily position the cursor on an empty line in a textarea with touch if touch adjustment is enabled
https://bugs.webkit.org/show_bug.cgi?id=97576

Patch by Kevin Ellis <kevers@chromium.org> on 2012-10-25
Reviewed by Antonio Gomes.

Source/WebCore:

Consolidate touch adjustment candidates that are
editable.  Adjustment becomes coarse being based
on the bounds of the outermost editable element.
This fix allows tap positioning of the text caret
on a blank line immediately above or below another
element.

Test: touchadjustment/editable-content.html

* page/TouchAdjustment.cpp:
(WebCore::TouchAdjustment::compileSubtargetList):
(WebCore::TouchAdjustment::hybridDistanceFunction):

LayoutTests:

Add test to verify that touch adjustment is coarse for
editable content, being based on the bounds of the
editable content and not its children.

* touchadjustment/editable-content-expected.txt: Added.
* touchadjustment/editable-content.html: Added.

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

7 years ago[Qt] Unreviewed gardening, skip tests because TestRunner::overridePreference()
ossy@webkit.org [Thu, 25 Oct 2012 15:33:21 +0000 (15:33 +0000)]
[Qt] Unreviewed gardening, skip tests because TestRunner::overridePreference()
does not support the 'WebKitSupportsMultipleWindows' preference on Qt WK1.

* platform/qt-5.0-wk1/TestExpectations:

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

7 years agoMemory instrumentation: add reportMemoryUsage to ImageObserver interface
yurys@chromium.org [Thu, 25 Oct 2012 15:28:59 +0000 (15:28 +0000)]
Memory instrumentation: add reportMemoryUsage to ImageObserver interface
https://bugs.webkit.org/show_bug.cgi?id=100091

Reviewed by Pavel Feldman.

Added reportMemoryUsage method to ImageObserver to make sure it is reported as
appropriate descendant(with pointer adjusted due to offsets added by inheritance)
rather than as a standalone memory block.

* platform/graphics/ImageObserver.h:
(ImageObserver):

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

7 years ago[EFL][WK2] Memory leak in _ewk_view_preedit_changed()
commit-queue@webkit.org [Thu, 25 Oct 2012 15:19:29 +0000 (15:19 +0000)]
[EFL][WK2] Memory leak in _ewk_view_preedit_changed()
https://bugs.webkit.org/show_bug.cgi?id=100380

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-25
Reviewed by Antonio Gomes.

Fix memory leak in _ewk_view_preedit_changed(). The buffer
returned by ecore_imf_context_preedit_string_get() is never
freed.

* UIProcess/API/efl/EwkViewImpl.cpp:
(_ewk_view_preedit_changed):

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

7 years agoNot reviewed: chromium test expectations updated.
pfeldman@chromium.org [Thu, 25 Oct 2012 14:51:50 +0000 (14:51 +0000)]
Not reviewed: chromium test expectations updated.

* platform/chromium/TestExpectations:

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

7 years ago[EFL][WK2][AC] Regression(132392) infinite loop when displaying certain animations.
commit-queue@webkit.org [Thu, 25 Oct 2012 14:48:41 +0000 (14:48 +0000)]
[EFL][WK2][AC] Regression(132392) infinite loop when displaying certain animations.
https://bugs.webkit.org/show_bug.cgi?id=100288

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

When PageClientImpl::setViewNeedsDisplay is called, start a 0 length timer.
That breaks the synchronous loop we were experiencing when ewk_view_display
was called directly.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::displayTimerFired):
(EwkViewImpl::redrawRegion):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl):

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

7 years ago[Qt] Adjust library name in webkitdirs.pm after r131300.
zeno.albisser@digia.com [Thu, 25 Oct 2012 14:45:32 +0000 (14:45 +0000)]
[Qt] Adjust library name in webkitdirs.pm after r131300.
https://bugs.webkit.org/show_bug.cgi?id=100376

The library was renamed from QtWebKit to QtWebKitWidgets.
run-launcher was still looking for QtWebKit.

Reviewed by Simon Hausmann.

* Scripts/webkitdirs.pm:
(builtDylibPathForName):

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

7 years agoWeb Inspector: [Overrides] Add latitude and longitude labels for the geolocation...
apavlov@chromium.org [Thu, 25 Oct 2012 14:17:39 +0000 (14:17 +0000)]
Web Inspector: [Overrides] Add latitude and longitude labels for the geolocation fields
https://bugs.webkit.org/show_bug.cgi?id=100375

Reviewed by Yury Semikhatsky.

No new tests, a UI change.

* English.lproj/localizedStrings.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):

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

7 years agoAdd setMediaTypeOverride to window.internals.settings
commit-queue@webkit.org [Thu, 25 Oct 2012 14:03:59 +0000 (14:03 +0000)]
Add setMediaTypeOverride to window.internals.settings
https://bugs.webkit.org/show_bug.cgi?id=100249

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

.:

Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for GTK port.

* Source/autotools/symbols.filter:

Source/WebCore:

Added setMediaTypeOverride to window.internals.settings.

Test: fast/media/print-restores-previous-mediatype.html

* WebCore.exp.in: Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for MAC.
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setMediaTypeOverride):
(WebCore):
* page/Settings.h:
(Settings):
(WebCore::Settings::mediaTypeOverride):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setMediaTypeOverride):
(WebCore):
* testing/InternalSettings.h:
(Backup):
(InternalSettings):
* testing/InternalSettings.idl:

Source/WebKit2:

Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for WIN port.

* win/WebKit2.def:

LayoutTests:

Fixed fast/media/print-restores-previous-mediatype.html to use cross-platform
window.internals.settings.setMediaTypeOverride.
Unskipped fast/media/print-restores-previous-mediatype.html for EFL, the test should also work
on other ports but it needs to be checked first.

* fast/media/print-restores-previous-mediatype.html:
* platform/efl/TestExpectations:

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

7 years ago[WK2][EFL] Add ewk_view_pagination_mode_set/get() APIs
commit-queue@webkit.org [Thu, 25 Oct 2012 13:22:19 +0000 (13:22 +0000)]
[WK2][EFL] Add ewk_view_pagination_mode_set/get() APIs
https://bugs.webkit.org/show_bug.cgi?id=100213

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-10-25
Reviewed by Gyuyoung Kim.

Add ewk_view_pagination_mode_set/get() APIs for paginated display.

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_pagination_mode_set):
(ewk_view_pagination_mode_get):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(TEST_F):

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

7 years ago[Chromium] Add supportMultipleWindows setting, needed for Android
mnaganov@chromium.org [Thu, 25 Oct 2012 13:20:32 +0000 (13:20 +0000)]
[Chromium] Add supportMultipleWindows setting, needed for Android
https://bugs.webkit.org/show_bug.cgi?id=99716

Reviewed by Adam Barth.

Add supportMultipleWindows settings for reusing the same view when
opening popups. This is required for emulating the behavior of
Android WebView. Adding into WebCore, as other ports might want to
use this setting in the future.

Source/WebCore:

Tests: fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html
       fast/dom/Window/window-open-no-multiple-windows.html
       fast/forms/post-popup-no-multiple-windows.html

* loader/FrameLoader.cpp:
(WebCore::createWindow):
* page/ContextMenuController.cpp:
(WebCore::openNewWindow):
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setSupportsMultipleWindows):
(WebCore):
* page/Settings.h:
(Settings):
(WebCore::Settings::supportsMultipleWindows):

Source/WebKit/chromium:

* public/WebSettings.h:
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchCreatePage):
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setSupportsMultipleWindows):
(WebKit):
* src/WebSettingsImpl.h:
(WebSettingsImpl):

Tools:

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::overridePreference):
* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::reset):
(WebPreferences::applyTo):
* DumpRenderTree/chromium/WebPreferences.h:
(WebPreferences):

LayoutTests:

* fast/dom/HTMLAnchorElement/anchor-no-multiple-windows-expected.txt: Added.
* fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html: Added.
* fast/dom/Window/window-open-no-multiple-windows-expected.txt: Added.
* fast/dom/Window/window-open-no-multiple-windows.html: Added.
* fast/forms/post-popup-no-multiple-windows-expected.txt: Added.
* fast/forms/post-popup-no-multiple-windows.html: Added.
* platform/chromium/fast/dom/HTMLAnchorElement/anchor-no-multiple-windows-expected.txt: Added.
* platform/chromium/fast/dom/Window/window-open-no-multiple-windows-expected.txt: Added.
* platform/chromium/fast/forms/post-popup-no-multiple-windows-expected.txt: Added.

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

7 years ago[Chromium] Unreviewed rebaseline after https://bugs.webkit.org/show_bug.cgi?id=99874.
fmalita@chromium.org [Thu, 25 Oct 2012 13:05:04 +0000 (13:05 +0000)]
[Chromium] Unreviewed rebaseline after https://bugs.webkit.org/show_bug.cgi?id=99874.

* platform/chromium-mac-lion/svg/zoom/page/zoom-svg-float-border-padding-expected.png: Added.
* platform/chromium-mac-lion/svg/zoom/text/zoom-svg-float-border-padding-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/zoom/page/zoom-svg-float-border-padding-expected.png:
* platform/chromium-mac-snowleopard/svg/zoom/text/zoom-svg-float-border-padding-expected.png:
* platform/chromium-mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
* platform/chromium-mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
* platform/chromium-win/svg/zoom/page/zoom-svg-float-border-padding-expected.png:
* platform/chromium-win/svg/zoom/text/zoom-svg-float-border-padding-expected.png:
* platform/chromium/TestExpectations:

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

7 years ago[EFL][AC] Fix build break when AC is enabled
commit-queue@webkit.org [Thu, 25 Oct 2012 12:47:42 +0000 (12:47 +0000)]
[EFL][AC] Fix build break when AC is enabled
https://bugs.webkit.org/show_bug.cgi?id=100367

Unreviewed build fix after r132405.

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-10-25

* UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):

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

7 years agoUnreviewed, fix Web Inspector frontend compilability
apavlov@chromium.org [Thu, 25 Oct 2012 12:45:28 +0000 (12:45 +0000)]
Unreviewed, fix Web Inspector frontend compilability

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline.prototype._ondragstart):
* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):
(WebInspector.StylePropertyTreeElement.prototype):

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

7 years agoWeb Inspector: Drag and drop property value from Inspector is not working as expected
apavlov@chromium.org [Thu, 25 Oct 2012 12:11:00 +0000 (12:11 +0000)]
Web Inspector: Drag and drop property value from Inspector is not working as expected
https://bugs.webkit.org/show_bug.cgi?id=100040

Reviewed by Vsevolod Vlasov.

Do not start a custom drag for a tree element if there is a non-collapsed selection in the Inspector.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline.prototype._ondragstart):

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

7 years ago[Qt] Pixel tests need rebaseline
kbalazs@webkit.org [Thu, 25 Oct 2012 12:06:08 +0000 (12:06 +0000)]
[Qt] Pixel tests need rebaseline
https://bugs.webkit.org/show_bug.cgi?id=99323

Unreviewed pixel gardening.

Rebase some results for qt-5.0-wk2, mark wrong results as expected fail.

* platform/qt-5.0-wk2/TestExpectations:
* platform/qt-5.0-wk2/compositing/direct-image-compositing-expected.png:
* platform/qt-5.0-wk2/compositing/text-on-scaled-layer-expected.png: Added.
* platform/qt-5.0-wk2/compositing/text-on-scaled-surface-expected.png: Added.
* platform/qt-5.0-wk2/compositing/visibility/visibility-simple-video-layer-expected.png: Added.
* platform/qt-5.0-wk2/css3/filters/effect-drop-shadow-hw-expected.png: Added.
* platform/qt-5.0-wk2/fast/css-generated-content/012-expected.png: Added.
* platform/qt-5.0-wk2/fast/css-generated-content/014-expected.png: Added.
* platform/qt-5.0-wk2/fast/css-generated-content/hover-style-change-expected.png: Added.
* platform/qt-5.0-wk2/fast/css/compare-content-style-expected.png: Added.
* platform/qt-5.0-wk2/fast/forms/box-shadow-override-expected.png: Added.
* platform/qt-5.0-wk2/fast/images/imagemap-focus-ring-outline-color-not-inherited-from-map-expected.png: Added.
* platform/qt-5.0-wk2/fast/inline-block/overflow-clip-expected.png: Added.
* platform/qt-5.0-wk2/fast/repaint/line-flow-with-floats-in-regions-expected.png: Added.
* platform/qt-5.0-wk2/http/tests/navigation/javascriptlink-frames-expected.png: Added.
* platform/qt-5.0-wk2/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png: Added.
* platform/qt-5.0-wk2/svg/W3C-SVG-1.1-SE/paths-dom-02-f-expected.png: Added.
* platform/qt-5.0-wk2/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png: Removed.
* platform/qt-5.0-wk2/svg/W3C-SVG-1.1-SE/text-tspan-02-b-expected.png: Added.
* platform/qt-5.0-wk2/svg/as-image/img-preserveAspectRatio-support-1-expected.png: Added.
* platform/qt-5.0-wk2/svg/custom/js-late-pattern-and-object-creation-expected.png: Added.
* platform/qt-5.0-wk2/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
* platform/qt/TestExpectations:
* platform/qt/ietestcenter/css3/bordersbackgrounds/border-radius-content-edge-001-expected.png:

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

7 years ago[EFL] Gardening after r132394
commit-queue@webkit.org [Thu, 25 Oct 2012 12:01:07 +0000 (12:01 +0000)]
[EFL] Gardening after r132394
https://bugs.webkit.org/show_bug.cgi?id=100365

Unreviewed gardening.

Skipping of newly added compositing/tiling/backface-preserve-3d-tiled.html
test fail on EFL port due to missing AC support.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-10-25

* platform/efl/TestExpectations:

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

7 years ago[EFL][WK2] JavaScript popups are not focused when opened
commit-queue@webkit.org [Thu, 25 Oct 2012 11:57:48 +0000 (11:57 +0000)]
[EFL][WK2] JavaScript popups are not focused when opened
https://bugs.webkit.org/show_bug.cgi?id=100354

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Move focus to the JavaScript popups when opened so that the key events
are forwarded to the popups instead of web view.

* MiniBrowser/efl/main.c:
(on_javascript_alert):
(on_javascript_confirm):
(on_javascript_prompt):

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

7 years ago[EFL][QT] Remove test which is not exist
commit-queue@webkit.org [Thu, 25 Oct 2012 11:57:44 +0000 (11:57 +0000)]
[EFL][QT] Remove test which is not exist
https://bugs.webkit.org/show_bug.cgi?id=100366

Unreviewed. fast/dom/shadow/athost-atrules.html has been removed after r132403.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-10-25

* platform/efl-wk1/TestExpectations:
* platform/qt/TestExpectations:

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

7 years ago[EFL][WK2] Gardening after r132386
commit-queue@webkit.org [Thu, 25 Oct 2012 11:39:33 +0000 (11:39 +0000)]
[EFL][WK2] Gardening after r132386
https://bugs.webkit.org/show_bug.cgi?id=100362

Unreviewed gardening.

Skipped crashing fast/dom/nested-script-exceptions.html, networkinformation/multiple-frames.html,
networkinformation/basic-all-types-of-events.html, networkinformation/updates.html, networkinformation/add-listener-from-callback.html,
networkinformation/basic-operation.html, svg/foreignObject/viewport-foreignobject-crash.html for EFL WK2.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-10-25

* platform/efl-wk2/TestExpectations:

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

7 years ago[EFL][WK2] Add missing namespace.
commit-queue@webkit.org [Thu, 25 Oct 2012 11:27:09 +0000 (11:27 +0000)]
[EFL][WK2] Add missing namespace.
https://bugs.webkit.org/show_bug.cgi?id=100251

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Add 'WebKit' namespace for BatteryProvider, NetworkInfoProvider and
VibrationProvider.

* UIProcess/API/efl/BatteryProvider.h:
(WebKit):
* UIProcess/API/efl/NetworkInfoProvider.cpp:
* UIProcess/API/efl/NetworkInfoProvider.h:
(WebKit):
* UIProcess/API/efl/VibrationProvider.cpp:
* UIProcess/API/efl/VibrationProvider.h:
(WebKit):
* UIProcess/API/efl/ewk_context_private.h:
(WebKit):
(Ewk_Context):

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

7 years ago[Qt] Detach WebContext's clients from QtWebContext
jocelyn.turcotte@digia.com [Thu, 25 Oct 2012 11:16:37 +0000 (11:16 +0000)]
[Qt] Detach WebContext's clients from QtWebContext
https://bugs.webkit.org/show_bug.cgi?id=100224

Reviewed by Simon Hausmann.

The lifetime of WebContext isn't bound to QtWebContext and we wouldn't
keep a reference to our WebContext and would create a new one if a new
QQuickWebView/QtWebContext was created after we destroyed our QtWebContext.
This would cause a new WebContext and a new web process and somehow the
new WebContext could pick the IPC messages from the old WebProcess
and this would cause the new download client to receive messages about
downloads he doesn't know about and crash.

We assumed in the past that we would need multiple WebContext to allow
multiple web processes but this assumption doesn't hold anymore with
the work on ProcessModelMultipleSecondaryProcesses.
This patch enforces the use of a single WebContext by:
- Holding a single instance of QtWebIconDatabaseClient and QtDownloadManager
statically in QtWebContext
- Removing the context ID from QWebIconImageProvider's URLs
- Using QtWebContext as a temporary wrapper handle on WebContext to
initialize the WebContext's clients and allow us creating the first web page

platformInvalidateContext is used to clean up static global instances
when the WebContext is getting destroyed.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::handleDownloadRequest):
* UIProcess/API/qt/qwebiconimageprovider.cpp:
(QWebIconImageProvider::iconURLForPageURLInContext):
(QWebIconImageProvider::requestImage):
* UIProcess/qt/QtWebContext.cpp:
(WebKit):
(WebKit::QtWebContext::QtWebContext):
(WebKit::QtWebContext::~QtWebContext):
(WebKit::QtWebContext::create):
(WebKit::QtWebContext::defaultContext):
(WebKit::QtWebContext::downloadManager):
(WebKit::QtWebContext::iconDatabase):
(WebKit::QtWebContext::invalidateContext):
* UIProcess/qt/QtWebContext.h:
(QtWebContext):
* UIProcess/qt/QtWebIconDatabaseClient.cpp:
(WebKit::QtWebIconDatabaseClient::QtWebIconDatabaseClient):
* UIProcess/qt/QtWebIconDatabaseClient.h:
(WebKit):
(QtWebIconDatabaseClient):
* UIProcess/qt/WebContextQt.cpp:
(WebKit::WebContext::platformInvalidateContext):

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

7 years agoWeb Inspector: NMI instrument InspectorDebuggerAgent. It uses a lot of memory on...
loislo@chromium.org [Thu, 25 Oct 2012 10:53:54 +0000 (10:53 +0000)]
Web Inspector: NMI instrument InspectorDebuggerAgent. It uses a lot of memory on heavy js sites because it keeps all the scripts in a map.
https://bugs.webkit.org/show_bug.cgi?id=100340

Reviewed by Yury Semikhatsky.

* dom/WebCoreMemoryInstrumentation.cpp:
(WebCore):
* dom/WebCoreMemoryInstrumentation.h:
(WebCoreMemoryTypes):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::reportMemoryUsage):
(WebCore):
(WebCore::ScriptDebugListener::Script::reportMemoryUsage):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):
* inspector/ScriptDebugListener.h:
(Script):

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

7 years ago[Qt] Make the context injected bundle client static
jocelyn.turcotte@digia.com [Thu, 25 Oct 2012 10:43:33 +0000 (10:43 +0000)]
[Qt] Make the context injected bundle client static
https://bugs.webkit.org/show_bug.cgi?id=100223

Reviewed by Kenneth Rohde Christiansen.

It doesn't need any data from QtWebContext.

* UIProcess/qt/QtWebContext.cpp:
(WebKit::didReceiveMessageFromInjectedBundle):
(WebKit):
(WebKit::initializeContextInjectedBundleClient):
(WebKit::QtWebContext::defaultContext):
* UIProcess/qt/QtWebContext.h:
(QtWebContext):

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

7 years ago[V8] We can handle ActiveDOMNodes and DOMNodes in the same GC visitor
abarth@webkit.org [Thu, 25 Oct 2012 09:47:48 +0000 (09:47 +0000)]
[V8] We can handle ActiveDOMNodes and DOMNodes in the same GC visitor
https://bugs.webkit.org/show_bug.cgi?id=100351

Reviewed by Eric Seidel.

There is no reason to handle active DOM nodes in a separate pass from
regular DOM nodes anymore.

* bindings/v8/V8DOMMap.cpp:
* bindings/v8/V8DOMMap.h:
(WebCore):
* bindings/v8/V8GCController.cpp:
(WebCore::ActiveDOMObjectPrologueVisitor::visitDOMWrapper):
(WebCore::NodeVisitor::NodeVisitor):
(NodeVisitor):
(WebCore::NodeVisitor::visitNodeWrapper):
(WebCore::V8GCController::majorGCPrologue):

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

7 years ago[EFL][WK2] Get rid of Ewk_View private C API (Part 2)
commit-queue@webkit.org [Thu, 25 Oct 2012 09:32:40 +0000 (09:32 +0000)]
[EFL][WK2] Get rid of Ewk_View private C API (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=100331

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Convert most of the remaining Ewk_View private C API
into C++ methods in EwkViewImpl class. Only one private
C function remains but it will be taken care of in a
later patch to clean up the view construction code.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::addToPageViewMap):
(EwkViewImpl::removeFromPageViewMap):
(EwkViewImpl::viewFromPageViewMap):
(EwkViewImpl::fromEvasObject):
(EwkViewImpl::informLoadFinished):
(EwkViewImpl::informProvisionalLoadRedirect):
(EwkViewImpl::informProvisionalLoadStarted):
(EwkViewImpl::informWebProcessCrashed):
(EwkViewImpl::informContentsSizeChange):
(EwkViewImpl::requestPopupMenu):
(EwkViewImpl::requestJSAlertPopup):
(EwkViewImpl::requestJSConfirmPopup):
(EwkViewImpl::requestJSPromptPopup):
(EwkViewImpl::informDatabaseQuotaReached):
(EwkViewImpl::updateTextInputState):
(EwkViewImpl::informURLChange):
(EwkViewImpl::createNewPage):
(EwkViewImpl::closePage):
* UIProcess/API/efl/EwkViewImpl.h:
(WebKit):
(EwkViewImpl):
* UIProcess/API/efl/PageClientImpl.cpp:
(WebKit::PageClientImpl::processDidCrash):
(WebKit::PageClientImpl::createPopupMenuProxy):
(WebKit::PageClientImpl::updateTextInputState):
(WebKit::PageClientImpl::didChangeContentsSize):
* UIProcess/API/efl/ewk_view.cpp:
(_ewk_view_smart_del):
(_ewk_view_initialize):
(ewk_view_url_set):
(ewk_view_reload):
(ewk_view_reload_bypass_cache):
(ewk_view_html_string_load):
* UIProcess/API/efl/ewk_view_private.h:
* UIProcess/efl/ContextHistoryClientEfl.cpp:
(WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
(WebKit::ContextHistoryClientEfl::didPerformClientRedirect):
(WebKit::ContextHistoryClientEfl::didPerformServerRedirect):
(WebKit::ContextHistoryClientEfl::didUpdateHistoryTitle):
* UIProcess/efl/FindClientEfl.cpp:
* UIProcess/efl/FormClientEfl.cpp:
* UIProcess/efl/PageLoadClientEfl.cpp:
(WebKit::PageLoadClientEfl::didSameDocumentNavigationForFrame):
* UIProcess/efl/PageLoadClientEfl.h:
* UIProcess/efl/PagePolicyClientEfl.cpp:
* UIProcess/efl/PagePolicyClientEfl.h:
* UIProcess/efl/PageUIClientEfl.cpp:
(WebKit::PageUIClientEfl::closePage):
(WebKit::PageUIClientEfl::createNewPage):
(WebKit::PageUIClientEfl::runJavaScriptAlert):
(WebKit::PageUIClientEfl::runJavaScriptConfirm):
(WebKit::PageUIClientEfl::runJavaScriptPrompt):
(WebKit::PageUIClientEfl::exceededDatabaseQuota):
* UIProcess/efl/PageUIClientEfl.h:
* UIProcess/efl/ResourceLoadClientEfl.h:
* UIProcess/efl/WebPopupMenuProxyEfl.cpp:
(WebKit::WebPopupMenuProxyEfl::WebPopupMenuProxyEfl):
(WebKit::WebPopupMenuProxyEfl::showPopupMenu):
(WebKit::WebPopupMenuProxyEfl::hidePopupMenu):
* UIProcess/efl/WebPopupMenuProxyEfl.h:
(WebKit::WebPopupMenuProxyEfl::create):
(WebPopupMenuProxyEfl):

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

7 years agoWeb Inspector: Improper out-of-order call on a rule that is being removed from the...
apavlov@chromium.org [Thu, 25 Oct 2012 09:32:16 +0000 (09:32 +0000)]
Web Inspector: Improper out-of-order call on a rule that is being removed from the stylesheet.
https://bugs.webkit.org/show_bug.cgi?id=100357

Reviewed by Vsevolod Vlasov.

* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::deleteRule):

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

7 years agoLayout Test fast/media/w3c/test_media_queries.html is slow on Chromium debug bots...
commit-queue@webkit.org [Thu, 25 Oct 2012 09:15:29 +0000 (09:15 +0000)]
Layout Test fast/media/w3c/test_media_queries.html is slow on Chromium debug bots after r132352
https://bugs.webkit.org/show_bug.cgi?id=100272

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Test if resolution media query is supported before identifying dpi of the media.

* fast/media/w3c/test_media_queries.html:

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

7 years ago[Qt] Unreviewed gardening.
kkristof@inf.u-szeged.hu [Thu, 25 Oct 2012 08:48:46 +0000 (08:48 +0000)]
[Qt] Unreviewed gardening.

Unskip tests that are not exist already.

Patch by Nandor Huszka <hnandor@inf.u-szeged.hu> on 2012-10-25

* platform/qt-5.0-wk2/TestExpectations:

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

7 years ago[Qt] Unreviewed gardening.
kkristof@inf.u-szeged.hu [Thu, 25 Oct 2012 08:38:04 +0000 (08:38 +0000)]
[Qt] Unreviewed gardening.

Skip a new failing test introduced in r132394.

Patch by Nandor Huszka <hnandor@inf.u-szeged.hu> on 2012-10-25

* platform/qt-5.0-wk2/TestExpectations:

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

7 years ago[V8] DOMDataStoreHandle serves no purpose and can be removed
abarth@webkit.org [Thu, 25 Oct 2012 08:15:03 +0000 (08:15 +0000)]
[V8] DOMDataStoreHandle serves no purpose and can be removed
https://bugs.webkit.org/show_bug.cgi?id=100333

Reviewed by Eric Seidel.

After https://bugs.webkit.org/show_bug.cgi?id=100316,
DOMDataStoreHandle is just a glorified OwnPtr.

* bindings/v8/DOMWrapperWorld.h:
(WebCore::DOMWrapperWorld::domDataStore):
(DOMWrapperWorld):
(WebCore::DOMWrapperWorld::DOMWrapperWorld):
* bindings/v8/V8DOMMap.cpp:
* bindings/v8/V8DOMMap.h:

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

7 years ago[EFL][AC] Unreviewed, fix build break when AC is enabled
joone.hur@intel.com [Thu, 25 Oct 2012 07:44:22 +0000 (07:44 +0000)]
[EFL][AC] Unreviewed, fix build break when AC is enabled

Fix build break after r132405.

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::enterAcceleratedCompositingMode):
* UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
(WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
* UIProcess/API/efl/ewk_view.cpp:
(_ewk_view_smart_calculate):

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

7 years agoRemove dead Node::isBlockFlowOrBlockTable
commit-queue@webkit.org [Thu, 25 Oct 2012 07:34:35 +0000 (07:34 +0000)]
Remove dead Node::isBlockFlowOrBlockTable
https://bugs.webkit.org/show_bug.cgi?id=100336

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-10-25
Reviewed by Eric Seidel.

Nothing uses Node::isBlockFlowOrBlockTable anymore so remove it.

No new tests needed, just removing dead code.

* dom/Node.cpp:
* dom/Node.h:
(Node):

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

7 years agoWeb Inspector: Fix "check-inspector-strings" script and fix localized strings.
commit-queue@webkit.org [Thu, 25 Oct 2012 07:32:35 +0000 (07:32 +0000)]
Web Inspector: Fix "check-inspector-strings" script and fix localized strings.
https://bugs.webkit.org/show_bug.cgi?id=100090

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-10-25
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Fixed localized strings table.

* English.lproj/localizedStrings.js: Added missing, removed orhans.
* inspector/front-end/CSSNamedFlowView.js: Removed tailing whitespaces.
* inspector/front-end/NativeMemorySnapshotView.js:
Removed double localization.

Tools:

Script "check-inspector-strings" seems to be broken.
Fixed it, refined search algorithm.

* Scripts/check-inspector-strings: Fixed and refined.

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

7 years ago[V8] We can merge DOMDataStore, ScopedDOMDataStore, and StaticDOMDataStore into one...
abarth@webkit.org [Thu, 25 Oct 2012 07:14:23 +0000 (07:14 +0000)]
[V8] We can merge DOMDataStore, ScopedDOMDataStore, and StaticDOMDataStore into one class
https://bugs.webkit.org/show_bug.cgi?id=100316

Reviewed by Eric Seidel.

Prior to this patch, DOMDataStore had two subclasses,
ScopedDOMDataStore and StaticDOMDataStore, which used slighly different
wrapper map base classes and had different lifetimes. This patch
unifies all these classes into DOMDataStore itself. This makes this
code much more straightforward.

* WebCore.gypi:
* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::DOMDataStore):
(WebCore::DOMDataStore::~DOMDataStore):
(WebCore::DOMDataStore::current):
(WebCore::DOMDataStore::reportMemoryUsage):
* bindings/v8/DOMDataStore.h:
(DOMDataStore):
(WebCore::DOMDataStore::domNodeMap):
(WebCore::DOMDataStore::activeDomNodeMap):
(WebCore::DOMDataStore::domObjectMap):
(WebCore::DOMDataStore::activeDomObjectMap):
* bindings/v8/ScopedDOMDataStore.cpp: Removed.
* bindings/v8/ScopedDOMDataStore.h: Removed.
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::neuterBinding):
* bindings/v8/StaticDOMDataStore.cpp: Removed.
* bindings/v8/StaticDOMDataStore.h: Removed.
* bindings/v8/V8DOMMap.cpp:
(WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
(WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
(WebCore::visitActiveDOMNodes):
(WebCore::visitDOMObjects):
(WebCore::visitActiveDOMObjects):
* bindings/v8/V8DOMMap.h:
(WebCore):
* bindings/v8/V8PerIsolateData.h:
(V8PerIsolateData):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::WorkerScriptController):
(WebCore::WorkerScriptController::~WorkerScriptController):
* bindings/v8/WorkerScriptController.h:
(WorkerScriptController):

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

7 years ago[Qt] Unreviewed gardening, skip a new failing test.
ossy@webkit.org [Thu, 25 Oct 2012 06:54:23 +0000 (06:54 +0000)]
[Qt] Unreviewed gardening, skip a new failing test.

* platform/qt/TestExpectations:

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

7 years agoMinimize CSS rulesets for multiple-fields input
tkent@chromium.org [Thu, 25 Oct 2012 06:47:39 +0000 (06:47 +0000)]
Minimize CSS rulesets for multiple-fields input
https://bugs.webkit.org/show_bug.cgi?id=100198

Reviewed by Kentaro Hara.

- Unify rulesets for input::-webkit-datetime-edit-*-field.
 input::-webkit-datetime-edit-*-field had identical ruleset.

- Move some rulesets near to related rulesets.
 Move -webkit-datetime-edit-*-field:focus nearby the new unified ruleset.
 Move input::-webkit-datetime-edit-second-field[readonly] nearby
input::-webkit-datetime-edit-minute-field[readonly].

No new tests. This shouldn't make any behavior change.

* css/html.css:
(input::-webkit-datetime-edit-year-field):
(input::-webkit-datetime-edit-year-field:focus):
(input::-webkit-datetime-edit-second-field[readonly]):

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

7 years agoREGRESSION(r132291): Crash in BaseMultipleFieldsDateAndTimeInputType
tkent@chromium.org [Thu, 25 Oct 2012 06:42:27 +0000 (06:42 +0000)]
REGRESSION(r132291): Crash in BaseMultipleFieldsDateAndTimeInputType
https://bugs.webkit.org/show_bug.cgi?id=100326

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/forms/time-multiple-fields/time-multiple-fields-change-type.html

* html/BaseMultipleFieldsDateAndTimeInputType.cpp:
(WebCore::BaseMultipleFieldsDateAndTimeInputType::destroyShadowSubtree):
We need to disconnect m_spinButtonElement before destructing the UA shadow tree.

LayoutTests:

* fast/forms/time-multiple-fields/time-multiple-fields-change-type-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-change-type.html: Added.

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

7 years agoNot reviewed: updating chromium TestExpectations for the roll.
pfeldman@chromium.org [Thu, 25 Oct 2012 06:38:20 +0000 (06:38 +0000)]
Not reviewed: updating chromium TestExpectations for the roll.

* platform/chromium/TestExpectations:

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

7 years agoNot reviewed: updating chromium TestExpectations for the roll.
pfeldman@chromium.org [Thu, 25 Oct 2012 06:32:24 +0000 (06:32 +0000)]
Not reviewed: updating chromium TestExpectations for the roll.

* platform/chromium/TestExpectations:

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

7 years ago[chromium] Add textureWidth() and textureHeight() to WebVideoFrame
commit-queue@webkit.org [Thu, 25 Oct 2012 06:31:52 +0000 (06:31 +0000)]
[chromium] Add textureWidth() and textureHeight() to WebVideoFrame
https://bugs.webkit.org/show_bug.cgi?id=100042

Patch by John Sheu <sheu@google.com> on 2012-10-24
Reviewed by James Robinson.

It might be the case that the visible portion of a video frame isn't the
entire texture size, e.g. for cropping.  We'll need accessors in
WebVideoFrame to be able to query both the underlying texture dimensions
and the subrect which is supposed to be visible.

This is presently a no-op change.  Once Chromium changes are in, I will
remove the superseded parts of the WebVideoFrame interface.

* chromium/public/WebVideoFrame.h:
(WebKit::WebVideoFrame::visibleRect);
(WebKit::WebVideoFrame::textureSize);

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

7 years ago[V8] DOMData is no longer needed
abarth@webkit.org [Thu, 25 Oct 2012 06:06:55 +0000 (06:06 +0000)]
[V8] DOMData is no longer needed
https://bugs.webkit.org/show_bug.cgi?id=100313

Reviewed by Eric Seidel.

This class serves no purpose anymore and can be deleted.

* WebCore.gypi:
* bindings/v8/DOMData.cpp: Removed.
* bindings/v8/DOMData.h: Removed.
* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::current):
* bindings/v8/DOMDataStore.h:
(WebCore):
(DOMDataStore):
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::neuterBinding):
* bindings/v8/V8DOMMap.cpp:
(WebCore::getDOMNodeMap):
(WebCore::getActiveDOMNodeMap):
(WebCore::getDOMObjectMap):
(WebCore::getActiveDOMObjectMap):
(WebCore::removeAllDOMObjects):
(WebCore::visitActiveDOMNodes):
(WebCore::visitDOMObjects):
(WebCore::visitActiveDOMObjects):

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

7 years agoNot reviewed: platform/chromium/TestExpectations lint.
pfeldman@chromium.org [Thu, 25 Oct 2012 06:03:40 +0000 (06:03 +0000)]
Not reviewed: platform/chromium/TestExpectations lint.

* platform/chromium/TestExpectations:

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

7 years agoRefactor LLInt64 to distinguish the pointer operations from the 64-bit integer operations
yuqiang.xian@intel.com [Thu, 25 Oct 2012 05:24:39 +0000 (05:24 +0000)]
Refactor LLInt64 to distinguish the pointer operations from the 64-bit integer operations
https://bugs.webkit.org/show_bug.cgi?id=100321

Reviewed by Filip Pizlo.

We have refactored the MacroAssembler and JIT compilers to distinguish
the pointer operations from the 64-bit integer operations (see bug #99154).
Now we want to do the similar work for LLInt, and the goal is same as
the one mentioned in 99154.

This is the first part of the modification: in the offline assembler,
adding the support of the "<foo>q" instructions which will be used for
64-bit integer operations.

* llint/LowLevelInterpreter.cpp:
(JSC::CLoop::execute):
* offlineasm/cloop.rb:
* offlineasm/instructions.rb:
* offlineasm/x86.rb:

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

7 years agoSort an Xcode project file.
tkent@chromium.org [Thu, 25 Oct 2012 05:13:38 +0000 (05:13 +0000)]
Sort an Xcode project file.

* WebCore.xcodeproj/project.pbxproj: Sorted.

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

7 years ago[BlackBerry] ASSERT(!needsOneShotDrawingSynchronization()) failed in commitRootLayerI...
commit-queue@webkit.org [Thu, 25 Oct 2012 03:41:59 +0000 (03:41 +0000)]
[BlackBerry] ASSERT(!needsOneShotDrawingSynchronization()) failed in commitRootLayerIfNeeded()
https://bugs.webkit.org/show_bug.cgi?id=100214

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-10-24
Reviewed by Rob Buis.

ViewportSize has been changed before committing root layer, it asserts
that it needs relayout and render if needed before committing if it
Needs One Shot Drawing Synchronization.
This patch calls requestLayoutIfNeeded() when resumeScreenAndBackingStoreUpdates().

Fix a coding style in the BackingStore.cpp as well.

Reviewed internally by Arvid Nilsson.
PR #230253

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):

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

7 years agoRebaseline some sputnik unicode failed cases.
commit-queue@webkit.org [Thu, 25 Oct 2012 03:07:56 +0000 (03:07 +0000)]
Rebaseline some sputnik unicode failed cases.
https://bugs.webkit.org/show_bug.cgi?id=99976

Unreviewed rebaseline.

According to BUG 93103, seems these four test cases have different results after libicu 4.6 version.
As Ubuntu 12.04 installs 4.8 and mac has same result with windows, expected results on BUG 93103 could replace common result file except chromium-mac-snowleopard.

Patch by Kangil Han <kangil.han@samsung.com> on 2012-10-24

* platform/chromium/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Removed.
* platform/chromium/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Removed.
* platform/chromium/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Removed.
* platform/chromium/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Removed.
* platform/efl/TestExpectations:
* platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Removed.
* platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Removed.
* platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Removed.
* platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Removed.
* platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Removed.
* platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Removed.
* platform/mac-snowleopard/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Removed.
* platform/mac/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Removed.
* platform/mac/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Removed.
* platform/mac/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Removed.
* platform/mac/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Removed.
* sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt:
* sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt:
* sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt:
* sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt:

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

7 years ago[V8] AbstractWeakReferenceMap is unnecessarily general and complex
abarth@webkit.org [Thu, 25 Oct 2012 03:07:44 +0000 (03:07 +0000)]
[V8] AbstractWeakReferenceMap is unnecessarily general and complex
https://bugs.webkit.org/show_bug.cgi?id=100175

Reviewed by Eric Seidel.

Before this patch, AbstractWeakReferenceMap served two masters:

1) DOM wrappers
2) NPV8 function templates

These two uses cases pushed AbstractWeakReferenceMap to be more general
and complex that needed. This patch separates these two uses cases into
two separate classes. V8NPTemplateMap is all of 40 lines of code. It's
not worth complicating the DOM wrapper code path to share that tiny
amount of code.

The other thing this patch does is store a pointer to the DOM wrapper
map as the weak callback context object. That means we no longer need
to search through all the wrapper maps in order to find the map that
contains this particular DOM wrapper.

* WebCore.gypi:
* bindings/v8/DOMData.cpp:
* bindings/v8/DOMData.h:
(DOMData):
* bindings/v8/DOMDataStore.cpp:
    - Delete all these complicated weak callback functions. The weak
      callback functions are now an order of magnitude simpler and
      declared as private member functions on the wrapper map.
* bindings/v8/DOMDataStore.h:
(WebCore::DOMDataStore::domNodeMap):
(WebCore::DOMDataStore::activeDomNodeMap):
(DOMDataStore):
    - We now have a consistent type to use for all these wrapper maps.
      Both the hash map and the intrusive map derive from
      DOMWrapperMap (with a single template parameter).
* bindings/v8/DOMWrapperMap.h: Added.
(WebCore):
(DOMWrapperVisitor):
    - The visitor is no longer an inner class. It's just a top-level
      class that does the same thing.
(DOMWrapperMap):
    - The abstract interface for DOMWrapperMap has about half as many
      functions as the old AbstractWeakReferenceMap because the two use
      cases are disentangled.
(WebCore::DOMWrapperMap::~DOMWrapperMap):
(DOMWrapperHashMap):
    - This is a concrete instance of DOMWrapperMap that uses a hash map.
(WebCore::DOMWrapperHashMap::DOMWrapperHashMap):
(WebCore::DOMWrapperHashMap::remove):
(WebCore::DOMWrapperHashMap::defaultWeakCallback):
    - Notice that the context parameter now points to the hashmap
      itself rather than to the native object. Now that we don't need
      to handle the NPAPI case, we can recover the native object from
      the wrapper using toNative. The assert in set() ensures that this
      always works.
* bindings/v8/DOMWrapperWorld.h:
* bindings/v8/IntrusiveDOMWrapperMap.h:
    - These classes are now simplified because they need to implement
      fewer functions.
(WebCore::DOMNodeWrapperMap::weakCallback):
    - For this weak callback, we still use the native object as the
      context parameter. We could also recover the native object from
      the wrapper, which means this context parameter is available to
      do other work.
* bindings/v8/ScopedDOMDataStore.cpp:
(WebCore::ScopedDOMDataStore::ScopedDOMDataStore):
    - This code no longer needs to have knowledge of which weak
      callbacks these objects use.
(WebCore::ScopedDOMDataStore::~ScopedDOMDataStore):
    - We need to clear the maps before deleting them because there are
      still JavaScript objects that have references to the map in their
      weak callback parameter. Previously, we handled this case because
      we would search all the wrapper maps and fail to find the wrapper.
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::visitExternalArrays):
* bindings/v8/StaticDOMDataStore.cpp:
    - This code no longer needs to have knowledge of which weak
      callback these maps use.
* bindings/v8/StaticDOMDataStore.h:
(StaticDOMDataStore):
* bindings/v8/V8DOMMap.cpp:
(WebCore::getDOMNodeMap):
(WebCore::getActiveDOMNodeMap):
(WebCore::removeAllDOMObjects):
    - Rather than using some complicated visitor pattern, we can now
      just call clear() directly on the maps to remove all the objects.
(WebCore::visitActiveDOMNodes):
(WebCore::visitDOMObjects):
(WebCore::visitActiveDOMObjects):
* bindings/v8/V8DOMMap.h:
(WebCore):
    - Delete the old versions of these classes.
(DOMDataStoreHandle):
    - Style nit: one-argument constructors should be marked explicit.
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::domWrapperType):
    - I moved this logic into WrapperTypeInfo.h to avoid a circular
      header dependency.
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::getCachedWrapper):
* bindings/v8/V8GCController.cpp:
    - EnsureWeakDOMNodeVisitor is no longer used (or needed since we no
      longer clear the weak callbacks in V8GCController).
* bindings/v8/V8NPObject.cpp:
(V8NPTemplateMap):
    - staticTemplateMap is no longer an instance of WeakReferenceMap.
      Instead, this patch just implements the functionality we need
      here directly.
(WebCore::V8NPTemplateMap::get):
(WebCore::V8NPTemplateMap::set):
(WebCore::V8NPTemplateMap::sharedInstance):
(WebCore::V8NPTemplateMap::weakCallback):
(WebCore::V8NPTemplateMap::dispose):
(WebCore::npObjectGetProperty):
(WebCore):
(WebCore::staticNPObjectMap):
(WebCore::weakNPObjectCallback):
    - DOMWrapperMap no longer exposes a "forget" function. Instead, we
      just use the more basic "remove" and "Dispose" operations to do
      the same thing. This is possible now because we no longer have
      "removeIfPossible" to support searching all the wrapper maps for
      the one that has the right wrapper.
(WebCore::createV8ObjectForNPObject):
    - DOMWrapperMap No longer has a "contains" function. Instead, we
      use get, which actually makes this code more efficient because we
      only do one hash map lookup.
(WebCore::forgetV8ObjectForNPObject):
    - The changes here are a combination of the two sorts of changes
      above.
* bindings/v8/WrapperTypeInfo.h:
(WebCore::toNative):
(WebCore::toWrapperTypeInfo):
    - The patch moves these functions into this header to avoid a
      circular header dependency.

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

7 years ago[BlackBerry] Geolocation is segfaulting
commit-queue@webkit.org [Thu, 25 Oct 2012 02:01:16 +0000 (02:01 +0000)]
[BlackBerry] Geolocation is segfaulting
https://bugs.webkit.org/show_bug.cgi?id=100305

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

We weren't wrapping the Geolocation object in a RefPtr when we call setIsAllowed in
GeolocationClientBlackBerry::onPermission.

This patch also removes all references of the Geolocation object in WebPageClientImpl.
One RefPtr<Geolocation> is used to store the reference of the WebCore object on our port.

We don't need a mapping between origin -> context of Geolocation because in our port,
one WebPage.cpp contains one GeolocationController only.

* Api/WebPageClient.h:
* WebCoreSupport/GeolocationClientBlackBerry.cpp:
(frameOrigin):
(GeolocationClientBlackBerry::requestPermission):
(GeolocationClientBlackBerry::cancelPermissionRequest):
(GeolocationClientBlackBerry::onPermission):
* WebCoreSupport/GeolocationClientBlackBerry.h:
(GeolocationClientBlackBerry):

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

7 years agonrwt: fix a couple of minor crashing issues under cygwin
dpranke@chromium.org [Thu, 25 Oct 2012 01:44:05 +0000 (01:44 +0000)]
nrwt: fix a couple of minor crashing issues under cygwin
https://bugs.webkit.org/show_bug.cgi?id=100309

Reviewed by Ojan Vafai.

Cygwin was crashing on a null object reference and then
an oserror in kill().

* Scripts/webkitpy/common/system/executive.py:
(Executive.kill_process):
* Scripts/webkitpy/layout_tests/port/server_process.py:
(ServerProcess.stop):

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

7 years ago[cairo] unneeded FloatRect object creation in BitmapImage::draw
commit-queue@webkit.org [Thu, 25 Oct 2012 01:26:03 +0000 (01:26 +0000)]
[cairo] unneeded FloatRect object creation in BitmapImage::draw
https://bugs.webkit.org/show_bug.cgi?id=100298

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-10-24
Reviewed by Martin Robinson.

Do not copy FloatRect arguments src and dst to local variables.
Instead, use src and dst directly.

No new tests. No change in behavior.

* platform/graphics/cairo/BitmapImageCairo.cpp:
(WebCore::BitmapImage::draw):

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

7 years agoVersioning.
lforschler@apple.com [Thu, 25 Oct 2012 01:02:20 +0000 (01:02 +0000)]
Versioning.

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

7 years agoAdd two more tiled scrolling tests
simon.fraser@apple.com [Thu, 25 Oct 2012 00:50:02 +0000 (00:50 +0000)]
Add two more tiled scrolling tests
https://bugs.webkit.org/show_bug.cgi?id=100314

Reviewed by Beth Dakin.

Two new tests for TileCache tile coverage after scrolling.

* platform/mac/tiled-drawing/tile-coverage-after-scroll-expected.txt: Added.
* platform/mac/tiled-drawing/tile-coverage-after-scroll.html: Added.
* platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom-expected.txt: Added.
* platform/mac/tiled-drawing/tile-coverage-scroll-to-bottom.html: Added.

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

7 years ago[SOUP] Provide logging for SocketStreamHandleSoup
commit-queue@webkit.org [Thu, 25 Oct 2012 00:49:44 +0000 (00:49 +0000)]
[SOUP] Provide logging for SocketStreamHandleSoup
https://bugs.webkit.org/show_bug.cgi?id=100215

Patch by Seokju Kwon <seokju.kwon@samsung.com> on 2012-10-24
Reviewed by Alexey Proskuryakov.

Add logging to SocketStreamHandleSoup to facilitate debugging.

* platform/network/soup/SocketStreamHandleSoup.cpp:
(WebCore::SocketStreamHandle::SocketStreamHandle):
(WebCore::SocketStreamHandle::~SocketStreamHandle):
(WebCore::SocketStreamHandle::platformSend):
(WebCore::SocketStreamHandle::platformClose):

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

7 years agoUpdated results for https://bugs.webkit.org/show_bug.cgi?id=100312
bdakin@apple.com [Thu, 25 Oct 2012 00:47:52 +0000 (00:47 +0000)]
Updated results for https://bugs.webkit.org/show_bug.cgi?id=100312
I checked in results that relied on some local changes in WK2.

* platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt:

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

7 years agoPass on exif orientation from ImageSource when using the open-source image decoders
thakis@chromium.org [Thu, 25 Oct 2012 00:42:51 +0000 (00:42 +0000)]
Pass on exif orientation from ImageSource when using the open-source image decoders
https://bugs.webkit.org/show_bug.cgi?id=100164

Reviewed by Eric Seidel.

The orientation is honored always for image documents, and optionally
for <img> elements if shouldRespectImageOrientation is set (off by
default). However, the feature needs port-specific modifications to
GraphicsContext (without this, webcore will use the rotated bounds but
draw the image as if it hadn't be rotated, resulting in squished
pixels), and most ports don't implement these yet -- so put
turning this on for image documents behind a port-specific #ifdef.

No observable behavior change. Once it's hooked up, it will be tested
by fast/images/exif-orientation.html.

* platform/graphics/ImageSource.cpp:
(WebCore::ImageSource::size):
(WebCore::ImageSource::frameSizeAtIndex):
(WebCore::ImageSource::orientationAtIndex):
* platform/graphics/chromium/DeferredImageDecoder.cpp:
(WebCore::DeferredImageDecoder::orientation):
(WebCore):
* platform/graphics/chromium/DeferredImageDecoder.h:
(DeferredImageDecoder):
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::readImageOrientation):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::shouldRespectImageOrientation):

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

7 years agoSkip tiled drawing tests for WK1
simon.fraser@apple.com [Thu, 25 Oct 2012 00:36:44 +0000 (00:36 +0000)]
Skip tiled drawing tests for WK1
https://bugs.webkit.org/show_bug.cgi?id=100312

Reviewed by Beth Dakin.

Skip platform/mac/tiled-drawing tests in the main TestExpections file,
but re-enable it in the WK2 TestExpections file.

* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:

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

7 years agoUnreviewed, update chromium-mac-mountainlion baselines.
dpranke@chromium.org [Thu, 25 Oct 2012 00:33:28 +0000 (00:33 +0000)]
Unreviewed, update chromium-mac-mountainlion baselines.

* platform/chromium-mac-lion/media/track/track-cue-rendering-horizontal-expected.png: Copied from LayoutTests/platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.png.
* platform/chromium-mac-lion/media/track/track-cue-rendering-horizontal-expected.txt: Copied from LayoutTests/platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.txt.
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.png:
* platform/chromium-mac/media/track/track-cue-rendering-horizontal-expected.txt:

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

7 years agoUnreviewed, expectations and baseline cleanup.
dpranke@chromium.org [Thu, 25 Oct 2012 00:24:20 +0000 (00:24 +0000)]
Unreviewed, expectations and baseline cleanup.

Remove some old baselines for a test that was converted to a reftest,
and remove entries for tests no longer failing on Chromium Mac ML.

* platform/chromium-mac-lion/fast/forms/date/date-reset-value-expected.png: Removed.
* platform/chromium-mac-mountainlion/TestExpectations:
* platform/chromium-mac-snowleopard/fast/forms/date/date-reset-value-expected.png: Removed.
* platform/chromium-mac/fast/forms/date/date-reset-value-expected.png: Removed.

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

7 years agoDFG compileBlahBlahByVal methods for Contiguous and ArrayStorage have only one caller...
fpizlo@apple.com [Thu, 25 Oct 2012 00:24:11 +0000 (00:24 +0000)]
DFG compileBlahBlahByVal methods for Contiguous and ArrayStorage have only one caller and should be removed
https://bugs.webkit.org/show_bug.cgi?id=100311

Reviewed by Mark Hahnenberg.

Just trying to simplify things before I make them more complicated again.

* dfg/DFGSpeculativeJIT.h:
(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::temporaryRegisterForPutByVal):
* dfg/DFGSpeculativeJIT32_64.cpp:
(DFG):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(DFG):
(JSC::DFG::SpeculativeJIT::compile):

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=100169
bdakin@apple.com [Thu, 25 Oct 2012 00:19:35 +0000 (00:19 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=100169
We should make TileCache tiles the size of the tile coverage rect
when we can't do fast scrolling
-and-
<rdar://problem/12505021>

Reviewed by Simon Fraser.

Source/WebCore:

Some websites that don't do fast scrolling still scroll slower than
they do with tiled drawing disabled.
https://bugs.webkit.org/show_bug.cgi?id=99768 addressed some of this
performance problem, but there is still more ground to make up. This
patch addresses the remaining issue by making tiles the size of the
window when we can't do fast scrolling.

The constructor and create function no longer take a size parameter.
That's all fully controlled within TileCache now. m_tileSize is no
longer const.
* platform/graphics/ca/mac/TileCache.h:

Store the current default size as constants so that we can access it
in both the constructor and adjustTileSizeForCoverageRect().
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):

This new function will set m_tileSize to the size of the tile
coverage rect if the tile coverage is limited to the visible area.
Otherwise, the tiles are set to be the default size.
(WebCore::TileCache::adjustTileSizeForCoverageRect):

Call adjustTileSizeForCoverageRect().
(WebCore::TileCache::revalidateTiles):

No need to send in a size anymore.
* platform/graphics/ca/mac/WebTileCacheLayer.h:
(WebCore):

LayoutTests:

New test.
* platform/mac/tiled-drawing/tile-coverage-slow-scrolling-expected.txt: Added.
* platform/mac/tiled-drawing/tile-coverage-slow-scrolling.html: Added.

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

7 years agoMake it a compile error to send a sync message as async (and vice versa)
andersca@apple.com [Wed, 24 Oct 2012 23:59:39 +0000 (23:59 +0000)]
Make it a compile error to send a sync message as async (and vice versa)
https://bugs.webkit.org/show_bug.cgi?id=100285

Reviewed by Sam Weinig.

Add an "isSync" boolean to each generated message struct and add compile asserts to the message senders.

* Platform/CoreIPC/Connection.h:
(CoreIPC::Connection::send):
(CoreIPC::Connection::sendSync):
* Platform/CoreIPC/MessageSender.h:
(CoreIPC::MessageSender::send):
(CoreIPC::MessageSender::sendSync):
* Scripts/webkit2/messages.py:
(message_to_struct_declaration):
* Scripts/webkit2/messages_unittest.py:
* UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::send):
(WebKit::WebProcessProxy::sendSync):

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

7 years agoDisable auto termination of WebKit2 processes on mac
commit-queue@webkit.org [Wed, 24 Oct 2012 23:55:49 +0000 (23:55 +0000)]
Disable auto termination of WebKit2 processes on mac
https://bugs.webkit.org/show_bug.cgi?id=100176

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-10-24
Reviewed by Alexey Proskuryakov.

Disable WebKit2 auto termination by taking corresponding assertion
until UI process is enhanced to determine when it is safe to enable it.

* NetworkProcess/mac/NetworkProcessMainMac.mm:
(WebKit::NetworkProcessMain):
* PluginProcess/mac/PluginProcessMainMac.mm:
(WebKit::PluginProcessMain):
* SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm:
(WebKit::SharedWorkerProcessMain):
* WebProcess/mac/WebProcessInitialization.mm:
(WebKit::InitializeWebProcess):

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

7 years agoMathML tests trigger font cache assertions in debug bots
dbarton@mathscribe.com [Wed, 24 Oct 2012 23:49:54 +0000 (23:49 +0000)]
MathML tests trigger font cache assertions in debug bots
https://bugs.webkit.org/show_bug.cgi?id=100268

Reviewed by Eric Seidel.

Source/WebCore:

Add a FontCachePurgePreventer to fix this.

Tested by existing tests.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::updateFromElement):

LayoutTests:

* platform/chromium/TestExpectations:

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

7 years agonrwt: truncate meter lines properly on windows
dpranke@chromium.org [Wed, 24 Oct 2012 23:46:23 +0000 (23:46 +0000)]
nrwt: truncate meter lines properly on windows
https://bugs.webkit.org/show_bug.cgi?id=100062

Reviewed by Tony Chang.

This change adds the code to figure out the terminal width
on windows (it was already there for Unixen) and moves it
to a platform-specific object.

* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo.terminal_width):
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.total_bytes_memory):
(MockPlatformInfo):
(MockPlatformInfo.terminal_width):
* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(MeteredStream.__init__):
(MeteredStream.number_of_columns):
(MeteredStream.flush):
* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer.__init__):
(Printer._test_status_line):

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

7 years agoUpdate main frame scroll position immediately for programmatic scrolls
timothy_horton@apple.com [Wed, 24 Oct 2012 23:40:28 +0000 (23:40 +0000)]
Update main frame scroll position immediately for programmatic scrolls
https://bugs.webkit.org/show_bug.cgi?id=98074

Reviewed by Simon Fraser.

Immediately update the main frame scroll position after a programmatic scroll,
so that performing a scrollBy or scrollTo will be instantly reflected in
all of the scroll offset accessors.

No new tests; this will be tested by many scrolling tests once WebKitTestRunner
can use threaded scrolling.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::requestScrollPositionUpdate):

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

7 years ago[Chromium] Allow pushState and related history APIs to be disabled per context
mihaip@chromium.org [Wed, 24 Oct 2012 23:26:58 +0000 (23:26 +0000)]
[Chromium] Allow pushState and related history APIs to be disabled per context
https://bugs.webkit.org/show_bug.cgi?id=99780

Reviewed by Adam Barth.

Source/WebCore:

Chrome Apps do not support the history API (or navigation in general).
Since pushState is generally feature detected, it's cleanest to disable
it via a V8 per-context feature, so that applications can have the
appropriate fallback behavior (other history APIs are re-mapped to throw
exceptions, since history.back() and the link are not feature detected).

* dom/ContextFeatures.cpp:
(WebCore::ContextFeatures::pushStateEnabled):
(WebCore):
* dom/ContextFeatures.h:
* dom/Document.cpp:
(WebCore::Document::enqueuePopstateEvent):
* page/History.idl:

Source/WebKit/chromium:

Add pushState context feature.

* public/WebPermissionClient.h:
(WebPermissionClient):
(WebKit::WebPermissionClient::allowPushState):
* src/ContextFeaturesClientImpl.cpp:
(WebKit::ContextFeaturesClientImpl::askIfIsEnabled):

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

7 years agoSource/WebCore: MediaStream API: Make sure all events are dispatched asynchronously
tommyw@google.com [Wed, 24 Oct 2012 23:24:05 +0000 (23:24 +0000)]
Source/WebCore: MediaStream API: Make sure all events are dispatched asynchronously
https://bugs.webkit.org/show_bug.cgi?id=100286

Reviewed by Adam Barth.

This is necessary to safeguard against if the UA uses synchronous UA->WebKit calls,
and the web application calls methods on the RTCPeerConnection in the event callbacks.

Test: fast/mediastream/RTCPeerConnection-events.html
Also tested by the chromium webrtc fuzz tests.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::RTCPeerConnection):
(WebCore::RTCPeerConnection::negotiationNeeded):
(WebCore::RTCPeerConnection::didGenerateIceCandidate):
(WebCore::RTCPeerConnection::didAddRemoteStream):
(WebCore::RTCPeerConnection::didRemoveRemoteStream):
(WebCore::RTCPeerConnection::didAddRemoteDataChannel):
(WebCore::RTCPeerConnection::changeReadyState):
(WebCore::RTCPeerConnection::changeIceState):
(WebCore):
(WebCore::RTCPeerConnection::scheduleDispatchEvent):
(WebCore::RTCPeerConnection::scheduledEventTimerFired):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):

LayoutTests: MediaStream API: Make sure all RTCPeerConnection events are dispatched asynchronously
https://bugs.webkit.org/show_bug.cgi?id=100286

Reviewed by Adam Barth.

RTCPeerConnection::close is the only function that dispatches an event directly so only test that.

* fast/mediastream/RTCPeerConnection-events-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-events.html: Added.

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

7 years ago[Chromium] Remove screen-related functions from PlatformSupport
pilgrim@chromium.org [Wed, 24 Oct 2012 23:19:45 +0000 (23:19 +0000)]
[Chromium] Remove screen-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=97474

Reviewed by Adam Barth.

Screen-related functions like screenHorizontalDPI that
used to be on PlatformSupport are now accessed through a new
PlatformPageClient attached to Widget in WebCore-land, which is
implemented by ChromeClientImpl in WebKit-land, which proxies
calls to WebWidgetClient, which is actually implemented in
Chromium-land.

Source/Platform:

* Platform.gypi:
* chromium/public/WebScreenInfo.h: Added.
(WebKit):
(WebScreenInfo):
(WebKit::WebScreenInfo::WebScreenInfo):

Source/WebCore:

* WebCore.gypi:
* platform/Widget.h:
* platform/chromium/PageClientChromium.h: Copied from Source/WebCore/platform/chromium/PlatformWidget.h.
(PageClientChromium):
* platform/chromium/PlatformScreenChromium.cpp:
(WebCore::toPlatformPageClient):
(WebCore):
(WebCore::screenHorizontalDPI):
(WebCore::screenVerticalDPI):
(WebCore::screenDepth):
(WebCore::screenDepthPerComponent):
(WebCore::screenIsMonochrome):
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/chromium/PlatformSupport.h:
(PlatformSupport):

Source/WebKit/chromium:

* public/WebScreenInfo.h:
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::screenInfo):
(WebKit):
* src/ChromeClientImpl.h:
(WebKit):
(WebKit::ChromeClientImpl::platformPageClient):
(ChromeClientImpl):
* src/PlatformSupport.cpp:
(WebCore):
* src/WebPagePopupImpl.cpp:

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

7 years agoUnreviewed gardening. Chromium revision 163873 also made
leviw@chromium.org [Wed, 24 Oct 2012 23:18:32 +0000 (23:18 +0000)]
Unreviewed gardening. Chromium revision 163873 also made
platform/chromium/virtual/gpu/fast/canvas/canvas-incremental-repaint.html slow.

* platform/chromium/TestExpectations:

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

7 years ago[V8] WorkerContextExecutionProxy doesn't need to track events
abarth@webkit.org [Wed, 24 Oct 2012 23:17:36 +0000 (23:17 +0000)]
[V8] WorkerContextExecutionProxy doesn't need to track events
https://bugs.webkit.org/show_bug.cgi?id=100295

Reviewed by Eric Seidel.

This code was added when this code was originally upstreamed as part of
the Chromium port. There doesn't appear to be any reason why
WorkerContextExecutionProxy needs to keep a Vector of raw event
pointers. Those points are likely to become dangling, making the rest
of what this code does very sketchy.

* bindings/v8/V8WorkerContextEventListener.cpp:
(WebCore::V8WorkerContextEventListener::callListenerFunction):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::dispose):
* bindings/v8/WorkerContextExecutionProxy.h:
(WebCore::WorkerContextExecutionState::WorkerContextExecutionState):
(WorkerContextExecutionProxy):

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

7 years ago[CSS Shaders] The mesh should be specified using <column, row> order
commit-queue@webkit.org [Wed, 24 Oct 2012 23:01:30 +0000 (23:01 +0000)]
[CSS Shaders] The mesh should be specified using <column, row> order
https://bugs.webkit.org/show_bug.cgi?id=96285

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-10-24
Reviewed by Dean Jackson.

Source/WebCore:

Change StyleResolver and CSSComputedStyleDeclaration to handle the mesh parameters in
column, row order.

Test: css3/filters/custom/custom-filter-mesh-column-row-order.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
    Append the number of columns before the number of rows in the meshParameters
    CSSValueList.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::createCustomFilterOperation):
    Store the second mesh parameter in meshRows instead of meshColumns.

LayoutTests:

Add a test verifying that WebKit interprets the CSS mesh values in column, row order.
Update existing tests for u_meshSize and u_tileSize to expect column, row order.

* css3/filters/custom/custom-filter-mesh-column-row-order-expected.html: Added.
* css3/filters/custom/custom-filter-mesh-column-row-order.html: Added.
* css3/filters/resources/checkerboard.vs: Added.
* css3/filters/resources/u-mesh-size.fs:
* css3/filters/resources/u-tile-size.fs:
* css3/filters/resources/varying-mix-color.fs: Added.

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

7 years agotweak debug logging in webkit-patch optimize-baselines
dpranke@chromium.org [Wed, 24 Oct 2012 23:00:00 +0000 (23:00 +0000)]
tweak debug logging in webkit-patch optimize-baselines
https://bugs.webkit.org/show_bug.cgi?id=100294

Reviewed by Ojan Vafai.

This changes the logging to print out the baselines found
(and their checksums) even when we don't do anything.

* Scripts/webkitpy/common/checkout/baselineoptimizer.py:
(BaselineOptimizer.optimize):

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

7 years ago[BlackBerry] change CMAKE_<CCXX|C>_FLAGS_<RELEASE|DEBUG> from enviroment flags
commit-queue@webkit.org [Wed, 24 Oct 2012 22:49:03 +0000 (22:49 +0000)]
[BlackBerry] change CMAKE_<CCXX|C>_FLAGS_<RELEASE|DEBUG> from enviroment flags
https://bugs.webkit.org/show_bug.cgi?id=100256

Patch by Michael Carmody <mcarmody@rim.com> on 2012-10-24
Reviewed by Rob Buis.

This allow override of compile flags without having to edit CMake files.

* Source/cmake/OptionsBlackBerry.cmake:

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

7 years ago[chromium] Unreviewed, land pixel results on Win/Mac for a new repaint test.
tony@chromium.org [Wed, 24 Oct 2012 22:45:13 +0000 (22:45 +0000)]
[chromium] Unreviewed, land pixel results on Win/Mac for a new repaint test.

* platform/chromium-mac/css3/flexbox/repaint-during-resize-no-flex-expected.png: Added.
* platform/chromium-win/css3/flexbox/repaint-during-resize-no-flex-expected.png: Renamed from LayoutTests/platform/chromium-linux/css3/flexbox/repaint-during-resize-no-flex-expected.png.
* platform/chromium/TestExpectations:

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

7 years agoloaderRunLoop() should use synchronization instead of while loop
commit-queue@webkit.org [Wed, 24 Oct 2012 22:40:27 +0000 (22:40 +0000)]
loaderRunLoop() should use synchronization instead of while loop
https://bugs.webkit.org/show_bug.cgi?id=55402

Patch by Jae Hyun Park <jae.park@company100.net> on 2012-10-24
Reviewed by Alexey Proskuryakov.

Originally, loaderRunLoop() sleeps until a thread has started and set
the loaderRunLoopObject static variable. This patch uses
ThreadCondition to synchronize instead of a while loop.

No new tests (No behavior change).

* platform/network/cf/LoaderRunLoopCF.cpp:
(WebCore::runLoaderThread):
(WebCore::loaderRunLoop):
* platform/network/cf/LoaderRunLoopCF.h:
(WebCore):

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

7 years agoIncorrect keycodes for numpad /, -, +, .
commit-queue@webkit.org [Wed, 24 Oct 2012 22:36:28 +0000 (22:36 +0000)]
Incorrect keycodes for numpad /, -, +, .
https://bugs.webkit.org/show_bug.cgi?id=99188

Patch by Sailesh Agrawal <sail@chromium.org> on 2012-10-24
Reviewed by Tony Chang.

Source/WebCore:

In r57951 we switched to mapping keys by character code.
This regressed the numpad keys which no longer match the Windows virtual key codes.
This CL fixes this by never mapping numpad keys by character code.

Test: platform/mac/fast/events/numpad-keycode-mapping.html

* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

In r57951 we switched to mapping keys by character code.
This regressed the numpad keys which no longer match the Windows virtual key codes.
This CL fixes this by never mapping numpad keys by character code.

* src/mac/WebInputEventFactory.mm: Disallow mapping numpad keys by character code.
(WebKit::windowsKeyCodeForKeyEvent):
* tests/WebInputEventFactoryTestMac.mm: Test to verify that all numpad keys are correctly mapped.
(TEST):

Tools:

Add key mappings for all numpad keys.

* DumpRenderTree/mac/EventSendingController.mm:
(KeyMappingEntry):
(-[EventSendingController keyDown:withModifiers:withLocation:]): Added all numpad keys.

LayoutTests:

Added test to map numpad keys to windows virtual keycodes. This test is for the Mac port only. DumpRenderTree in the chromium-mac port doesn't use Mac keycodes so this can't be tested on that platform.

* platform/mac/fast/events/numpad-keycode-mapping-expected.txt: Added.
* platform/mac/fast/events/numpad-keycode-mapping.html: Added.

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

7 years agowebkitpy: clean up references to Skipped files
dpranke@chromium.org [Wed, 24 Oct 2012 22:04:00 +0000 (22:04 +0000)]
webkitpy: clean up references to Skipped files
https://bugs.webkit.org/show_bug.cgi?id=100045

Reviewed by Ojan Vafai.

Since they are no longer used or needed ...

* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort._generate_all_test_configurations):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.skipped_layout_tests):
(Port.expectations_files):
(Port._wk2_port_name):
* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(MacTest.test_default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/port_testcase.py:
(test_expectations_files):
(test_expectations_files.platform_dirs):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort.__init__):

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

7 years agoNull-check the RenderView in ocument::windowScreenDidChange to fix a crash when savin...
simon.fraser@apple.com [Wed, 24 Oct 2012 22:01:03 +0000 (22:01 +0000)]
Null-check the RenderView in ocument::windowScreenDidChange to fix a crash when saving PDFs
https://bugs.webkit.org/show_bug.cgi?id=100141
<rdar://problem/12559147>

Reviewed by Tim Horton.

For PDF documents the RenderView is null, so null-check it to avoid a crash
when saving PDFs.

* dom/Document.cpp:
(WebCore::Document::windowScreenDidChange):

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

7 years agoUnreviewed gardening. Marking the software compositing version of
leviw@chromium.org [Wed, 24 Oct 2012 22:00:32 +0000 (22:00 +0000)]
Unreviewed gardening. Marking the software compositing version of
compositing/tiling/backface-preserve-3d-tiled.html as failing as well.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed gardening. Marking 2 more mathml tests as flaky crashers on debug.
leviw@chromium.org [Wed, 24 Oct 2012 21:58:30 +0000 (21:58 +0000)]
Unreviewed gardening. Marking 2 more mathml tests as flaky crashers on debug.

* platform/chromium/TestExpectations:

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

7 years agoHandle two-finger tap gestures in the same way as long-press gestures
tdanderson@chromium.org [Wed, 24 Oct 2012 21:54:16 +0000 (21:54 +0000)]
Handle two-finger tap gestures in the same way as long-press gestures
https://bugs.webkit.org/show_bug.cgi?id=99947

Reviewed by Adam Barth.

Source/WebCore:

Currently a long-press gesture is used to dispatch a context menu (for platforms
defining CONTEXT_MENUS) or to select text (for Android). Additionally, for platforms
defining TOUCH_ADJUSTMENT, gesture target fuzzing is performed on the location and
touch area of the long-press gesture.

This CL will cause two-finger tap gestures to be handled in the same way as long-press
gestures. The location and touch area of a two-finger tap gesture will correspond to
the location and touch area of the first finger down; the location/area of the second
finger will be ignored.

Test: touchadjustment/touch-links-two-finger-tap.html

* page/EventHandler.cpp:
(WebCore::EventHandler::handleGestureLongPress):
(WebCore):
(WebCore::EventHandler::handleGestureForTextSelectionOrContextMenu):
(WebCore::EventHandler::handleGestureTwoFingerTap):
(WebCore::EventHandler::adjustGesturePosition):
* page/EventHandler.h:
(EventHandler):

Source/WebKit/chromium:

Set the area of a two-finger tap gesture to be the area of the enclosing
rectangle for the first finger down.

* src/WebInputEventConversion.cpp:
(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):

LayoutTests:

New layout test for dispatching context menus on a two-finger tap
gesture when touch adjustment is enabled.

* touchadjustment/touch-links-two-finger-tap-expected.txt: Added.
* touchadjustment/touch-links-two-finger-tap.html: Added.

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