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.
5 #ifndef CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_CANDIDATE_WINDOW_CONTROLLER_H_
6 #define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_CANDIDATE_WINDOW_CONTROLLER_H_
8 #include "base/basictypes.h"
9 #include "base/observer_list.h"
10 #include "chrome/browser/chromeos/input_method/candidate_window_controller.h"
13 namespace input_method
{
15 // The mock CandidateWindowController implementation for testing.
16 class MockCandidateWindowController
: public CandidateWindowController
{
18 MockCandidateWindowController();
19 virtual ~MockCandidateWindowController();
21 // CandidateWindowController overrides:
22 virtual bool Init() OVERRIDE
;
23 virtual void Shutdown() OVERRIDE
;
24 virtual void AddObserver(Observer
* observer
) OVERRIDE
;
25 virtual void RemoveObserver(Observer
* observer
) OVERRIDE
;
27 // Notifies observers.
28 void NotifyCandidateWindowOpened();
29 void NotifyCandidateWindowClosed();
32 int add_observer_count_
;
33 int remove_observer_count_
;
36 ObserverList
<CandidateWindowController::Observer
> observers_
;
38 DISALLOW_COPY_AND_ASSIGN(MockCandidateWindowController
);
41 } // namespace input_method
42 } // namespace chromeos
44 #endif // CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_CANDIDATE_WINDOW_CONTROLLER_H_