Chromium Code Reviews| Index: ash/common/frame/custom_frame_view_ash.h |
| diff --git a/ash/common/frame/custom_frame_view_ash.h b/ash/common/frame/custom_frame_view_ash.h |
| index 9409ba6fc46929bb4e85c21432aa10ce687dedbf..b2e50bedffb1845f9b4109c5762acb19816ec546 100644 |
| --- a/ash/common/frame/custom_frame_view_ash.h |
| +++ b/ash/common/frame/custom_frame_view_ash.h |
| @@ -21,6 +21,7 @@ namespace ash { |
| class FrameCaptionButtonContainerView; |
| class HeaderView; |
| class ImmersiveFullscreenController; |
| +class ImmersiveFullscreenControllerDelegate; |
| // A NonClientFrameView used for packaged apps, dialogs and other non-browser |
| // windows. It supports immersive fullscreen. When in immersive fullscreen, the |
| @@ -33,7 +34,16 @@ class ASH_EXPORT CustomFrameViewAsh : public views::NonClientFrameView { |
| // Internal class name. |
| static const char kViewClassName[]; |
| - explicit CustomFrameViewAsh(views::Widget* frame); |
| + // |enable_immersive| controls whether ImmersiveFullscreenController is |
| + // created for the CustomFrameViewAsh; if true and a WindowStateDelegate has |
| + // not been set on the WindowState associated with |frame|, then an |
| + // ImmersiveFullscreenController is created. |
| + // If ImmersiveFullscreenControllerDelegate is not supplied, HeaderView is |
| + // used as the ImmersiveFullscreenControllerDelegate. |
| + explicit CustomFrameViewAsh( |
|
James Cook
2016/08/24 17:00:32
I think this would be clearer with two constructor
sky
2016/08/24 19:23:28
Can you outline why you feel having two constructo
James Cook
2016/08/24 19:56:29
This allows "new CustomFrameViewAsh(frame, delegat
|
| + views::Widget* frame, |
| + ImmersiveFullscreenControllerDelegate* immersive_delegate = nullptr, |
| + bool enable_immersive = true); |
| ~CustomFrameViewAsh() override; |
| // Inits |immersive_fullscreen_controller| so that the controller reveals |
| @@ -94,6 +104,8 @@ class ASH_EXPORT CustomFrameViewAsh : public views::NonClientFrameView { |
| // View which contains the title and window controls. |
| HeaderView* header_view_; |
| + ImmersiveFullscreenControllerDelegate* immersive_delegate_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(CustomFrameViewAsh); |
| }; |