| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ | 5 #ifndef EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ |
| 6 #define EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ | 6 #define EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ |
| 7 | 7 |
| 8 #include <queue> | 8 #include <queue> |
| 9 | 9 |
| 10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 138 // This gives the derived class an opportunity to perform some cleanup prior | 138 // This gives the derived class an opportunity to perform some cleanup prior |
| 139 // to destruction. | 139 // to destruction. |
| 140 virtual void WillDestroy() {} | 140 virtual void WillDestroy() {} |
| 141 | 141 |
| 142 // This method is to be implemented by the derived class. Access to guest | 142 // This method is to be implemented by the derived class. Access to guest |
| 143 // views are determined by the availability of the internal extension API | 143 // views are determined by the availability of the internal extension API |
| 144 // used to implement the guest view. | 144 // used to implement the guest view. |
| 145 // | 145 // |
| 146 // This should be the name of the API as it appears in the _api_features.json | 146 // This should be the name of the API as it appears in the _api_features.json |
| 147 // file. | 147 // file. |
| 148 virtual const char* GetAPINamespace() = 0; | 148 virtual const char* GetAPINamespace() const = 0; |
| 149 |
| 150 // This method is to be implemented by the derived class. This method is the |
| 151 // task prefix to show for a task produced by this GuestViewBase's derived |
| 152 // type. |
| 153 virtual int GetTaskPrefix() const = 0; |
| 154 |
| 155 // This method is to be implemented by the derived class. This method is the |
| 156 // title to show for a task produced by this GuestViewBase's derived type. |
| 157 virtual base::string16 GetTaskTitle() const; |
| 149 | 158 |
| 150 // This method is to be implemented by the derived class. Given a set of | 159 // This method is to be implemented by the derived class. Given a set of |
| 151 // initialization parameters, a concrete subclass of GuestViewBase can | 160 // initialization parameters, a concrete subclass of GuestViewBase can |
| 152 // create a specialized WebContents that it returns back to GuestViewBase. | 161 // create a specialized WebContents that it returns back to GuestViewBase. |
| 153 typedef base::Callback<void(content::WebContents*)> | 162 typedef base::Callback<void(content::WebContents*)> |
| 154 WebContentsCreatedCallback; | 163 WebContentsCreatedCallback; |
| 155 virtual void CreateWebContents( | 164 virtual void CreateWebContents( |
| 156 const std::string& embedder_extension_id, | 165 const std::string& embedder_extension_id, |
| 157 int embedder_render_process_id, | 166 int embedder_render_process_id, |
| 158 const base::DictionaryValue& create_params, | 167 const base::DictionaryValue& create_params, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 172 | 181 |
| 173 bool IsViewType(const char* const view_type) const { | 182 bool IsViewType(const char* const view_type) const { |
| 174 return !strcmp(GetViewType(), view_type); | 183 return !strcmp(GetViewType(), view_type); |
| 175 } | 184 } |
| 176 | 185 |
| 177 // Toggles autosize mode for this GuestView. | 186 // Toggles autosize mode for this GuestView. |
| 178 void SetAutoSize(bool enabled, | 187 void SetAutoSize(bool enabled, |
| 179 const gfx::Size& min_size, | 188 const gfx::Size& min_size, |
| 180 const gfx::Size& max_size); | 189 const gfx::Size& max_size); |
| 181 | 190 |
| 191 base::string16 GetTitle() const; |
| 192 |
| 182 base::WeakPtr<GuestViewBase> AsWeakPtr(); | 193 base::WeakPtr<GuestViewBase> AsWeakPtr(); |
| 183 | 194 |
| 184 bool initialized() const { return initialized_; } | 195 bool initialized() const { return initialized_; } |
| 185 | 196 |
| 186 content::WebContents* embedder_web_contents() const { | 197 content::WebContents* embedder_web_contents() const { |
| 187 return embedder_web_contents_; | 198 return embedder_web_contents_; |
| 188 } | 199 } |
| 189 | 200 |
| 190 // Returns the guest WebContents. | 201 // Returns the guest WebContents. |
| 191 content::WebContents* guest_web_contents() const { | 202 content::WebContents* guest_web_contents() const { |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 // This is used to ensure pending tasks will not fire after this object is | 338 // This is used to ensure pending tasks will not fire after this object is |
| 328 // destroyed. | 339 // destroyed. |
| 329 base::WeakPtrFactory<GuestViewBase> weak_ptr_factory_; | 340 base::WeakPtrFactory<GuestViewBase> weak_ptr_factory_; |
| 330 | 341 |
| 331 DISALLOW_COPY_AND_ASSIGN(GuestViewBase); | 342 DISALLOW_COPY_AND_ASSIGN(GuestViewBase); |
| 332 }; | 343 }; |
| 333 | 344 |
| 334 } // namespace extensions | 345 } // namespace extensions |
| 335 | 346 |
| 336 #endif // EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ | 347 #endif // EXTENSIONS_BROWSER_GUEST_VIEW_GUEST_VIEW_BASE_H_ |
| OLD | NEW |