Infobar material design refresh: layout
[chromium-blink-merge.git] / chrome / browser / ui / views / apps / app_window_native_widget_mac.h
blob9e1a2c576da09ed849d2f120c119550b214124bc
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
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_NATIVE_WIDGET_MAC_H
6 #define CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_NATIVE_WIDGET_MAC_H
8 #include "ui/views/widget/native_widget_mac.h"
10 namespace extensions {
11 class NativeAppWindow;
14 // This implements features specific to app windows, e.g. frameless windows that
15 // behave like normal windows.
16 class AppWindowNativeWidgetMac : public views::NativeWidgetMac {
17 public:
18 AppWindowNativeWidgetMac(views::Widget* widget,
19 extensions::NativeAppWindow* native_app_window);
20 ~AppWindowNativeWidgetMac() override;
22 protected:
23 // NativeWidgetMac:
24 NativeWidgetMacNSWindow* CreateNSWindow(
25 const views::Widget::InitParams& params) override;
27 private:
28 // Weak. Owned by extensions::AppWindow (which manages our Widget via its
29 // WebContents).
30 extensions::NativeAppWindow* native_app_window_;
32 DISALLOW_COPY_AND_ASSIGN(AppWindowNativeWidgetMac);
35 #endif // CHROME_BROWSER_UI_VIEWS_APPS_APP_WINDOW_NATIVE_WIDGET_MAC_H