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

Unified Diff: ash/autoclick/autoclick_controller.cc

Issue 2316553003: mash: Add autoclick app. (Closed)
Patch Set: Created 4 years, 3 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
Index: ash/autoclick/autoclick_controller.cc
diff --git a/ash/autoclick/autoclick_controller.cc b/ash/autoclick/autoclick_controller.cc
index 326a375b433f60c7afd05a1beba5eb841624d097..b5dc77435fcc0c3cdc1ffd84c27c2da5e35fedff 100644
--- a/ash/autoclick/autoclick_controller.cc
+++ b/ash/autoclick/autoclick_controller.cc
@@ -53,7 +53,7 @@ class AutoclickControllerImpl : public AutoclickController,
void OnScrollEvent(ui::ScrollEvent* event) override;
// AutoclickControllerCommonDelegate overrides:
- std::unique_ptr<views::Widget> CreateAutoclickRingWidget(
+ views::Widget* CreateAutoclickRingWidget(
const gfx::Point& event_location) override;
void UpdateAutoclickRingWidget(views::Widget* widget,
const gfx::Point& event_location) override;
@@ -68,6 +68,7 @@ class AutoclickControllerImpl : public AutoclickController,
// The target window is observed by AutoclickControllerImpl for the duration
// of a autoclick gesture.
aura::Window* tap_down_target_;
+ std::unique_ptr<views::Widget> widget_;
std::unique_ptr<AutoclickControllerCommon> autoclick_controller_common_;
DISALLOW_COPY_AND_ASSIGN(AutoclickControllerImpl);
@@ -76,6 +77,7 @@ class AutoclickControllerImpl : public AutoclickController,
AutoclickControllerImpl::AutoclickControllerImpl()
: enabled_(false),
tap_down_target_(nullptr),
+ widget_(nullptr),
sky 2016/09/09 21:42:29 Remove as this is unnecessary.
riajiang 2016/09/12 16:15:46 Done.
autoclick_controller_common_(
new AutoclickControllerCommon(GetDefaultAutoclickDelay(), this)) {}
@@ -116,7 +118,7 @@ void AutoclickControllerImpl::SetAutoclickDelay(base::TimeDelta delay) {
}
void AutoclickControllerImpl::OnMouseEvent(ui::MouseEvent* event) {
- autoclick_controller_common_->HandleMouseEvent(*event);
+ autoclick_controller_common_->HandleMouseEvent(ui::PointerEvent(*event));
}
void AutoclickControllerImpl::OnKeyEvent(ui::KeyEvent* event) {
@@ -135,14 +137,13 @@ void AutoclickControllerImpl::OnScrollEvent(ui::ScrollEvent* event) {
autoclick_controller_common_->CancelAutoclick();
}
-std::unique_ptr<views::Widget>
-AutoclickControllerImpl::CreateAutoclickRingWidget(
+views::Widget* AutoclickControllerImpl::CreateAutoclickRingWidget(
const gfx::Point& event_location) {
aura::Window* target =
WmWindowAura::GetAuraWindow(ash::wm::GetRootWindowAt(event_location));
SetTapDownTarget(target);
aura::Window* root_window = target->GetRootWindow();
- std::unique_ptr<views::Widget> widget(new views::Widget);
+ widget_.reset(new views::Widget);
views::Widget::InitParams params;
params.type = views::Widget::InitParams::TYPE_WINDOW_FRAMELESS;
params.accept_events = false;
@@ -152,9 +153,9 @@ AutoclickControllerImpl::CreateAutoclickRingWidget(
params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW;
params.parent =
Shell::GetContainer(root_window, kShellWindowId_OverlayContainer);
- widget->Init(params);
- widget->SetOpacity(1.f);
- return widget;
+ widget_->Init(params);
+ widget_->SetOpacity(1.f);
+ return widget_.get();
}
void AutoclickControllerImpl::UpdateAutoclickRingWidget(

Powered by Google App Engine
This is Rietveld 408576698