// Copyright 2020 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_SHELL_TAB_HANDLER_H_ #define ASH_SHELL_TAB_HANDLER_H_ #include "ui/events/event_handler.h" namespace ash { class Shell; // Enables handling of tab when there are no non-minimized windows open in the // shell. This allows keyboard only users to easily get focus to the shelf when // no windows are open. class ShellTabHandler : public ui::EventHandler { public: explicit ShellTabHandler(Shell* shell) : shell_(shell) {} ShellTabHandler(const ShellTabHandler&) = delete; ShellTabHandler& operator=(const ShellTabHandler) = delete; ~ShellTabHandler() override = default; // ui::EventHandler: void OnKeyEvent(ui::KeyEvent* key_event) override; private: Shell* const shell_; }; } // namespace ash #endif // ASH_SHELL_TAB_HANDLER_H_