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

Side by Side Diff: chrome/browser/ui/views/apps/chrome_native_app_window_views_win.h

Issue 616253002: Extract NativeAppWindow from src/extensions Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: might fix athena. similarity=33 Created 6 years, 2 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
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 CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_ 5 #ifndef CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_
6 #define CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_ 6 #define CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_
7 7
8 #include "chrome/browser/ui/views/apps/chrome_native_app_window_views.h" 8 #include "chrome/browser/ui/views/apps/chrome_native_app_window_views.h"
9 9
10 namespace web_app { 10 namespace web_app {
11 struct ShortcutInfo; 11 struct ShortcutInfo;
12 } 12 }
13 13
14 class GlassAppWindowFrameViewWin; 14 class GlassAppWindowFrameViewWin;
15 15
16 // Windows-specific parts of the views-backed native shell window implementation 16 // Windows-specific parts of the views-backed native shell window implementation
17 // for packaged apps. 17 // for packaged apps.
18 class ChromeNativeAppWindowViewsWin : public ChromeNativeAppWindowViews { 18 class ChromeNativeAppWindowViewsWin : public ChromeNativeAppWindowViews {
19 public: 19 public:
20 ChromeNativeAppWindowViewsWin(); 20 explicit ChromeNativeAppWindowViewsWin(extensions::AppWindow* app_window);
21 21
22 GlassAppWindowFrameViewWin* glass_frame_view() { 22 GlassAppWindowFrameViewWin* glass_frame_view() {
23 return glass_frame_view_; 23 return glass_frame_view_;
24 } 24 }
25 25
26 private: 26 private:
27 void ActivateParentDesktopIfNecessary(); 27 void ActivateParentDesktopIfNecessary();
28 28
29 void OnShortcutInfoLoaded( 29 void OnShortcutInfoLoaded(
30 const web_app::ShortcutInfo& shortcut_info); 30 const web_app::ShortcutInfo& shortcut_info);
31 31
32 HWND GetNativeAppWindowHWND() const; 32 HWND GetNativeAppWindowHWND() const;
33 bool IsRunningInAsh(); 33 bool IsRunningInAsh();
34 void EnsureCaptionStyleSet(); 34 void EnsureCaptionStyleSet();
35 35
36 // Overridden from ChromeNativeAppWindowViews: 36 // Overridden from ChromeNativeAppWindowViews:
37 virtual void OnBeforeWidgetInit(views::Widget::InitParams* init_params, 37 virtual void OnBeforeWidgetInit(views::Widget::InitParams* init_params,
38 views::Widget* widget) OVERRIDE; 38 views::Widget* widget) OVERRIDE;
39 virtual void InitializeDefaultWindow( 39 virtual void InitializeDefaultWindow(
40 const extensions::AppWindow::CreateParams& create_params) OVERRIDE; 40 const native_app_window::AppWindowCreateParams& create_params) OVERRIDE;
41 virtual views::NonClientFrameView* CreateStandardDesktopAppFrame() OVERRIDE; 41 virtual views::NonClientFrameView* CreateStandardDesktopAppFrame() OVERRIDE;
42 42
43 // Overridden from ui::BaseWindow: 43 // Overridden from ui::BaseWindow:
44 virtual void Show() OVERRIDE; 44 virtual void Show() OVERRIDE;
45 virtual void Activate() OVERRIDE; 45 virtual void Activate() OVERRIDE;
46 46
47 // Overridden from extensions::NativeAppWindow: 47 // Overridden from extensions::NativeAppWindow:
48 virtual void UpdateShelfMenu() OVERRIDE; 48 virtual void UpdateShelfMenu() OVERRIDE;
49 49
50 // Populated if there is a glass frame, which provides special information 50 // Populated if there is a glass frame, which provides special information
51 // to the native widget implementation. This will be NULL if there is no 51 // to the native widget implementation. This will be NULL if there is no
52 // glass frame. Note, this can change from NULL to non-NULL and back again 52 // glass frame. Note, this can change from NULL to non-NULL and back again
53 // throughout the life of a window, e.g. if DWM is enabled and disabled. 53 // throughout the life of a window, e.g. if DWM is enabled and disabled.
54 GlassAppWindowFrameViewWin* glass_frame_view_; 54 GlassAppWindowFrameViewWin* glass_frame_view_;
55 55
56 // The Windows Application User Model ID identifying the app. 56 // The Windows Application User Model ID identifying the app.
57 // Not set for windows running inside Ash. 57 // Not set for windows running inside Ash.
58 base::string16 app_model_id_; 58 base::string16 app_model_id_;
59 59
60 base::WeakPtrFactory<ChromeNativeAppWindowViewsWin> weak_ptr_factory_; 60 base::WeakPtrFactory<ChromeNativeAppWindowViewsWin> weak_ptr_factory_;
61 61
62 DISALLOW_COPY_AND_ASSIGN(ChromeNativeAppWindowViewsWin); 62 DISALLOW_COPY_AND_ASSIGN(ChromeNativeAppWindowViewsWin);
63 }; 63 };
64 64
65 #endif // CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_ 65 #endif // CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_WIN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698