Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1523)

Unified Diff: ash/system/ime_menu/ime_menu_tray.cc

Issue 2961313003: Touch gestures for System Tray/ IME/ Stylus/ Notifications (Closed)
Patch Set: Fixed nits. Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/system/ime_menu/ime_menu_tray.h ('k') | ash/system/ime_menu/ime_menu_tray_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/system/ime_menu/ime_menu_tray.cc
diff --git a/ash/system/ime_menu/ime_menu_tray.cc b/ash/system/ime_menu/ime_menu_tray.cc
index 084e9fcb3e8ccd491981fd55a5bc42fd2572b4c6..4b2b6b15617e70c78cca284b28de714e5eb0de3a 100644
--- a/ash/system/ime_menu/ime_menu_tray.cc
+++ b/ash/system/ime_menu/ime_menu_tray.cc
@@ -195,7 +195,7 @@ class ImeButtonsView : public views::View, public views::ButtonListener {
// views::ButtonListener:
void ButtonPressed(views::Button* sender, const ui::Event& event) override {
if (sender == settings_button_) {
- ime_menu_tray_->HideImeMenuBubble();
+ ime_menu_tray_->CloseBubble();
ShowIMESettings();
return;
}
@@ -312,6 +312,9 @@ ImeMenuTray::ImeMenuTray(Shelf* shelf)
SystemTrayNotifier* tray_notifier = Shell::Get()->system_tray_notifier();
tray_notifier->AddIMEObserver(this);
tray_notifier->AddVirtualKeyboardObserver(this);
+
+ if (!drag_controller())
+ set_drag_controller(base::MakeUnique<TrayDragController>(shelf));
}
ImeMenuTray::~ImeMenuTray() {
@@ -326,19 +329,6 @@ ImeMenuTray::~ImeMenuTray() {
keyboard_controller->RemoveObserver(this);
}
-void ImeMenuTray::ShowImeMenuBubble() {
- keyboard::KeyboardController* keyboard_controller =
- keyboard::KeyboardController::GetInstance();
- if (keyboard_controller && keyboard_controller->keyboard_visible()) {
- show_bubble_after_keyboard_hidden_ = true;
- keyboard_controller->AddObserver(this);
- keyboard_controller->HideKeyboard(
- keyboard::KeyboardController::HIDE_REASON_AUTOMATIC);
- } else {
- ShowImeMenuBubbleInternal();
- }
-}
-
void ImeMenuTray::ShowImeMenuBubbleInternal() {
views::TrayBubbleView::InitParams init_params;
init_params.delegate = this;
@@ -371,19 +361,8 @@ void ImeMenuTray::ShowImeMenuBubbleInternal() {
SetIsActive(true);
}
-void ImeMenuTray::HideImeMenuBubble() {
- bubble_.reset();
- ime_list_view_ = nullptr;
- SetIsActive(false);
- shelf()->UpdateAutoHideState();
-}
-
-bool ImeMenuTray::IsImeMenuBubbleShown() {
- return !!bubble_;
-}
-
void ImeMenuTray::ShowKeyboardWithKeyset(const std::string& keyset) {
- HideImeMenuBubble();
+ CloseBubble();
// Overrides the keyboard url ref to make it shown with the given keyset.
if (InputMethodManager::Get())
@@ -461,21 +440,45 @@ base::string16 ImeMenuTray::GetAccessibleNameForTray() {
void ImeMenuTray::HideBubbleWithView(const views::TrayBubbleView* bubble_view) {
if (bubble_->bubble_view() == bubble_view)
- HideImeMenuBubble();
+ CloseBubble();
}
void ImeMenuTray::ClickedOutsideBubble() {
- HideImeMenuBubble();
+ CloseBubble();
}
bool ImeMenuTray::PerformAction(const ui::Event& event) {
if (bubble_)
- HideImeMenuBubble();
+ CloseBubble();
else
- ShowImeMenuBubble();
+ ShowBubble();
return true;
}
+void ImeMenuTray::CloseBubble() {
+ bubble_.reset();
+ ime_list_view_ = nullptr;
+ SetIsActive(false);
+ shelf()->UpdateAutoHideState();
+}
+
+void ImeMenuTray::ShowBubble() {
+ keyboard::KeyboardController* keyboard_controller =
+ keyboard::KeyboardController::GetInstance();
+ if (keyboard_controller && keyboard_controller->keyboard_visible()) {
+ show_bubble_after_keyboard_hidden_ = true;
+ keyboard_controller->AddObserver(this);
+ keyboard_controller->HideKeyboard(
+ keyboard::KeyboardController::HIDE_REASON_AUTOMATIC);
+ } else {
+ ShowImeMenuBubbleInternal();
+ }
+}
+
+views::TrayBubbleView* ImeMenuTray::GetBubbleView() {
+ return bubble_ ? bubble_->bubble_view() : nullptr;
+}
+
void ImeMenuTray::OnIMERefresh() {
UpdateTrayLabel();
if (bubble_ && ime_list_view_) {
@@ -491,7 +494,7 @@ void ImeMenuTray::OnIMEMenuActivationChanged(bool is_activated) {
if (is_activated)
UpdateTrayLabel();
else
- HideImeMenuBubble();
+ CloseBubble();
}
void ImeMenuTray::BubbleViewDestroyed() {
@@ -578,7 +581,7 @@ void ImeMenuTray::OnKeyboardHidden() {
void ImeMenuTray::OnKeyboardSuppressionChanged(bool suppressed) {
if (suppressed != keyboard_suppressed_ && bubble_)
- HideImeMenuBubble();
+ CloseBubble();
keyboard_suppressed_ = suppressed;
}
« no previous file with comments | « ash/system/ime_menu/ime_menu_tray.h ('k') | ash/system/ime_menu/ime_menu_tray_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698