diff options
Diffstat (limited to 'chrome/browser/chromeos/input_method/mock_input_method_engine.h')
-rw-r--r-- | chrome/browser/chromeos/input_method/mock_input_method_engine.h | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/chrome/browser/chromeos/input_method/mock_input_method_engine.h b/chrome/browser/chromeos/input_method/mock_input_method_engine.h new file mode 100644 index 0000000..3558f9f --- /dev/null +++ b/chrome/browser/chromeos/input_method/mock_input_method_engine.h @@ -0,0 +1,96 @@ +// Copyright 2014 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 CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_INPUT_METHOD_ENGINE_H_ +#define CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_INPUT_METHOD_ENGINE_H_ + +#include <string> +#include <vector> +#include "chrome/browser/chromeos/input_method/input_method_engine_interface.h" +#include "chromeos/ime/input_method_descriptor.h" +#include "url/gurl.h" + +namespace ui { +class KeyEvent; +} // namespace ui + +namespace chromeos { + +class IBusText; + +namespace input_method { +class CandidateWindow; +struct InputMethodProperty; +struct KeyEventHandle; +} // namespace input_method + +class MockInputMethodEngine : public InputMethodEngineInterface { + public: + explicit MockInputMethodEngine( + const input_method::InputMethodDescriptor& descriptor); + virtual ~MockInputMethodEngine(); + + // InputMethodEngineInterface overrides. + virtual const input_method::InputMethodDescriptor& GetDescriptor() + const OVERRIDE; + virtual void StartIme() OVERRIDE; + virtual bool SetComposition(int context_id, + const char* text, + int selection_start, + int selection_end, + int cursor, + const std::vector<SegmentInfo>& segments, + std::string* error) OVERRIDE; + virtual bool ClearComposition(int context_id, std::string* error) OVERRIDE; + virtual bool CommitText(int context_id, const char* text, + std::string* error) OVERRIDE; + virtual bool SendKeyEvents(int context_id, + const std::vector<KeyboardEvent>& events) OVERRIDE; + virtual const CandidateWindowProperty& + GetCandidateWindowProperty() const OVERRIDE; + virtual void SetCandidateWindowProperty( + const CandidateWindowProperty& property) OVERRIDE; + virtual bool SetCandidateWindowVisible(bool visible, + std::string* error) OVERRIDE; + virtual bool SetCandidates(int context_id, + const std::vector<Candidate>& candidates, + std::string* error) OVERRIDE; + virtual bool SetCursorPosition(int context_id, int candidate_id, + std::string* error) OVERRIDE; + virtual bool SetMenuItems(const std::vector<MenuItem>& items) OVERRIDE; + virtual bool UpdateMenuItems(const std::vector<MenuItem>& items) OVERRIDE; + virtual bool IsActive() const OVERRIDE; + virtual void KeyEventDone(input_method::KeyEventHandle* key_data, + bool handled) OVERRIDE; + virtual bool DeleteSurroundingText(int context_id, + int offset, + size_t number_of_chars, + std::string* error) OVERRIDE; + + // IBusEngineHandlerInterface overrides. + virtual void FocusIn( + const IBusEngineHandlerInterface::InputContext& input_context) OVERRIDE; + virtual void FocusOut() OVERRIDE; + virtual void Enable() OVERRIDE; + virtual void Disable() OVERRIDE; + virtual void PropertyActivate(const std::string& property_name) OVERRIDE; + virtual void Reset() OVERRIDE; + virtual void ProcessKeyEvent(const ui::KeyEvent& key_event, + const KeyEventDoneCallback& callback) OVERRIDE; + virtual void CandidateClicked(uint32 index) OVERRIDE; + virtual void SetSurroundingText(const std::string& text, uint32 cursor_pos, + uint32 anchor_pos) OVERRIDE; + virtual void HideInputView() OVERRIDE; + + private: + // Descriptor of this input method. + input_method::InputMethodDescriptor descriptor_; + + // The current candidate window property. + CandidateWindowProperty candidate_window_property_; +}; + +} // namespace chromeos + +#endif // CHROME_BROWSER_CHROMEOS_INPUT_METHOD_MOCK_INPUT_METHOD_ENGINE_H_ |