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

Unified Diff: third_party/WebKit/Source/core/exported/WebViewBase.h

Issue 2851993002: Move more methods from WebViewImpl to WebViewBase, and cut dependencies. (Closed)
Patch Set: Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/web/ChromeClientImpl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/exported/WebViewBase.h
diff --git a/third_party/WebKit/Source/core/exported/WebViewBase.h b/third_party/WebKit/Source/core/exported/WebViewBase.h
index f9be034fd43db577ba0dcbecb439cd890c5a612c..ae72b40d8b1c173ec308396f19142eb2e5d82937 100644
--- a/third_party/WebKit/Source/core/exported/WebViewBase.h
+++ b/third_party/WebKit/Source/core/exported/WebViewBase.h
@@ -17,7 +17,11 @@ class CompositorAnimationTimeline;
class ContextMenuProvider;
class DevToolsEmulator;
class Frame;
+class GraphicsLayer;
class Page;
+class PaintLayerCompositor;
+class PagePopup;
+class PagePopupClient;
class PageScaleConstraintsSet;
class WebInputEvent;
class WebKeyboardEvent;
@@ -48,6 +52,7 @@ class WebViewBase : public WebView {
virtual Page* GetPage() const = 0;
virtual Frame* FocusedCoreFrame() const = 0;
+ static WebViewBase* FromPage(Page*);
// Returns the main frame associated with this view. This may be null when
// the page is shutting down, but will be valid at all other times.
@@ -105,6 +110,41 @@ class WebViewBase : public WebView {
virtual WebSettingsImpl* SettingsImpl() = 0;
+ virtual PagePopup* OpenPagePopup(PagePopupClient*) = 0;
+ virtual void ClosePagePopup(PagePopup*) = 0;
+ virtual void CleanupPagePopup() = 0;
+ virtual LocalDOMWindow* PagePopupWindow() const = 0;
+
+ virtual void InvalidateRect(const IntRect&) = 0;
+ // Indicates two things:
+ // 1) This view may have a new layout now.
+ // 2) Calling updateAllLifecyclePhases() is a no-op.
+ // After calling WebWidget::updateAllLifecyclePhases(), expect to get this
+ // notification unless the view did not need a layout.
+ virtual void LayoutUpdated(WebLocalFrameImpl*) = 0;
+ virtual void ResizeAfterLayout(WebLocalFrameImpl*) = 0;
+
+ virtual void UpdatePageDefinedViewportConstraints(
+ const ViewportDescription&) = 0;
+
+ virtual void EnterFullscreen(LocalFrame&) = 0;
+ virtual void ExitFullscreen(LocalFrame&) = 0;
+ virtual void FullscreenElementChanged(Element*, Element*) = 0;
+
+ virtual bool HasOpenedPopup() const = 0;
+
+ // Returns true if popup menus should be rendered by the browser, false if
+ // they should be rendered by WebKit (which is the default).
+ static bool UseExternalPopupMenus();
+
+ virtual GraphicsLayer* RootGraphicsLayer() = 0;
+ virtual void RegisterViewportLayersWithCompositor() = 0;
+ virtual PaintLayerCompositor* Compositor() const = 0;
+
+ virtual void DidUpdateBrowserControls() = 0;
+ virtual FloatSize ElasticOverscroll() const = 0;
+ virtual double LastFrameTimeMonotonic() const = 0;
+
static const WebInputEvent* CurrentInputEvent();
};
}
« no previous file with comments | « no previous file | third_party/WebKit/Source/web/ChromeClientImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698