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

Side by Side Diff: apps/app_window.h

Issue 479933003: Move NativeAppWindow to extensions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « apps/app_shim/extension_app_shim_handler_mac.cc ('k') | apps/app_window.cc » ('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 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 APPS_APP_WINDOW_H_ 5 #ifndef APPS_APP_WINDOW_H_
6 #define APPS_APP_WINDOW_H_ 6 #define APPS_APP_WINDOW_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 18 matching lines...) Expand all
29 class DictionaryValue; 29 class DictionaryValue;
30 } 30 }
31 31
32 namespace content { 32 namespace content {
33 class BrowserContext; 33 class BrowserContext;
34 class WebContents; 34 class WebContents;
35 } 35 }
36 36
37 namespace extensions { 37 namespace extensions {
38 class Extension; 38 class Extension;
39 class NativeAppWindow;
39 class PlatformAppBrowserTest; 40 class PlatformAppBrowserTest;
40 class WindowController; 41 class WindowController;
41 42
42 struct DraggableRegion; 43 struct DraggableRegion;
43 } 44 }
44 45
45 namespace ui { 46 namespace ui {
46 class BaseWindow; 47 class BaseWindow;
47 } 48 }
48 49
49 namespace apps { 50 namespace apps {
50 51
51 class AppDelegate; 52 class AppDelegate;
52 class AppWebContentsHelper; 53 class AppWebContentsHelper;
53 class NativeAppWindow;
54 54
55 // Manages the web contents for app windows. The implementation for this 55 // Manages the web contents for app windows. The implementation for this
56 // class should create and maintain the WebContents for the window, and handle 56 // class should create and maintain the WebContents for the window, and handle
57 // any message passing between the web contents and the extension system or 57 // any message passing between the web contents and the extension system or
58 // native window. 58 // native window.
59 class AppWindowContents { 59 class AppWindowContents {
60 public: 60 public:
61 AppWindowContents() {} 61 AppWindowContents() {}
62 virtual ~AppWindowContents() {} 62 virtual ~AppWindowContents() {}
63 63
64 // Called to initialize the WebContents, before the app window is created. 64 // Called to initialize the WebContents, before the app window is created.
65 virtual void Initialize(content::BrowserContext* context, 65 virtual void Initialize(content::BrowserContext* context,
66 const GURL& url) = 0; 66 const GURL& url) = 0;
67 67
68 // Called to load the contents, after the app window is created. 68 // Called to load the contents, after the app window is created.
69 virtual void LoadContents(int32 creator_process_id) = 0; 69 virtual void LoadContents(int32 creator_process_id) = 0;
70 70
71 // Called when the native window changes. 71 // Called when the native window changes.
72 virtual void NativeWindowChanged(NativeAppWindow* native_app_window) = 0; 72 virtual void NativeWindowChanged(
73 extensions::NativeAppWindow* native_app_window) = 0;
73 74
74 // Called when the native window closes. 75 // Called when the native window closes.
75 virtual void NativeWindowClosed() = 0; 76 virtual void NativeWindowClosed() = 0;
76 77
77 // Called in tests when the window is shown 78 // Called in tests when the window is shown
78 virtual void DispatchWindowShownForTests() const = 0; 79 virtual void DispatchWindowShownForTests() const = 0;
79 80
80 virtual content::WebContents* GetWebContents() const = 0; 81 virtual content::WebContents* GetWebContents() const = 0;
81 82
82 private: 83 private:
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 window_type_ == WINDOW_TYPE_V1_PANEL); 226 window_type_ == WINDOW_TYPE_V1_PANEL);
226 } 227 }
227 content::BrowserContext* browser_context() const { return browser_context_; } 228 content::BrowserContext* browser_context() const { return browser_context_; }
228 const gfx::Image& app_icon() const { return app_icon_; } 229 const gfx::Image& app_icon() const { return app_icon_; }
229 const GURL& app_icon_url() const { return app_icon_url_; } 230 const GURL& app_icon_url() const { return app_icon_url_; }
230 const gfx::Image& badge_icon() const { return badge_icon_; } 231 const gfx::Image& badge_icon() const { return badge_icon_; }
231 const GURL& badge_icon_url() const { return badge_icon_url_; } 232 const GURL& badge_icon_url() const { return badge_icon_url_; }
232 bool is_hidden() const { return is_hidden_; } 233 bool is_hidden() const { return is_hidden_; }
233 234
234 const extensions::Extension* GetExtension() const; 235 const extensions::Extension* GetExtension() const;
235 NativeAppWindow* GetBaseWindow(); 236 extensions::NativeAppWindow* GetBaseWindow();
236 gfx::NativeWindow GetNativeWindow(); 237 gfx::NativeWindow GetNativeWindow();
237 238
238 // Returns the bounds that should be reported to the renderer. 239 // Returns the bounds that should be reported to the renderer.
239 gfx::Rect GetClientBounds() const; 240 gfx::Rect GetClientBounds() const;
240 241
241 // NativeAppWindows should call this to determine what the window's title 242 // NativeAppWindows should call this to determine what the window's title
242 // is on startup and from within UpdateWindowTitle(). 243 // is on startup and from within UpdateWindowTitle().
243 base::string16 GetTitle() const; 244 base::string16 GetTitle() const;
244 245
245 // Call to notify ShellRegistry and delete the window. Subclasses should 246 // Call to notify ShellRegistry and delete the window. Subclasses should
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 494
494 // Badge for icon shown in the task bar. 495 // Badge for icon shown in the task bar.
495 gfx::Image badge_icon_; 496 gfx::Image badge_icon_;
496 497
497 // URL to be used for setting the badge on the app icon. 498 // URL to be used for setting the badge on the app icon.
498 GURL badge_icon_url_; 499 GURL badge_icon_url_;
499 500
500 // An object to load the badge as an extension resource. 501 // An object to load the badge as an extension resource.
501 scoped_ptr<extensions::IconImage> badge_icon_image_; 502 scoped_ptr<extensions::IconImage> badge_icon_image_;
502 503
503 scoped_ptr<NativeAppWindow> native_app_window_; 504 scoped_ptr<extensions::NativeAppWindow> native_app_window_;
504 scoped_ptr<AppWindowContents> app_window_contents_; 505 scoped_ptr<AppWindowContents> app_window_contents_;
505 scoped_ptr<AppDelegate> app_delegate_; 506 scoped_ptr<AppDelegate> app_delegate_;
506 scoped_ptr<AppWebContentsHelper> helper_; 507 scoped_ptr<AppWebContentsHelper> helper_;
507 508
508 // Manages popup windows (bubbles, tab-modals) visible overlapping the 509 // Manages popup windows (bubbles, tab-modals) visible overlapping the
509 // app window. 510 // app window.
510 scoped_ptr<web_modal::PopupManager> popup_manager_; 511 scoped_ptr<web_modal::PopupManager> popup_manager_;
511 512
512 base::WeakPtrFactory<AppWindow> image_loader_ptr_factory_; 513 base::WeakPtrFactory<AppWindow> image_loader_ptr_factory_;
513 514
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
547 548
548 // Whether |alpha_enabled| was set in the CreateParams. 549 // Whether |alpha_enabled| was set in the CreateParams.
549 bool requested_alpha_enabled_; 550 bool requested_alpha_enabled_;
550 551
551 DISALLOW_COPY_AND_ASSIGN(AppWindow); 552 DISALLOW_COPY_AND_ASSIGN(AppWindow);
552 }; 553 };
553 554
554 } // namespace apps 555 } // namespace apps
555 556
556 #endif // APPS_APP_WINDOW_H_ 557 #endif // APPS_APP_WINDOW_H_
OLDNEW
« no previous file with comments | « apps/app_shim/extension_app_shim_handler_mac.cc ('k') | apps/app_window.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698