Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file.#ifndef WebViewBase_h | 3 // found in the LICENSE file.#ifndef WebViewBase_h |
| 4 | 4 |
| 5 #ifndef WebViewBase_h | 5 #ifndef WebViewBase_h |
| 6 #define WebViewBase_h | 6 #define WebViewBase_h |
| 7 | 7 |
| 8 #include "platform/transforms/TransformationMatrix.h" | 8 #include "platform/transforms/TransformationMatrix.h" |
| 9 #include "platform/wtf/RefCounted.h" | |
| 9 #include "public/platform/WebDisplayMode.h" | 10 #include "public/platform/WebDisplayMode.h" |
| 10 #include "public/platform/WebInputEventResult.h" | 11 #include "public/platform/WebInputEventResult.h" |
| 11 #include "public/web/WebElement.h" | 12 #include "public/web/WebElement.h" |
| 12 #include "public/web/WebView.h" | 13 #include "public/web/WebView.h" |
| 13 | 14 |
| 14 namespace blink { | 15 namespace blink { |
| 15 | 16 |
| 17 class AnimationWorkletProxyClient; | |
| 18 class CompositorAnimationHost; | |
| 19 class CompositorWorkerProxyClient; | |
| 16 class CompositorAnimationTimeline; | 20 class CompositorAnimationTimeline; |
| 17 class ContextMenuProvider; | 21 class ContextMenuProvider; |
| 18 class DevToolsEmulator; | 22 class DevToolsEmulator; |
| 19 class Frame; | 23 class Frame; |
| 20 class GraphicsLayer; | 24 class GraphicsLayer; |
| 25 class HitTestResult; | |
| 21 class Page; | 26 class Page; |
| 22 class PaintLayerCompositor; | 27 class PaintLayerCompositor; |
| 23 class PagePopup; | 28 class PagePopup; |
| 24 class PagePopupClient; | 29 class PagePopupClient; |
| 25 class PageScaleConstraintsSet; | 30 class PageScaleConstraintsSet; |
| 26 class WebInputEvent; | 31 class WebInputEvent; |
| 32 class WebInputMethodControllerImpl; | |
| 27 class WebKeyboardEvent; | 33 class WebKeyboardEvent; |
| 34 class WebLayer; | |
| 28 class WebLocalFrameImpl; | 35 class WebLocalFrameImpl; |
| 29 class WebLayerTreeView; | 36 class WebLayerTreeView; |
| 30 class WebPagePopupImpl; | 37 class WebPagePopupImpl; |
| 31 class WebSettingsImpl; | 38 class WebSettingsImpl; |
| 32 struct WebRect; | 39 struct WebRect; |
| 33 | 40 |
| 34 // WebViewBase is a temporary class introduced to decouple the defintion of | 41 // WebViewBase is a temporary class introduced to decouple the defintion of |
| 35 // WebViewImpl from the concrete implementation. It was not possible to move the | 42 // WebViewImpl from the concrete implementation. It was not possible to move the |
| 36 // defintion of these methods to WebView as we did not want to pollute the | 43 // defintion of these methods to WebView as we did not want to pollute the |
| 37 // public API surface area. | 44 // public API surface area. |
| 38 // | 45 // |
| 39 // Once WebViewImpl is moved from web to core/exported then this class should be | 46 // Once WebViewImpl is moved from web to core/exported then this class should be |
| 40 // removed and clients can once again depend on WebViewImpl. | 47 // removed and clients can once again depend on WebViewImpl. |
| 41 class WebViewBase : public WebView { | 48 class WebViewBase : public WebView, public RefCounted<WebViewBase> { |
| 42 public: | 49 public: |
| 50 virtual ~WebViewBase() {} | |
| 51 | |
| 43 virtual void SetBaseBackgroundColor(WebColor) = 0; | 52 virtual void SetBaseBackgroundColor(WebColor) = 0; |
| 44 virtual void SetBaseBackgroundColorOverride(WebColor) = 0; | 53 virtual void SetBaseBackgroundColorOverride(WebColor) = 0; |
| 45 virtual void ClearBaseBackgroundColorOverride() = 0; | 54 virtual void ClearBaseBackgroundColorOverride() = 0; |
| 46 virtual void SetBackgroundColorOverride(WebColor) = 0; | 55 virtual void SetBackgroundColorOverride(WebColor) = 0; |
| 47 virtual void ClearBackgroundColorOverride() = 0; | 56 virtual void ClearBackgroundColorOverride() = 0; |
| 48 virtual void SetZoomFactorOverride(float) = 0; | 57 virtual void SetZoomFactorOverride(float) = 0; |
| 49 virtual void SetCompositorDeviceScaleFactorOverride(float) = 0; | 58 virtual void SetCompositorDeviceScaleFactorOverride(float) = 0; |
| 50 virtual void SetDeviceEmulationTransform(const TransformationMatrix&) = 0; | 59 virtual void SetDeviceEmulationTransform(const TransformationMatrix&) = 0; |
| 51 virtual void SetShowDebugBorders(bool) = 0; | 60 virtual void SetShowDebugBorders(bool) = 0; |
| 52 | 61 |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 139 | 148 |
| 140 virtual GraphicsLayer* RootGraphicsLayer() = 0; | 149 virtual GraphicsLayer* RootGraphicsLayer() = 0; |
| 141 virtual void RegisterViewportLayersWithCompositor() = 0; | 150 virtual void RegisterViewportLayersWithCompositor() = 0; |
| 142 virtual PaintLayerCompositor* Compositor() const = 0; | 151 virtual PaintLayerCompositor* Compositor() const = 0; |
| 143 | 152 |
| 144 virtual void DidUpdateBrowserControls() = 0; | 153 virtual void DidUpdateBrowserControls() = 0; |
| 145 virtual FloatSize ElasticOverscroll() const = 0; | 154 virtual FloatSize ElasticOverscroll() const = 0; |
| 146 virtual double LastFrameTimeMonotonic() const = 0; | 155 virtual double LastFrameTimeMonotonic() const = 0; |
| 147 | 156 |
| 148 static const WebInputEvent* CurrentInputEvent(); | 157 static const WebInputEvent* CurrentInputEvent(); |
| 158 | |
| 159 virtual void SetCompositorVisibility(bool) = 0; | |
|
haraken
2017/05/01 07:34:26
I don't fully understand the changes at line 159 -
slangley
2017/05/01 09:26:57
Making methods that are currently not defined as v
| |
| 160 using WebWidget::SetSuppressFrameRequestsWorkaroundFor704763Only; | |
| 161 using WebWidget::RecordWheelAndTouchScrollingCount; | |
| 162 using WebWidget::GetCompositionCharacterBounds; | |
| 163 // Returns the currently active WebInputMethodController which is the one | |
| 164 // corresponding to the focused frame. It will return nullptr if there is no | |
| 165 // focused frame, or if the there is one but it belongs to a different local | |
|
haraken
2017/05/01 07:34:26
if there is
slangley
2017/05/01 09:26:57
Done
| |
| 166 // root. | |
| 167 virtual WebInputMethodControllerImpl* GetActiveWebInputMethodController() | |
| 168 const = 0; | |
| 169 virtual void ScheduleAnimationForWidget() = 0; | |
| 170 virtual CompositorWorkerProxyClient* CreateCompositorWorkerProxyClient() = 0; | |
| 171 virtual AnimationWorkletProxyClient* CreateAnimationWorkletProxyClient() = 0; | |
| 172 virtual void SetRootGraphicsLayer(GraphicsLayer*) = 0; | |
| 173 virtual void SetRootLayer(WebLayer*) = 0; | |
| 174 virtual CompositorAnimationHost* AnimationHost() const = 0; | |
| 175 virtual HitTestResult CoreHitTestResultAt(const WebPoint&) = 0; | |
| 149 }; | 176 }; |
| 150 } | 177 } |
| 151 | 178 |
| 152 #endif | 179 #endif |
| OLD | NEW |