OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/chromeos/input_method/candidate_window_controller_impl.
h" | 5 #include "chrome/browser/chromeos/input_method/candidate_window_controller_impl.
h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "ash/shell.h" | 10 #include "ash/shell.h" |
11 #include "ash/shell_window_ids.h" | 11 #include "ash/shell_window_ids.h" |
12 #include "ash/wm/window_animations.h" | 12 #include "ash/wm/window_animations.h" |
13 #include "base/logging.h" | 13 #include "base/logging.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "base/observer_list.h" | 15 #include "base/observer_list.h" |
16 #include "chrome/browser/chromeos/input_method/candidate_window_view.h" | 16 #include "chrome/browser/chromeos/input_method/candidate_window_view.h" |
17 #include "chrome/browser/chromeos/input_method/delayable_widget.h" | 17 #include "chrome/browser/chromeos/input_method/delayable_widget.h" |
18 #include "chrome/browser/chromeos/input_method/infolist_window_view.h" | 18 #include "chrome/browser/chromeos/input_method/infolist_window_view.h" |
19 #include "chrome/browser/chromeos/input_method/mode_indicator_controller.h" | 19 #include "chrome/browser/chromeos/input_method/mode_indicator_controller.h" |
20 #include "chrome/browser/chromeos/input_method/mode_indicator_widget.h" | |
21 #include "ui/views/widget/widget.h" | 20 #include "ui/views/widget/widget.h" |
22 | 21 |
23 | 22 |
24 namespace chromeos { | 23 namespace chromeos { |
25 namespace input_method { | 24 namespace input_method { |
26 | 25 |
27 namespace { | 26 namespace { |
28 // The milliseconds of the delay to show the infolist window. | 27 // The milliseconds of the delay to show the infolist window. |
29 const int kInfolistShowDelayMilliSeconds = 500; | 28 const int kInfolistShowDelayMilliSeconds = 500; |
30 // The milliseconds of the delay to hide the infolist window. | 29 // The milliseconds of the delay to hide the infolist window. |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 views::corewm::SetWindowVisibilityAnimationType( | 75 views::corewm::SetWindowVisibilityAnimationType( |
77 infolist_window_->GetNativeView(), | 76 infolist_window_->GetNativeView(), |
78 views::corewm::WINDOW_VISIBILITY_ANIMATION_TYPE_FADE); | 77 views::corewm::WINDOW_VISIBILITY_ANIMATION_TYPE_FADE); |
79 | 78 |
80 InfolistWindowView* infolist_view = new InfolistWindowView; | 79 InfolistWindowView* infolist_view = new InfolistWindowView; |
81 infolist_view->Init(); | 80 infolist_view->Init(); |
82 infolist_window_->SetContentsView(infolist_view); | 81 infolist_window_->SetContentsView(infolist_view); |
83 | 82 |
84 // Create the mode indicator controller. | 83 // Create the mode indicator controller. |
85 mode_indicator_controller_.reset( | 84 mode_indicator_controller_.reset( |
86 new ModeIndicatorController(new ModeIndicatorWidget)); | 85 new ModeIndicatorController(InputMethodManager::Get())); |
87 } | 86 } |
88 | 87 |
89 void CandidateWindowControllerImpl::Hide() { | 88 void CandidateWindowControllerImpl::Hide() { |
90 // To hide the candidate window we have to call HideLookupTable and | 89 // To hide the candidate window we have to call HideLookupTable and |
91 // HideAuxiliaryText. Without calling HideAuxiliaryText the | 90 // HideAuxiliaryText. Without calling HideAuxiliaryText the |
92 // auxiliary text area will remain. | 91 // auxiliary text area will remain. |
93 candidate_window_view_->HideLookupTable(); | 92 candidate_window_view_->HideLookupTable(); |
94 candidate_window_view_->HideAuxiliaryText(); | 93 candidate_window_view_->HideAuxiliaryText(); |
95 infolist_window_->Hide(); | 94 infolist_window_->Hide(); |
96 } | 95 } |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 | 309 |
311 if (candidate_window_view_rect.y() + infolist_window_size.height() > | 310 if (candidate_window_view_rect.y() + infolist_window_size.height() > |
312 screen_rect.bottom()) | 311 screen_rect.bottom()) |
313 result.set_y(screen_rect.bottom() - infolist_window_size.height()); | 312 result.set_y(screen_rect.bottom() - infolist_window_size.height()); |
314 | 313 |
315 return result; | 314 return result; |
316 } | 315 } |
317 | 316 |
318 } // namespace input_method | 317 } // namespace input_method |
319 } // namespace chromeos | 318 } // namespace chromeos |
OLD | NEW |