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_APP_WINDOW_APP_WINDOW_H_ | 5 #ifndef EXTENSIONS_BROWSER_APP_WINDOW_APP_WINDOW_H_ |
6 #define EXTENSIONS_BROWSER_APP_WINDOW_APP_WINDOW_H_ | 6 #define EXTENSIONS_BROWSER_APP_WINDOW_APP_WINDOW_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 // If true, the window will be focused on creation. Defaults to true. | 184 // If true, the window will be focused on creation. Defaults to true. |
185 bool focused; | 185 bool focused; |
186 | 186 |
187 // If true, the window will stay on top of other windows that are not | 187 // If true, the window will stay on top of other windows that are not |
188 // configured to be always on top. Defaults to false. | 188 // configured to be always on top. Defaults to false. |
189 bool always_on_top; | 189 bool always_on_top; |
190 | 190 |
191 // If true, the window will be visible on all workspaces. Defaults to false. | 191 // If true, the window will be visible on all workspaces. Defaults to false. |
192 bool visible_on_all_workspaces; | 192 bool visible_on_all_workspaces; |
193 | 193 |
| 194 // If true, the window will have its own shelf icon. Otherwise the window |
| 195 // will be grouped in the shelf with other windows that are associated with |
| 196 // the app. Defaults to false. |
| 197 bool show_in_shelf; |
| 198 |
194 // The API enables developers to specify content or window bounds. This | 199 // The API enables developers to specify content or window bounds. This |
195 // function combines them into a single, constrained window size. | 200 // function combines them into a single, constrained window size. |
196 gfx::Rect GetInitialWindowBounds(const gfx::Insets& frame_insets) const; | 201 gfx::Rect GetInitialWindowBounds(const gfx::Insets& frame_insets) const; |
197 | 202 |
198 // The API enables developers to specify content or window size constraints. | 203 // The API enables developers to specify content or window size constraints. |
199 // These functions combine them so that we can work with one set of | 204 // These functions combine them so that we can work with one set of |
200 // constraints. | 205 // constraints. |
201 gfx::Size GetContentMinimumSize(const gfx::Insets& frame_insets) const; | 206 gfx::Size GetContentMinimumSize(const gfx::Insets& frame_insets) const; |
202 gfx::Size GetContentMaximumSize(const gfx::Insets& frame_insets) const; | 207 gfx::Size GetContentMaximumSize(const gfx::Insets& frame_insets) const; |
203 gfx::Size GetWindowMinimumSize(const gfx::Insets& frame_insets) const; | 208 gfx::Size GetWindowMinimumSize(const gfx::Insets& frame_insets) const; |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
361 | 366 |
362 // Whether the app window wants to be alpha enabled. | 367 // Whether the app window wants to be alpha enabled. |
363 bool requested_alpha_enabled() const { return requested_alpha_enabled_; } | 368 bool requested_alpha_enabled() const { return requested_alpha_enabled_; } |
364 | 369 |
365 // Whether the app window is created by IME extensions. | 370 // Whether the app window is created by IME extensions. |
366 // TODO(bshe): rename to hide_app_window_in_launcher if it is not used | 371 // TODO(bshe): rename to hide_app_window_in_launcher if it is not used |
367 // anywhere other than app_window_launcher_controller after M45. Otherwise, | 372 // anywhere other than app_window_launcher_controller after M45. Otherwise, |
368 // remove this TODO. | 373 // remove this TODO. |
369 bool is_ime_window() const { return is_ime_window_; } | 374 bool is_ime_window() const { return is_ime_window_; } |
370 | 375 |
| 376 bool show_in_shelf() const { return show_in_shelf_; } |
| 377 |
371 void SetAppWindowContentsForTesting( | 378 void SetAppWindowContentsForTesting( |
372 std::unique_ptr<AppWindowContents> contents) { | 379 std::unique_ptr<AppWindowContents> contents) { |
373 app_window_contents_ = std::move(contents); | 380 app_window_contents_ = std::move(contents); |
374 } | 381 } |
375 | 382 |
376 protected: | 383 protected: |
377 ~AppWindow() override; | 384 ~AppWindow() override; |
378 | 385 |
379 private: | 386 private: |
380 // PlatformAppBrowserTest needs access to web_contents() | 387 // PlatformAppBrowserTest needs access to web_contents() |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
563 // reinstated when the window exits fullscreen and moves away from the | 570 // reinstated when the window exits fullscreen and moves away from the |
564 // taskbar. | 571 // taskbar. |
565 bool cached_always_on_top_; | 572 bool cached_always_on_top_; |
566 | 573 |
567 // Whether |alpha_enabled| was set in the CreateParams. | 574 // Whether |alpha_enabled| was set in the CreateParams. |
568 bool requested_alpha_enabled_; | 575 bool requested_alpha_enabled_; |
569 | 576 |
570 // Whether |is_ime_window| was set in the CreateParams. | 577 // Whether |is_ime_window| was set in the CreateParams. |
571 bool is_ime_window_; | 578 bool is_ime_window_; |
572 | 579 |
| 580 // Whether |show_in_shelf| was set in the CreateParams. |
| 581 bool show_in_shelf_; |
| 582 |
573 // PlzNavigate: this is called when the first navigation is ready to commit. | 583 // PlzNavigate: this is called when the first navigation is ready to commit. |
574 base::Closure on_first_commit_callback_; | 584 base::Closure on_first_commit_callback_; |
575 | 585 |
576 base::WeakPtrFactory<AppWindow> image_loader_ptr_factory_; | 586 base::WeakPtrFactory<AppWindow> image_loader_ptr_factory_; |
577 | 587 |
578 DISALLOW_COPY_AND_ASSIGN(AppWindow); | 588 DISALLOW_COPY_AND_ASSIGN(AppWindow); |
579 }; | 589 }; |
580 | 590 |
581 } // namespace extensions | 591 } // namespace extensions |
582 | 592 |
583 #endif // EXTENSIONS_BROWSER_APP_WINDOW_APP_WINDOW_H_ | 593 #endif // EXTENSIONS_BROWSER_APP_WINDOW_APP_WINDOW_H_ |
OLD | NEW |