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

Side by Side Diff: ui/views/bubble/tray_bubble_view.cc

Issue 2961313003: Touch gestures for System Tray/ IME/ Stylus/ Notifications (Closed)
Patch Set: Fixed msw's comments. 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 unified diff | Download patch
OLDNEW
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 "ui/views/bubble/tray_bubble_view.h" 5 #include "ui/views/bubble/tray_bubble_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "cc/paint/paint_flags.h" 10 #include "cc/paint/paint_flags.h"
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 TrayBubbleView* bubble_view_; 162 TrayBubbleView* bubble_view_;
163 163
164 DISALLOW_COPY_AND_ASSIGN(BottomAlignedBoxLayout); 164 DISALLOW_COPY_AND_ASSIGN(BottomAlignedBoxLayout);
165 }; 165 };
166 166
167 } // namespace internal 167 } // namespace internal
168 168
169 using internal::TrayBubbleContentMask; 169 using internal::TrayBubbleContentMask;
170 using internal::BottomAlignedBoxLayout; 170 using internal::BottomAlignedBoxLayout;
171 171
172 base::string16 TrayBubbleView::Delegate::GetAccessibleNameForBubble() {
173 return base::string16();
174 }
175
176 bool TrayBubbleView::Delegate::ShouldEnableExtraKeyboardAccessibility() {
177 return false;
178 }
179
180 bool TrayBubbleView::Delegate::ProcessGestureEventForBubble(
181 ui::GestureEvent* event) {
182 return false;
183 }
184
172 TrayBubbleView::InitParams::InitParams() = default; 185 TrayBubbleView::InitParams::InitParams() = default;
173 186
174 TrayBubbleView::InitParams::InitParams(const InitParams& other) = default; 187 TrayBubbleView::InitParams::InitParams(const InitParams& other) = default;
175 188
176 TrayBubbleView::TrayBubbleView(const InitParams& init_params) 189 TrayBubbleView::TrayBubbleView(const InitParams& init_params)
177 : BubbleDialogDelegateView(init_params.anchor_view, 190 : BubbleDialogDelegateView(init_params.anchor_view,
178 GetArrowAlignment(init_params.anchor_alignment)), 191 GetArrowAlignment(init_params.anchor_alignment)),
179 params_(init_params), 192 params_(init_params),
180 layout_(new BottomAlignedBoxLayout(this)), 193 layout_(new BottomAlignedBoxLayout(this)),
181 delegate_(init_params.delegate), 194 delegate_(init_params.delegate),
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 delegate_->OnMouseExitedView(); 399 delegate_->OnMouseExitedView();
387 } 400 }
388 401
389 void TrayBubbleView::GetAccessibleNodeData(ui::AXNodeData* node_data) { 402 void TrayBubbleView::GetAccessibleNodeData(ui::AXNodeData* node_data) {
390 if (delegate_ && CanActivate()) { 403 if (delegate_ && CanActivate()) {
391 node_data->role = ui::AX_ROLE_WINDOW; 404 node_data->role = ui::AX_ROLE_WINDOW;
392 node_data->SetName(delegate_->GetAccessibleNameForBubble()); 405 node_data->SetName(delegate_->GetAccessibleNameForBubble());
393 } 406 }
394 } 407 }
395 408
409 void TrayBubbleView::OnGestureEvent(ui::GestureEvent* event) {
410 if (!delegate_ || !delegate_->ProcessGestureEventForBubble(event))
411 BubbleDialogDelegateView::OnGestureEvent(event);
412 }
413
396 void TrayBubbleView::MouseMovedOutOfHost() { 414 void TrayBubbleView::MouseMovedOutOfHost() {
397 // The mouse was accidentally over the bubble when it opened and the AutoClose 415 // The mouse was accidentally over the bubble when it opened and the AutoClose
398 // logic was not activated. Now that the user did move the mouse we tell the 416 // logic was not activated. Now that the user did move the mouse we tell the
399 // delegate to disable AutoClose. 417 // delegate to disable AutoClose.
400 delegate_->OnMouseEnteredView(); 418 delegate_->OnMouseEnteredView();
401 mouse_actively_entered_ = true; 419 mouse_actively_entered_ = true;
402 mouse_watcher_->Stop(); 420 mouse_watcher_->Stop();
403 } 421 }
404 422
405 bool TrayBubbleView::AcceleratorPressed(const ui::Accelerator& accelerator) { 423 bool TrayBubbleView::AcceleratorPressed(const ui::Accelerator& accelerator) {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
466 return; 484 return;
467 485
468 // No need to explicitly activate the widget. View::RequestFocus will activate 486 // No need to explicitly activate the widget. View::RequestFocus will activate
469 // it if necessary. 487 // it if necessary.
470 set_can_activate(true); 488 set_can_activate(true);
471 489
472 view->RequestFocus(); 490 view->RequestFocus();
473 } 491 }
474 492
475 } // namespace views 493 } // namespace views
OLDNEW
« ui/views/bubble/tray_bubble_view.h ('K') | « ui/views/bubble/tray_bubble_view.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698