Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(912)

Side by Side Diff: third_party/WebKit/Source/core/exported/WebViewBase.h

Issue 2850113002: Move WebViewFrameWidget to use WebViewBase rather than WebViewImpl. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/web/WebViewFrameWidget.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/web/WebViewFrameWidget.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698