Commit 17e044d3 authored by James Cook's avatar James Cook Committed by Commit Bot

Collapse ash::TabletModeEventHandler with TabletModeEventHandlerClassic

There's no separate "classic" mode in ash anymore. Collapse the
superclass with its only subclass.

Just cleanup, no functional changes.

Bug: 873267
Test: ash_unittests
Change-Id: I8d4243ad50d66ac7982dbe12132a736903271f63
Reviewed-on: https://chromium-review.googlesource.com/1171807Reviewed-by: default avatarJun Mukai <mukai@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582498}
parent 80d06f06
......@@ -651,7 +651,6 @@ component("ash") {
"wm/tablet_mode/tablet_mode_browser_window_drag_delegate.h",
"wm/tablet_mode/tablet_mode_controller.h",
"wm/tablet_mode/tablet_mode_event_handler.h",
"wm/tablet_mode/tablet_mode_event_handler_classic.h",
"wm/tablet_mode/tablet_mode_observer.h",
"wm/tablet_mode/tablet_mode_window_drag_delegate.h",
"wm/tablet_mode/tablet_mode_window_manager.h",
......@@ -1256,7 +1255,6 @@ component("ash") {
"wm/tablet_mode/tablet_mode_browser_window_drag_delegate.cc",
"wm/tablet_mode/tablet_mode_controller.cc",
"wm/tablet_mode/tablet_mode_event_handler.cc",
"wm/tablet_mode/tablet_mode_event_handler_classic.cc",
"wm/tablet_mode/tablet_mode_window_drag_delegate.cc",
"wm/tablet_mode/tablet_mode_window_manager.cc",
"wm/tablet_mode/tablet_mode_window_state.cc",
......
......@@ -22,9 +22,18 @@ const int kLeaveFullScreenAreaHeightInPixel = 2;
} // namespace
TabletModeEventHandler::TabletModeEventHandler() = default;
TabletModeEventHandler::TabletModeEventHandler() {
Shell::Get()->AddPreTargetHandler(this);
}
TabletModeEventHandler::~TabletModeEventHandler() {
Shell::Get()->RemovePreTargetHandler(this);
}
TabletModeEventHandler::~TabletModeEventHandler() = default;
void TabletModeEventHandler::OnTouchEvent(ui::TouchEvent* event) {
if (ToggleFullscreen(*event))
event->StopPropagation();
}
bool TabletModeEventHandler::ToggleFullscreen(const ui::TouchEvent& event) {
if (event.type() != ui::ET_TOUCH_PRESSED)
......
......@@ -6,6 +6,7 @@
#define ASH_WM_TABLET_MODE_TABLET_MODE_EVENT_HANDLER_H_
#include "base/macros.h"
#include "ui/events/event_handler.h"
namespace ui {
class TouchEvent;
......@@ -17,17 +18,18 @@ namespace wm {
// TabletModeEventHandler handles toggling fullscreen when appropriate.
// TabletModeEventHandler installs event handlers in an environment specific
// way, e.g. EventHandler for aura.
class TabletModeEventHandler {
class TabletModeEventHandler : public ui::EventHandler {
public:
TabletModeEventHandler();
virtual ~TabletModeEventHandler();
~TabletModeEventHandler() override;
protected:
// Subclasses call this to toggle fullscreen. If a toggle happened returns
// true.
private:
// ui::EventHandler:
void OnTouchEvent(ui::TouchEvent* event) override;
// Returns true if a toggle happened.
bool ToggleFullscreen(const ui::TouchEvent& event);
private:
DISALLOW_COPY_AND_ASSIGN(TabletModeEventHandler);
};
......
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ash/wm/tablet_mode/tablet_mode_event_handler_classic.h"
#include "ash/shell.h"
#include "ui/events/event.h"
namespace ash {
namespace wm {
TabletModeEventHandlerClassic::TabletModeEventHandlerClassic() {
Shell::Get()->AddPreTargetHandler(this);
}
TabletModeEventHandlerClassic::~TabletModeEventHandlerClassic() {
Shell::Get()->RemovePreTargetHandler(this);
}
void TabletModeEventHandlerClassic::OnTouchEvent(ui::TouchEvent* event) {
if (ToggleFullscreen(*event))
event->StopPropagation();
}
} // namespace wm
} // namespace ash
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef ASH_WM_TABLET_MODE_TABLET_MODE_EVENT_HANDLER_CLASSIC_H_
#define ASH_WM_TABLET_MODE_TABLET_MODE_EVENT_HANDLER_CLASSIC_H_
#include "ash/ash_export.h"
#include "ash/wm/tablet_mode/tablet_mode_event_handler.h"
#include "ui/events/event_handler.h"
namespace ash {
namespace wm {
// Implementation of TabletModeEventHandler for aura. Uses ui::EventHandler.
// TODO(jamescook): Collapse with TabletModeEventHandler.
// https://crbug.com/866523
class ASH_EXPORT TabletModeEventHandlerClassic : public TabletModeEventHandler,
public ui::EventHandler {
public:
TabletModeEventHandlerClassic();
~TabletModeEventHandlerClassic() override;
private:
// ui::EventHandler override:
void OnTouchEvent(ui::TouchEvent* event) override;
DISALLOW_COPY_AND_ASSIGN(TabletModeEventHandlerClassic);
};
} // namespace wm
} // namespace ash
#endif // ASH_WM_TABLET_MODE_TABLET_MODE_EVENT_HANDLER_CLASSIC_H_
......@@ -14,7 +14,7 @@
#include "ash/wm/overview/window_selector_controller.h"
#include "ash/wm/tablet_mode/scoped_skip_user_session_blocked_check.h"
#include "ash/wm/tablet_mode/tablet_mode_backdrop_delegate_impl.h"
#include "ash/wm/tablet_mode/tablet_mode_event_handler_classic.h"
#include "ash/wm/tablet_mode/tablet_mode_event_handler.h"
#include "ash/wm/tablet_mode/tablet_mode_window_state.h"
#include "ash/wm/window_state.h"
#include "ash/wm/wm_event.h"
......@@ -248,7 +248,7 @@ TabletModeWindowManager::TabletModeWindowManager() {
display::Screen::GetScreen()->AddObserver(this);
Shell::Get()->AddShellObserver(this);
Shell::Get()->split_view_controller()->AddObserver(this);
event_handler_ = std::make_unique<wm::TabletModeEventHandlerClassic>();
event_handler_ = std::make_unique<wm::TabletModeEventHandler>();
}
void TabletModeWindowManager::MaximizeAllWindows() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment