OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_MAC_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_MAC_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_MAC_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_MAC_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 // Mac-specific parts of ChromeNativeAppWindowViews. | 10 // Mac-specific parts of ChromeNativeAppWindowViews. |
11 class ChromeNativeAppWindowViewsMac : public ChromeNativeAppWindowViews { | 11 class ChromeNativeAppWindowViewsMac : public ChromeNativeAppWindowViews { |
12 public: | 12 public: |
13 ChromeNativeAppWindowViewsMac(); | 13 ChromeNativeAppWindowViewsMac(); |
14 ~ChromeNativeAppWindowViewsMac() override; | 14 ~ChromeNativeAppWindowViewsMac() override; |
15 | 15 |
16 protected: | 16 protected: |
17 // ChromeNativeAppWindowViews implementation. | 17 // ChromeNativeAppWindowViews implementation. |
18 void OnBeforeWidgetInit( | 18 void OnBeforeWidgetInit( |
19 const extensions::AppWindow::CreateParams& create_params, | 19 const extensions::AppWindow::CreateParams& create_params, |
20 views::Widget::InitParams* init_params, | 20 views::Widget::InitParams* init_params, |
21 views::Widget* widget) override; | 21 views::Widget* widget) override; |
22 views::NonClientFrameView* CreateStandardDesktopAppFrame() override; | 22 views::NonClientFrameView* CreateStandardDesktopAppFrame() override; |
| 23 views::NonClientFrameView* CreateNonStandardAppFrame() override; |
23 | 24 |
24 // ui::BaseWindow implementation. | 25 // ui::BaseWindow implementation. |
25 void Show() override; | 26 void Show() override; |
26 void ShowInactive() override; | 27 void ShowInactive() override; |
27 void FlashFrame(bool flash) override; | 28 void FlashFrame(bool flash) override; |
28 | 29 |
29 // NativeAppWindow implementation. | 30 // NativeAppWindow implementation. |
30 // These are used to simulate Mac-style hide/show. Since windows can be hidden | 31 // These are used to simulate Mac-style hide/show. Since windows can be hidden |
31 // and shown using the app.window API, this sets is_hidden_with_app_ to | 32 // and shown using the app.window API, this sets is_hidden_with_app_ to |
32 // differentiate the reason a window was hidden. | 33 // differentiate the reason a window was hidden. |
33 void ShowWithApp() override; | 34 void ShowWithApp() override; |
34 void HideWithApp() override; | 35 void HideWithApp() override; |
35 | 36 |
36 private: | 37 private: |
37 // Whether this window last became hidden due to a request to hide the entire | 38 // Whether this window last became hidden due to a request to hide the entire |
38 // app, e.g. via the dock menu or Cmd+H. This is set by Hide/ShowWithApp. | 39 // app, e.g. via the dock menu or Cmd+H. This is set by Hide/ShowWithApp. |
39 bool is_hidden_with_app_; | 40 bool is_hidden_with_app_; |
40 | 41 |
41 DISALLOW_COPY_AND_ASSIGN(ChromeNativeAppWindowViewsMac); | 42 DISALLOW_COPY_AND_ASSIGN(ChromeNativeAppWindowViewsMac); |
42 }; | 43 }; |
43 | 44 |
44 #endif // CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_MAC_H_ | 45 #endif // CHROME_BROWSER_UI_VIEWS_APPS_CHROME_NATIVE_APP_WINDOW_VIEWS_MAC_H_ |
OLD | NEW |