OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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_VIEWS_DROPDOWN_BAR_HOST_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "content/public/browser/native_web_keyboard_event.h" | 10 #include "content/public/browser/native_web_keyboard_event.h" |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 views::FocusManager* focus_manager_; | 174 views::FocusManager* focus_manager_; |
175 | 175 |
176 // True if the accelerator target for Esc key is registered. | 176 // True if the accelerator target for Esc key is registered. |
177 bool esc_accel_target_registered_; | 177 bool esc_accel_target_registered_; |
178 | 178 |
179 // Tracks and stores the last focused view which is not the DropdownBarView | 179 // Tracks and stores the last focused view which is not the DropdownBarView |
180 // or any of its children. Used to restore focus once the DropdownBarView is | 180 // or any of its children. Used to restore focus once the DropdownBarView is |
181 // closed. | 181 // closed. |
182 scoped_ptr<views::ExternalFocusTracker> focus_tracker_; | 182 scoped_ptr<views::ExternalFocusTracker> focus_tracker_; |
183 | 183 |
| 184 #if defined(USE_AURA) |
| 185 // The host view is a view maintained by the drop down bar in |browser_view_| |
| 186 // to denote the z-order of the drop down bar relative to child views of |
| 187 // |browser_view_| which have layers and NativeViews attached to a child |
| 188 // NativeViewHost of |browser_view_|. |
| 189 // TODO: implement a similar mechanism for Windows. |
| 190 scoped_ptr<views::View> host_view_; |
| 191 #endif // USE_AURA |
| 192 |
184 // Host is the Widget implementation that is created and maintained by the | 193 // Host is the Widget implementation that is created and maintained by the |
185 // dropdown bar. It contains the DropdownBarView. | 194 // dropdown bar. It contains the DropdownBarView. |
186 scoped_ptr<views::Widget> host_; | 195 scoped_ptr<views::Widget> host_; |
187 | 196 |
188 // A flag to manually manage visibility. GTK/X11 is asynchronous and | 197 // A flag to manually manage visibility. GTK/X11 is asynchronous and |
189 // the state of the widget can be out of sync. | 198 // the state of the widget can be out of sync. |
190 bool is_visible_; | 199 bool is_visible_; |
191 | 200 |
192 DISALLOW_COPY_AND_ASSIGN(DropdownBarHost); | 201 DISALLOW_COPY_AND_ASSIGN(DropdownBarHost); |
193 }; | 202 }; |
194 | 203 |
195 #endif // CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_ | 204 #endif // CHROME_BROWSER_UI_VIEWS_DROPDOWN_BAR_HOST_H_ |
OLD | NEW |