Chromium Code Reviews| Index: components/exo/shell_surface.h |
| diff --git a/components/exo/shell_surface.h b/components/exo/shell_surface.h |
| index 68d4bc280ae660394b5ce165da8d0542e1c3561a..beca1bafb9b8c7db3fb40ba3911646dd3b80be31 100644 |
| --- a/components/exo/shell_surface.h |
| +++ b/components/exo/shell_surface.h |
| @@ -51,6 +51,7 @@ class ShellSurface : public SurfaceDelegate, |
| ShellSurface* parent, |
| const gfx::Rect& initial_bounds, |
| bool activatable, |
| + bool can_minimize, |
|
Daniele Castagna
2016/12/08 20:19:13
nit: Should this be minimizable to stay consistent
reveman
2016/12/11 07:14:04
The name is chosen based on the window state or wi
|
| int container); |
| explicit ShellSurface(Surface* surface); |
| ~ShellSurface() override; |
| @@ -146,13 +147,19 @@ class ShellSurface : public SurfaceDelegate, |
| // for the surface from the user's perspective. |
| void SetGeometry(const gfx::Rect& geometry); |
| - // Set the content bounds for the shadow. Empty bounds will delete |
| - // the shadow. |
| - void SetRectangularShadow(const gfx::Rect& content_bounds); |
| + // Enable/disable rectangular shadow. |
| + void SetRectangularShadow(bool enabled); |
| + |
| + // Set the content bounds for the shadow. Shell surface geometry will be |
| + // used if bounds are empty. |
| + void SetRectangularShadowContentBounds(const gfx::Rect& content_bounds); |
| // Set the pacity of the background for the window that has a shadow. |
| void SetRectangularShadowBackgroundOpacity(float opacity); |
| + // Enable/disable window frame. |
| + void SetFrame(bool enabled); |
| + |
| // Set scale factor for surface. The scale factor will be applied to surface |
| // and all descendants. |
| void SetScale(double scale); |
| @@ -163,8 +170,8 @@ class ShellSurface : public SurfaceDelegate, |
| // Set origin in screen coordinate space. |
| void SetOrigin(const gfx::Point& origin); |
| - // Set activatable state for surface. |
| - void SetActivatable(bool activatable); |
| + // Set container for surface. |
| + void SetContainer(int container); |
| // Sets the main surface for the window. |
| static void SetMainSurface(aura::Window* window, Surface* surface); |
| @@ -199,6 +206,7 @@ class ShellSurface : public SurfaceDelegate, |
| // Overridden from views::View: |
| gfx::Size GetPreferredSize() const override; |
| + gfx::Size GetMinimumSize() const override; |
| // Overridden from ash::wm::WindowStateObserver: |
| void OnPreWindowStateTypeChange(ash::wm::WindowState* window_state, |
| @@ -276,8 +284,11 @@ class ShellSurface : public SurfaceDelegate, |
| aura::Window* parent_; |
| gfx::Rect initial_bounds_; |
| bool activatable_ = true; |
| + const bool can_minimize_; |
|
Daniele Castagna
2016/12/08 20:19:13
nit: use an adjective instead?
reveman
2016/12/11 07:14:04
some reply as above
|
| // Container Window Id (see ash/public/cpp/shell_window_ids.h) |
| - const int container_; |
| + int container_; |
| + bool frame_enabled_ = false; |
| + bool shadow_enabled_ = false; |
| bool pending_show_widget_ = false; |
| base::string16 title_; |
| std::string application_id_; |
| @@ -300,12 +311,12 @@ class ShellSurface : public SurfaceDelegate, |
| aura::Window* shadow_underlay_ = nullptr; |
| std::unique_ptr<ui::EventHandler> shadow_underlay_event_handler_; |
| gfx::Rect shadow_content_bounds_; |
| + float shadow_background_opacity_ = 1.0; |
| std::deque<Config> pending_configs_; |
| std::unique_ptr<ash::WindowResizer> resizer_; |
| std::unique_ptr<ScopedAnimationsDisabled> scoped_animations_disabled_; |
| int top_inset_height_ = 0; |
| int pending_top_inset_height_ = 0; |
| - float rectangular_shadow_background_opacity_ = 1.0; |
| DISALLOW_COPY_AND_ASSIGN(ShellSurface); |
| }; |