blob: 2da6e5150e4fece6cb45a42b3fe7006c5f73f804 [file] [log] [blame]
// Copyright (c) 2012 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 CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_
#define CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_
#include <string>
#include "base/basictypes.h"
#include "chromeos/dbus/ibus/ibus_input_context_client.h"
namespace chromeos {
class MockIBusInputContextClient : public IBusInputContextClient {
public:
typedef base::Callback<void (uint32 keyval,
uint32 keycode,
uint32 state,
const ProcessKeyEventCallback& callback,
const ErrorCallback& error_callback)>
ProcessKeyEventHandler;
typedef base::Callback<void (const std::string& text, uint32 cursor_pos,
uint32 anchor_pos)>
SetSurroundingTextHandler;
MockIBusInputContextClient();
virtual ~MockIBusInputContextClient();
virtual void Initialize(dbus::Bus* bus,
const dbus::ObjectPath& object_path) OVERRIDE;
virtual void SetInputContextHandler(
IBusInputContextHandlerInterface* handler) OVERRIDE;
virtual void SetSetCursorLocationHandler(
const SetCursorLocationHandler& set_cursor_location_handler) OVERRIDE;
virtual void UnsetSetCursorLocationHandler() OVERRIDE;
virtual void ResetObjectProxy() OVERRIDE;
virtual bool IsObjectProxyReady() const OVERRIDE;
virtual void SetCapabilities(uint32 capabilities) OVERRIDE;
virtual void FocusIn() OVERRIDE;
virtual void FocusOut() OVERRIDE;
virtual void Reset() OVERRIDE;
virtual void SetCursorLocation(const ibus::Rect& cursor_location,
const ibus::Rect& composition_head) OVERRIDE;
virtual void ProcessKeyEvent(uint32 keyval,
uint32 keycode,
uint32 state,
const ProcessKeyEventCallback& callback,
const ErrorCallback& error_callback) OVERRIDE;
virtual void SetSurroundingText(const std::string& text,
uint32 cursor_pos,
uint32 anchor_pos) OVERRIDE;
virtual void PropertyActivate(const std::string& key,
ibus::IBusPropertyState state) OVERRIDE;
virtual bool IsXKBLayout() OVERRIDE;
virtual void SetIsXKBLayout(bool is_xkb_layout) OVERRIDE;
// Call count of Initialize().
int initialize_call_count() const { return initialize_call_count_; }
// Call count of ResetObjectProxy().
int reset_object_proxy_call_caount() const {
return reset_object_proxy_call_caount_;
}
// Call count of SetCapabilities().
int set_capabilities_call_count() const {
return set_capabilities_call_count_;
}
// Call count of FocusIn().
int focus_in_call_count() const { return focus_in_call_count_; }
// Call count of FocusOut().
int focus_out_call_count() const { return focus_out_call_count_; }
// Call count of Reset().
int reset_call_count() const { return reset_call_count_; }
// Call count of SetCursorLocation().
int set_cursor_location_call_count() const {
return set_cursor_location_call_count_;
}
// Call count of ProcessKeyEvent().
int process_key_event_call_count() const {
return process_key_event_call_count_;
}
void set_process_key_event_handler(
const ProcessKeyEventHandler& handler) {
process_key_event_handler_ = handler;
}
// Call count of SetSurroundingText().
int set_surrounding_text_call_count() const {
return set_surrounding_text_call_count_;
}
void set_set_surrounding_text_handler(
const SetSurroundingTextHandler& handler) {
set_surrounding_text_handler_ = handler;
}
private:
int initialize_call_count_;
bool is_initialized_;
bool is_xkb_layout_;
int reset_object_proxy_call_caount_;
int set_capabilities_call_count_;
int focus_in_call_count_;
int focus_out_call_count_;
int reset_call_count_;
int set_cursor_location_call_count_;
int process_key_event_call_count_;
int set_surrounding_text_call_count_;
ProcessKeyEventHandler process_key_event_handler_;
SetSurroundingTextHandler set_surrounding_text_handler_;
DISALLOW_COPY_AND_ASSIGN(MockIBusInputContextClient);
};
} // namespace chromeos
#endif // CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_