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 3 // found in the LICENSE file. 4 5 #ifndef ASH_ACCELERATORS_ASH_FOCUS_MANAGER_FACTORY_H_ 6 #define ASH_ACCELERATORS_ASH_FOCUS_MANAGER_FACTORY_H_ 7 8 #include "base/macros.h" 9 #include "ui/views/focus/focus_manager_factory.h" 10 11 namespace ash { 12 13 // A factory class for creating a custom views::FocusManager object which 14 // supports Ash shortcuts. 15 class AshFocusManagerFactory : public views::FocusManagerFactory { 16 public: 17 AshFocusManagerFactory(); 18 ~AshFocusManagerFactory() override; 19 20 protected: 21 // views::FocusManagerFactory overrides: 22 std::unique_ptr<views::FocusManager> CreateFocusManager( 23 views::Widget* widget) override; 24 25 private: 26 DISALLOW_COPY_AND_ASSIGN(AshFocusManagerFactory); 27 }; 28 29 } // namespace ash 30 31 #endif // ASH_ACCELERATORS_ASH_FOCUS_MANAGER_FACTORY_H_ 32