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
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_DESKTOP_NATIVE_WIDGET_AURA_WIN_H_
6#define CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_DESKTOP_NATIVE_WIDGET_AURA_WIN_H_
7
8#include "base/basictypes.h"
9#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
10
11class BrowserFrame;
12class BrowserView;
13class ChromeNativeAppWindowViewsWin;
14
15namespace wm {
16class VisibilityController;
17}
18
19// AppWindowDesktopNativeWidgetAura is a DesktopNativeWidgetAura subclass that
20// handles creating the right type of tree hosts for app windows on Windows.
21class AppWindowDesktopNativeWidgetAuraWin
22    : public views::DesktopNativeWidgetAura {
23 public:
24  explicit AppWindowDesktopNativeWidgetAuraWin(
25      ChromeNativeAppWindowViewsWin* app_window);
26
27 protected:
28  virtual ~AppWindowDesktopNativeWidgetAuraWin();
29
30  // Overridden from views::DesktopNativeWidgetAura:
31  virtual void InitNativeWidget(
32      const views::Widget::InitParams& params) OVERRIDE;
33
34 private:
35  // Ownership managed by the views system.
36  ChromeNativeAppWindowViewsWin* app_window_;
37
38  DISALLOW_COPY_AND_ASSIGN(AppWindowDesktopNativeWidgetAuraWin);
39};
40
41#endif  // CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_DESKTOP_NATIVE_WIDGET_AURA_WIN_H_
42