OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ | 5 #ifndef CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ |
6 #define CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ | 6 #define CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ |
7 | 7 |
8 #import <Cocoa/Cocoa.h> | 8 #import <Cocoa/Cocoa.h> |
9 | 9 |
10 #include <list> | 10 #include <list> |
11 #include <map> | 11 #include <map> |
12 | 12 |
13 #include "base/basictypes.h" | 13 #include "base/basictypes.h" |
14 #include "base/memory/scoped_nsobject.h" | 14 #include "base/mac/scoped_nsobject.h" |
15 #include "base/memory/scoped_ptr.h" | 15 #include "base/memory/scoped_ptr.h" |
16 #include "chrome/browser/ui/panels/native_panel_stack_window.h" | 16 #include "chrome/browser/ui/panels/native_panel_stack_window.h" |
17 #include "ui/gfx/rect.h" | 17 #include "ui/gfx/rect.h" |
18 | 18 |
19 @class BatchBoundsAnimationDelegate; | 19 @class BatchBoundsAnimationDelegate; |
20 class Panel; | 20 class Panel; |
21 class PanelStackWindowCocoa; | 21 class PanelStackWindowCocoa; |
22 | 22 |
23 // A native window that acts as the owner of all/partial panels in the stack, | 23 // A native window that acts as the owner of all/partial panels in the stack, |
24 // in order to make these panels appear as a single window. | 24 // in order to make these panels appear as a single window. |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 gfx::Rect GetStackWindowBounds() const; | 63 gfx::Rect GetStackWindowBounds() const; |
64 void UpdateStackWindowBounds(); | 64 void UpdateStackWindowBounds(); |
65 | 65 |
66 // Ensures that the background window is created. | 66 // Ensures that the background window is created. |
67 void EnsureWindowCreated(); | 67 void EnsureWindowCreated(); |
68 | 68 |
69 // Weak pointer. Owned by PanelManager. | 69 // Weak pointer. Owned by PanelManager. |
70 NativePanelStackWindowDelegate* delegate_; | 70 NativePanelStackWindowDelegate* delegate_; |
71 | 71 |
72 // The underlying window. | 72 // The underlying window. |
73 scoped_nsobject<NSWindow> window_; | 73 base::scoped_nsobject<NSWindow> window_; |
74 | 74 |
75 Panels panels_; | 75 Panels panels_; |
76 | 76 |
77 // Identifier from requestUserAttention. | 77 // Identifier from requestUserAttention. |
78 NSInteger attention_request_id_; | 78 NSInteger attention_request_id_; |
79 | 79 |
80 // For batch bounds update. | 80 // For batch bounds update. |
81 bool bounds_updates_started_; | 81 bool bounds_updates_started_; |
82 bool animate_bounds_updates_; | 82 bool animate_bounds_updates_; |
83 BoundsUpdates bounds_updates_; | 83 BoundsUpdates bounds_updates_; |
84 | 84 |
85 // Used to animate the bounds changes at a synchronized pace. | 85 // Used to animate the bounds changes at a synchronized pace. |
86 // Lifetime controlled manually, needs more than just |release| to terminate. | 86 // Lifetime controlled manually, needs more than just |release| to terminate. |
87 NSViewAnimation* bounds_animation_; | 87 NSViewAnimation* bounds_animation_; |
88 scoped_nsobject<BatchBoundsAnimationDelegate> bounds_animation_delegate_; | 88 base::scoped_nsobject<BatchBoundsAnimationDelegate> |
| 89 bounds_animation_delegate_; |
89 | 90 |
90 DISALLOW_COPY_AND_ASSIGN(PanelStackWindowCocoa); | 91 DISALLOW_COPY_AND_ASSIGN(PanelStackWindowCocoa); |
91 }; | 92 }; |
92 | 93 |
93 #endif // CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ | 94 #endif // CHROME_BROWSER_UI_COCOA_PANELS_PANEL_STACK_WINDOW_COCOA_H_ |
OLD | NEW |