| Index: extensions/browser/guest_view/web_view/web_view_guest_delegate.h
|
| diff --git a/extensions/browser/guest_view/web_view/web_view_guest_delegate.h b/extensions/browser/guest_view/web_view/web_view_guest_delegate.h
|
| index d72ae0ee6f5c4a46975d1cd48fd18b3761e2ca0b..5a5caee5ff2cf0d9405ff8a7991ed1b335a259a5 100644
|
| --- a/extensions/browser/guest_view/web_view/web_view_guest_delegate.h
|
| +++ b/extensions/browser/guest_view/web_view/web_view_guest_delegate.h
|
| @@ -7,6 +7,10 @@
|
|
|
| #include "extensions/browser/guest_view/guest_view_base.h"
|
|
|
| +namespace blink {
|
| +struct WebFindOptions;
|
| +} // nanespace blink
|
| +
|
| namespace content {
|
| class RenderViewHost;
|
| class WebContents;
|
| @@ -14,23 +18,38 @@ class WebContents;
|
|
|
| namespace extensions {
|
|
|
| +class WebViewGuest;
|
| +class WebViewInternalFindFunction;
|
| +
|
| namespace api {
|
| namespace web_view_internal{
|
| -
|
| struct ContextMenuItem;
|
| -
|
| } // namespace web_view_internal
|
| } // namespace api
|
|
|
| // A delegate class of WebViewGuest that are not a part of chrome.
|
| class WebViewGuestDelegate {
|
| public :
|
| - WebViewGuestDelegate();
|
| + explicit WebViewGuestDelegate(WebViewGuest* web_view_guest);
|
| virtual ~WebViewGuestDelegate();
|
|
|
| typedef std::vector<linked_ptr<api::web_view_internal::ContextMenuItem> >
|
| MenuItemVector;
|
|
|
| + // Begin or continue a find request.
|
| + virtual void Find(
|
| + const base::string16& search_text,
|
| + const blink::WebFindOptions& options,
|
| + WebViewInternalFindFunction* find_function) = 0;
|
| +
|
| + // Result of string search in the page.
|
| + virtual void FindReply(content::WebContents* source,
|
| + int request_id,
|
| + int number_of_matches,
|
| + const gfx::Rect& selection_rect,
|
| + int active_match_ordinal,
|
| + bool final_update) = 0;
|
| +
|
| // Returns the current zoom factor.
|
| virtual double GetZoom() = 0;
|
|
|
| @@ -40,6 +59,9 @@ class WebViewGuestDelegate {
|
| // Called to attach helpers just after additional initialization is performed.
|
| virtual void OnAttachWebViewHelpers(content::WebContents* contents) = 0;
|
|
|
| + // Called to perform some cleanup prior to destruction.
|
| + virtual void OnEmbedderDestroyed() = 0;
|
| +
|
| // Called when the guest WebContents commits a provisional load in any frame.
|
| virtual void OnDidCommitProvisionalLoadForFrame(bool is_main_frame) = 0;
|
|
|
| @@ -52,6 +74,9 @@ class WebViewGuestDelegate {
|
| // Called immediately after the guest WebContents has been destroyed.
|
| virtual void OnGuestDestroyed() = 0;
|
|
|
| + // Called to cancel all find sessions in progress.
|
| + virtual void OnRenderProcessGone() = 0;
|
| +
|
| // Called when to set the zoom factor.
|
| virtual void OnSetZoom(double zoom_factor) = 0;
|
|
|
| @@ -63,7 +88,14 @@ class WebViewGuestDelegate {
|
| int request_id,
|
| const MenuItemVector* items) = 0;
|
|
|
| + // Conclude a find request to clear highlighting.
|
| + virtual void StopFinding(content::StopFindAction) = 0;
|
| +
|
| + WebViewGuest* web_view_guest() const { return web_view_guest_; }
|
| +
|
| private:
|
| + WebViewGuest* const web_view_guest_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(WebViewGuestDelegate);
|
| };
|
|
|
|
|