Index: third_party/WebKit/Source/web/DevToolsEmulator.h |
diff --git a/third_party/WebKit/Source/web/DevToolsEmulator.h b/third_party/WebKit/Source/web/DevToolsEmulator.h |
index 07836526e34fbc6b10560e8bfe291d7ce2486c8d..fb6e5d672255501f06dd0194695467bed3598a92 100644 |
--- a/third_party/WebKit/Source/web/DevToolsEmulator.h |
+++ b/third_party/WebKit/Source/web/DevToolsEmulator.h |
@@ -7,15 +7,19 @@ |
#include "platform/heap/Handle.h" |
#include "public/platform/PointerProperties.h" |
+#include "public/platform/WebFloatRect.h" |
#include "public/platform/WebViewportStyle.h" |
#include "public/web/WebDeviceEmulationParams.h" |
#include "wtf/Forward.h" |
+#include "wtf/Optional.h" |
#include <memory> |
namespace blink { |
class InspectorEmulationAgent; |
class IntPoint; |
+class TransformationMatrix; |
+struct WebFloatRect; |
class WebInputEvent; |
class WebViewImpl; |
@@ -44,23 +48,40 @@ public: |
// Emulation. |
void enableDeviceEmulation(const WebDeviceEmulationParams&); |
void disableDeviceEmulation(); |
+ void setCompositedAreaOverride(const WebFloatRect& area, float scale); |
+ void clearCompositedAreaOverride(); |
bool resizeIsDeviceSizeChange(); |
void setTouchEventEmulationEnabled(bool); |
bool handleInputEvent(const WebInputEvent&); |
void setScriptExecutionDisabled(bool); |
+ // Notify the DevToolsEmulator about a scroll or scale change of the main |
+ // frame. Updates the transform for an active composited area override. |
+ void mainFrameScrollOrScaleChanged(); |
+ |
private: |
explicit DevToolsEmulator(WebViewImpl*); |
void enableMobileEmulation(); |
void disableMobileEmulation(); |
+ void applyDeviceEmulationTransform(TransformationMatrix*); |
+ void applyCompositedAreaOverrideTransform(TransformationMatrix*); |
+ void updateRootLayerTransform(); |
+ |
WebViewImpl* m_webViewImpl; |
bool m_deviceMetricsEnabled; |
bool m_emulateMobileEnabled; |
WebDeviceEmulationParams m_emulationParams; |
+ struct CompositedAreaOverride { |
+ WebFloatRect area; |
+ double scale; |
+ bool originalVisualViewportMasking; |
+ }; |
+ WTF::Optional<CompositedAreaOverride> m_compositedAreaOverride; |
+ |
bool m_isOverlayScrollbarsEnabled; |
bool m_isOrientationEventEnabled; |
bool m_isMobileLayoutThemeEnabled; |