1 // Copyright 2014 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_INPUT_METHOD_ENGINE_H_
6 #define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_INPUT_METHOD_ENGINE_H_
11 #include "chrome/browser/chromeos/input_method/input_method_engine_interface.h"
12 #include "chromeos/ime/input_method_descriptor.h"
20 struct InputMethodMenuItem;
26 class CompositionText;
28 namespace input_method {
29 class CandidateWindow;
30 struct KeyEventHandle;
31 } // namespace input_method
33 class MockInputMethodEngine : public InputMethodEngineInterface {
35 MockInputMethodEngine();
36 virtual ~MockInputMethodEngine();
38 // InputMethodEngineInterface overrides.
39 virtual const std::string& GetActiveComponentId() const override;
40 virtual bool SetComposition(int context_id,
45 const std::vector<SegmentInfo>& segments,
46 std::string* error) override;
47 virtual bool ClearComposition(int context_id, std::string* error) override;
48 virtual bool CommitText(int context_id, const char* text,
49 std::string* error) override;
50 virtual bool SendKeyEvents(int context_id,
51 const std::vector<KeyboardEvent>& events) override;
52 virtual const CandidateWindowProperty&
53 GetCandidateWindowProperty() const override;
54 virtual void SetCandidateWindowProperty(
55 const CandidateWindowProperty& property) override;
56 virtual bool SetCandidateWindowVisible(bool visible,
57 std::string* error) override;
58 virtual bool SetCandidates(int context_id,
59 const std::vector<Candidate>& candidates,
60 std::string* error) override;
61 virtual bool SetCursorPosition(int context_id, int candidate_id,
62 std::string* error) override;
63 virtual bool SetMenuItems(const std::vector<MenuItem>& items) override;
64 virtual bool UpdateMenuItems(const std::vector<MenuItem>& items) override;
65 virtual bool IsActive() const override;
66 virtual bool DeleteSurroundingText(int context_id,
68 size_t number_of_chars,
69 std::string* error) override;
71 // IMEEngineHandlerInterface overrides.
73 const IMEEngineHandlerInterface::InputContext& input_context) override;
74 virtual void FocusOut() override;
75 virtual void Enable(const std::string& component_id) override;
76 virtual void Disable() override;
77 virtual void PropertyActivate(const std::string& property_name) override;
78 virtual void Reset() override;
79 virtual void ProcessKeyEvent(const ui::KeyEvent& key_event,
80 const KeyEventDoneCallback& callback) override;
81 virtual void CandidateClicked(uint32 index) override;
82 virtual void SetSurroundingText(const std::string& text, uint32 cursor_pos,
83 uint32 anchor_pos) override;
84 virtual void SetCompositionBounds(const gfx::Rect& bounds) override;
85 virtual void HideInputView() override;
87 std::string last_activated_property() const {
88 return last_activated_property_;
92 std::string active_component_id_;
94 // The current candidate window property.
95 CandidateWindowProperty candidate_window_property_;
97 std::string last_activated_property_;
100 } // namespace chromeos
102 #endif // CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_INPUT_METHOD_ENGINE_H_