MacViews: Get c/b/ui/views/tabs to build on Mac
[chromium-blink-merge.git] / ui / views / controls / native / native_view_host_mac.h
blob6880170f6148ae03989bc0b93a778e98a3828a48
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.
5 #ifndef UI_VIEWS_CONTROLS_NATIVE_NATIVE_VIEW_HOST_MAC_H_
6 #define UI_VIEWS_CONTROLS_NATIVE_NATIVE_VIEW_HOST_MAC_H_
8 #include "base/macros.h"
9 #include "ui/views/controls/native/native_view_host_wrapper.h"
10 #include "ui/views/views_export.h"
12 namespace views {
14 class NativeViewHost;
16 // Mac implementation of NativeViewHostWrapper.
17 class VIEWS_EXPORT NativeViewHostMac : public NativeViewHostWrapper {
18 public:
19 explicit NativeViewHostMac(NativeViewHost* host);
20 virtual ~NativeViewHostMac();
22 // Overridden from NativeViewHostWrapper:
23 virtual void AttachNativeView() override;
24 virtual void NativeViewDetaching(bool destroyed) override;
25 virtual void AddedToWidget() override;
26 virtual void RemovedFromWidget() override;
27 virtual void InstallClip(int x, int y, int w, int h) override;
28 virtual bool HasInstalledClip() override;
29 virtual void UninstallClip() override;
30 virtual void ShowWidget(int x, int y, int w, int h) override;
31 virtual void HideWidget() override;
32 virtual void SetFocus() override;
33 virtual gfx::NativeViewAccessible GetNativeViewAccessible() override;
34 virtual gfx::NativeCursor GetCursor(int x, int y) override;
36 private:
37 // Our associated NativeViewHost. Owns this.
38 NativeViewHost* host_;
40 DISALLOW_COPY_AND_ASSIGN(NativeViewHostMac);
43 } // namespace views
45 #endif // UI_VIEWS_CONTROLS_NATIVE_NATIVE_VIEW_HOST_AURA_H_