• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 UI_AURA_WINDOW_TREE_HOST_MAC_H_
6 #define UI_AURA_WINDOW_TREE_HOST_MAC_H_
7 
8 #include <vector>
9 
10 #include "base/mac/scoped_nsobject.h"
11 #include "ui/aura/aura_export.h"
12 #include "ui/aura/window_tree_host.h"
13 #include "ui/gfx/insets.h"
14 #include "ui/gfx/rect.h"
15 
16 namespace ui {
17 class MouseEvent;
18 }
19 
20 namespace aura {
21 
22 namespace internal {
23 class TouchEventCalibrate;
24 }
25 
26 class AURA_EXPORT WindowTreeHostMac : public WindowTreeHost {
27  public:
28   explicit WindowTreeHostMac(const gfx::Rect& bounds);
29   virtual ~WindowTreeHostMac();
30 
31  private:
32   // WindowTreeHost Overrides.
33   virtual ui::EventSource* GetEventSource() OVERRIDE;
34   virtual gfx::AcceleratedWidget GetAcceleratedWidget() OVERRIDE;
35   virtual void Show() OVERRIDE;
36   virtual void Hide() OVERRIDE;
37   virtual void ToggleFullScreen() OVERRIDE;
38   virtual gfx::Rect GetBounds() const OVERRIDE;
39   virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE;
40   virtual gfx::Insets GetInsets() const OVERRIDE;
41   virtual void SetInsets(const gfx::Insets& insets) OVERRIDE;
42   virtual gfx::Point GetLocationOnNativeScreen() const OVERRIDE;
43   virtual void SetCapture() OVERRIDE;
44   virtual void ReleaseCapture() OVERRIDE;
45   virtual bool ConfineCursorToRootWindow() OVERRIDE;
46   virtual void UnConfineCursor() OVERRIDE;
47   virtual void SetCursorNative(gfx::NativeCursor cursor_type) OVERRIDE;
48   virtual void MoveCursorToNative(const gfx::Point& location) OVERRIDE;
49   virtual void OnCursorVisibilityChangedNative(bool show) OVERRIDE;
50   virtual void PostNativeEvent(const base::NativeEvent& event) OVERRIDE;
51   virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE;
52 
53  private:
54   base::scoped_nsobject<NSWindow> window_;
55 
56   DISALLOW_COPY_AND_ASSIGN(WindowTreeHostMac);
57 };
58 
59 }  // namespace aura
60 
61 #endif  // UI_AURA_WINDOW_TREE_HOST_MAC_H_
62