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 #include "chrome/browser/ui/views/dropdown_bar_host.h" | 5 #include "chrome/browser/ui/views/dropdown_bar_host.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "chrome/browser/ui/view_ids.h" | 9 #include "chrome/browser/ui/view_ids.h" |
10 #include "chrome/browser/ui/views/dropdown_bar_host_delegate.h" | 10 #include "chrome/browser/ui/views/dropdown_bar_host_delegate.h" |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 DropdownBarHostDelegate* delegate) { | 56 DropdownBarHostDelegate* delegate) { |
57 DCHECK(view); | 57 DCHECK(view); |
58 DCHECK(delegate); | 58 DCHECK(delegate); |
59 | 59 |
60 view_ = view; | 60 view_ = view; |
61 delegate_ = delegate; | 61 delegate_ = delegate; |
62 | 62 |
63 // Initialize the host. | 63 // Initialize the host. |
64 host_.reset(new views::Widget); | 64 host_.reset(new views::Widget); |
65 views::Widget::InitParams params(views::Widget::InitParams::TYPE_CONTROL); | 65 views::Widget::InitParams params(views::Widget::InitParams::TYPE_CONTROL); |
66 params.delete_on_destroy = false; | 66 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
67 params.parent_widget = browser_view_->GetWidget(); | 67 params.parent_widget = browser_view_->GetWidget(); |
68 host_->Init(params); | 68 host_->Init(params); |
69 host_->SetContentsView(view_); | 69 host_->SetContentsView(view_); |
70 | 70 |
71 // Start listening to focus changes, so we can register and unregister our | 71 // Start listening to focus changes, so we can register and unregister our |
72 // own handler for Escape. | 72 // own handler for Escape. |
73 focus_manager_ = | 73 focus_manager_ = |
74 views::FocusManager::GetFocusManagerForNativeView(host_->GetNativeView()); | 74 views::FocusManager::GetFocusManagerForNativeView(host_->GetNativeView()); |
75 if (focus_manager_) { | 75 if (focus_manager_) { |
76 focus_manager_->AddFocusChangeListener(this); | 76 focus_manager_->AddFocusChangeListener(this); |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 focus_manager_->RegisterAccelerator(escape, this); | 332 focus_manager_->RegisterAccelerator(escape, this); |
333 esc_accel_target_registered_ = true; | 333 esc_accel_target_registered_ = true; |
334 } | 334 } |
335 | 335 |
336 void DropdownBarHost::UnregisterAccelerators() { | 336 void DropdownBarHost::UnregisterAccelerators() { |
337 DCHECK(esc_accel_target_registered_); | 337 DCHECK(esc_accel_target_registered_); |
338 views::Accelerator escape(ui::VKEY_ESCAPE, false, false, false); | 338 views::Accelerator escape(ui::VKEY_ESCAPE, false, false, false); |
339 focus_manager_->UnregisterAccelerator(escape, this); | 339 focus_manager_->UnregisterAccelerator(escape, this); |
340 esc_accel_target_registered_ = false; | 340 esc_accel_target_registered_ = false; |
341 } | 341 } |
OLD | NEW |