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 UI_BASE_IME_WIN_MOCK_TSF_BRIDGE_H_
6 #define UI_BASE_IME_WIN_MOCK_TSF_BRIDGE_H_
10 #include "base/compiler_specific.h"
11 #include "base/win/scoped_comptr.h"
12 #include "ui/base/ime/text_input_type.h"
13 #include "ui/base/ime/win/tsf_bridge.h"
17 class MockTSFBridge : public TSFBridge {
20 virtual ~MockTSFBridge();
23 virtual bool CancelComposition() OVERRIDE;
24 virtual bool ConfirmComposition() OVERRIDE;
25 virtual void OnTextInputTypeChanged(const TextInputClient* client) OVERRIDE;
26 virtual void OnTextLayoutChanged() OVERRIDE;
27 virtual void SetFocusedClient(HWND focused_window,
28 TextInputClient* client) OVERRIDE;
29 virtual void RemoveFocusedClient(TextInputClient* client) OVERRIDE;
30 virtual base::win::ScopedComPtr<ITfThreadMgr> GetThreadManager() OVERRIDE;
31 virtual TextInputClient* GetFocusedTextInputClient() const OVERRIDE;
33 // Resets MockTSFBridge state including function call counter.
36 // Call count of EnableIME().
37 int enable_ime_call_count() const { return enable_ime_call_count_; }
39 // Call count of DisableIME().
40 int disalbe_ime_call_count() const { return disalbe_ime_call_count_; }
42 // Call count of CancelComposition().
43 int cancel_composition_call_count() const {
44 return cancel_composition_call_count_;
47 // Call count of ConfirmComposition().
48 int confirm_composition_call_count() const {
49 return confirm_composition_call_count_;
52 // Call count of OnTextLayoutChanged().
53 int on_text_layout_changed() const {
54 return on_text_layout_changed_;
57 // Call count of AssociateFocus().
58 int associate_focus_call_count() const { return associate_focus_call_count_; }
60 // Call count of SetFocusClient().
61 int set_focused_client_call_count() const {
62 return set_focused_client_call_count_;
65 // Call count of RemoveFocusedClient().
66 int remove_focused_client_call_count() const {
67 return remove_focused_client_call_count_;
70 // Returns current TextInputClient.
71 TextInputClient* text_input_clinet() const { return text_input_client_; }
73 // Returns currently focused window handle.
74 HWND focused_window() const { return focused_window_; }
76 // Returns latest text input type.
77 TextInputType latest_text_iput_type() const {
78 return latest_text_input_type_;
82 int enable_ime_call_count_;
83 int disalbe_ime_call_count_;
84 int cancel_composition_call_count_;
85 int confirm_composition_call_count_;
86 int on_text_layout_changed_;
87 int associate_focus_call_count_;
88 int set_focused_client_call_count_;
89 int remove_focused_client_call_count_;
90 TextInputClient* text_input_client_;
92 TextInputType latest_text_input_type_;
93 base::win::ScopedComPtr<ITfThreadMgr> thread_manager_;
95 DISALLOW_COPY_AND_ASSIGN(MockTSFBridge);
100 #endif // UI_BASE_IME_WIN_MOCK_TSF_BRIDGE_H_