| Index: Source/web/DevToolsEmulator.cpp
|
| diff --git a/Source/web/DevToolsEmulator.cpp b/Source/web/DevToolsEmulator.cpp
|
| index 9dcb3894e92ba09b2e73cf019d5a0f160b6b5674..6a91d12336dfdc063980d6150cc84414a90995ce 100644
|
| --- a/Source/web/DevToolsEmulator.cpp
|
| +++ b/Source/web/DevToolsEmulator.cpp
|
| @@ -62,6 +62,10 @@ DevToolsEmulator::DevToolsEmulator(WebViewImpl* webViewImpl)
|
| , m_embedderPreferCompositingToLCDTextEnabled(webViewImpl->page()->settings().preferCompositingToLCDTextEnabled())
|
| , m_embedderUseMobileViewport(webViewImpl->page()->settings().useMobileViewportStyle())
|
| , m_embedderPluginsEnabled(webViewImpl->page()->settings().pluginsEnabled())
|
| + , m_embedderAvailablePointerTypes(webViewImpl->page()->settings().availablePointerTypes())
|
| + , m_embedderPrimaryPointerType(webViewImpl->page()->settings().primaryPointerType())
|
| + , m_embedderAvailableHoverTypes(webViewImpl->page()->settings().availableHoverTypes())
|
| + , m_embedderPrimaryHoverType(webViewImpl->page()->settings().primaryHoverType())
|
| , m_touchEventEmulationEnabled(false)
|
| , m_doubleTapToZoomEnabled(false)
|
| , m_originalTouchEnabled(false)
|
| @@ -163,6 +167,38 @@ void DevToolsEmulator::setHidePinchScrollbarsNearMinScale(bool enabled)
|
| m_webViewImpl->layerTreeView()->setHidePinchScrollbarsNearMinScale(enabled);
|
| }
|
|
|
| +void DevToolsEmulator::setAvailablePointerTypes(int types)
|
| +{
|
| + m_embedderAvailablePointerTypes = types;
|
| + bool emulateMobileEnabled = m_deviceMetricsEnabled && m_emulateMobileEnabled;
|
| + if (!emulateMobileEnabled)
|
| + m_webViewImpl->page()->settings().setAvailablePointerTypes(types);
|
| +}
|
| +
|
| +void DevToolsEmulator::setPrimaryPointerType(PointerType pointerType)
|
| +{
|
| + m_embedderPrimaryPointerType = pointerType;
|
| + bool emulateMobileEnabled = m_deviceMetricsEnabled && m_emulateMobileEnabled;
|
| + if (!emulateMobileEnabled)
|
| + m_webViewImpl->page()->settings().setPrimaryPointerType(pointerType);
|
| +}
|
| +
|
| +void DevToolsEmulator::setAvailableHoverTypes(int types)
|
| +{
|
| + m_embedderAvailableHoverTypes = types;
|
| + bool emulateMobileEnabled = m_deviceMetricsEnabled && m_emulateMobileEnabled;
|
| + if (!emulateMobileEnabled)
|
| + m_webViewImpl->page()->settings().setAvailableHoverTypes(types);
|
| +}
|
| +
|
| +void DevToolsEmulator::setPrimaryHoverType(HoverType hoverType)
|
| +{
|
| + m_embedderPrimaryHoverType = hoverType;
|
| + bool emulateMobileEnabled = m_deviceMetricsEnabled && m_emulateMobileEnabled;
|
| + if (!emulateMobileEnabled)
|
| + m_webViewImpl->page()->settings().setPrimaryHoverType(hoverType);
|
| +}
|
| +
|
| void DevToolsEmulator::enableDeviceEmulation(const WebDeviceEmulationParams& params)
|
| {
|
| if (!m_deviceMetricsEnabled) {
|
| @@ -216,6 +252,10 @@ void DevToolsEmulator::enableMobileEmulation()
|
| m_webViewImpl->page()->settings().setPreferCompositingToLCDTextEnabled(true);
|
| m_webViewImpl->page()->settings().setUseMobileViewportStyle(true);
|
| m_webViewImpl->page()->settings().setPluginsEnabled(false);
|
| + m_webViewImpl->page()->settings().setAvailablePointerTypes(PointerTypeCoarse);
|
| + m_webViewImpl->page()->settings().setPrimaryPointerType(PointerTypeCoarse);
|
| + m_webViewImpl->page()->settings().setAvailableHoverTypes(HoverTypeOnDemand);
|
| + m_webViewImpl->page()->settings().setPrimaryHoverType(HoverTypeOnDemand);
|
| m_webViewImpl->setZoomFactorOverride(1);
|
|
|
| m_originalDefaultMinimumPageScaleFactor = m_webViewImpl->defaultMinimumPageScaleFactor();
|
| @@ -236,6 +276,10 @@ void DevToolsEmulator::disableMobileEmulation()
|
| m_webViewImpl->page()->settings().setPreferCompositingToLCDTextEnabled(m_embedderPreferCompositingToLCDTextEnabled);
|
| m_webViewImpl->page()->settings().setUseMobileViewportStyle(m_embedderUseMobileViewport);
|
| m_webViewImpl->page()->settings().setPluginsEnabled(m_embedderPluginsEnabled);
|
| + m_webViewImpl->page()->settings().setAvailablePointerTypes(m_embedderAvailablePointerTypes);
|
| + m_webViewImpl->page()->settings().setPrimaryPointerType(m_embedderPrimaryPointerType);
|
| + m_webViewImpl->page()->settings().setAvailableHoverTypes(m_embedderAvailableHoverTypes);
|
| + m_webViewImpl->page()->settings().setPrimaryHoverType(m_embedderPrimaryHoverType);
|
| m_webViewImpl->setZoomFactorOverride(0);
|
| m_emulateMobileEnabled = false;
|
| m_webViewImpl->setDefaultPageScaleLimits(
|
|
|