Home | History | Annotate | Download | only in ibus
      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.
      4 
      5 #ifndef CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_
      6 #define CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_
      7 
      8 #include <string>
      9 #include "base/basictypes.h"
     10 #include "chromeos/dbus/ibus/ibus_input_context_client.h"
     11 
     12 namespace chromeos {
     13 class MockIBusInputContextClient : public IBusInputContextClient {
     14  public:
     15   typedef base::Callback<void (uint32 keyval,
     16                                uint32 keycode,
     17                                uint32 state,
     18                                const ProcessKeyEventCallback& callback,
     19                                const ErrorCallback& error_callback)>
     20       ProcessKeyEventHandler;
     21   typedef base::Callback<void (const std::string& text, uint32 cursor_pos,
     22                                uint32 anchor_pos)>
     23       SetSurroundingTextHandler;
     24   MockIBusInputContextClient();
     25   virtual ~MockIBusInputContextClient();
     26 
     27   virtual void Initialize(dbus::Bus* bus,
     28                           const dbus::ObjectPath& object_path) OVERRIDE;
     29   virtual void SetInputContextHandler(
     30       IBusInputContextHandlerInterface* handler) OVERRIDE;
     31   virtual void SetSetCursorLocationHandler(
     32       const SetCursorLocationHandler& set_cursor_location_handler) OVERRIDE;
     33   virtual void UnsetSetCursorLocationHandler() OVERRIDE;
     34   virtual void ResetObjectProxy() OVERRIDE;
     35   virtual bool IsObjectProxyReady() const OVERRIDE;
     36   virtual void SetCapabilities(uint32 capabilities) OVERRIDE;
     37   virtual void FocusIn() OVERRIDE;
     38   virtual void FocusOut() OVERRIDE;
     39   virtual void Reset() OVERRIDE;
     40   virtual void SetCursorLocation(const ibus::Rect& cursor_location,
     41                                  const ibus::Rect& composition_head) OVERRIDE;
     42   virtual void ProcessKeyEvent(uint32 keyval,
     43                                uint32 keycode,
     44                                uint32 state,
     45                                const ProcessKeyEventCallback& callback,
     46                                const ErrorCallback& error_callback) OVERRIDE;
     47   virtual void SetSurroundingText(const std::string& text,
     48                                   uint32 cursor_pos,
     49                                   uint32 anchor_pos) OVERRIDE;
     50   virtual void PropertyActivate(const std::string& key,
     51                                 ibus::IBusPropertyState state) OVERRIDE;
     52   virtual bool IsXKBLayout() OVERRIDE;
     53   virtual void SetIsXKBLayout(bool is_xkb_layout) OVERRIDE;
     54 
     55   // Call count of Initialize().
     56   int initialize_call_count() const { return initialize_call_count_; }
     57 
     58   // Call count of ResetObjectProxy().
     59   int reset_object_proxy_call_caount() const {
     60     return reset_object_proxy_call_caount_;
     61   }
     62 
     63   // Call count of SetCapabilities().
     64   int set_capabilities_call_count() const {
     65     return set_capabilities_call_count_;
     66   }
     67 
     68   // Call count of FocusIn().
     69   int focus_in_call_count() const { return focus_in_call_count_; }
     70 
     71   // Call count of FocusOut().
     72   int focus_out_call_count() const { return focus_out_call_count_; }
     73 
     74   // Call count of Reset().
     75   int reset_call_count() const { return reset_call_count_; }
     76 
     77   // Call count of SetCursorLocation().
     78   int set_cursor_location_call_count() const {
     79     return set_cursor_location_call_count_;
     80   }
     81 
     82   // Call count of ProcessKeyEvent().
     83   int process_key_event_call_count() const {
     84     return process_key_event_call_count_;
     85   }
     86 
     87   void set_process_key_event_handler(
     88       const ProcessKeyEventHandler& handler) {
     89     process_key_event_handler_ = handler;
     90   }
     91 
     92   // Call count of SetSurroundingText().
     93   int set_surrounding_text_call_count() const {
     94     return set_surrounding_text_call_count_;
     95   }
     96 
     97   void set_set_surrounding_text_handler(
     98       const SetSurroundingTextHandler& handler) {
     99     set_surrounding_text_handler_ = handler;
    100   }
    101 
    102  private:
    103   int initialize_call_count_;
    104   bool is_initialized_;
    105   bool is_xkb_layout_;
    106   int reset_object_proxy_call_caount_;
    107   int set_capabilities_call_count_;
    108   int focus_in_call_count_;
    109   int focus_out_call_count_;
    110   int reset_call_count_;
    111   int set_cursor_location_call_count_;
    112   int process_key_event_call_count_;
    113   int set_surrounding_text_call_count_;
    114   ProcessKeyEventHandler process_key_event_handler_;
    115   SetSurroundingTextHandler set_surrounding_text_handler_;
    116 
    117   DISALLOW_COPY_AND_ASSIGN(MockIBusInputContextClient);
    118 };
    119 }  // namespace chromeos
    120 
    121 #endif  // CHROMEOS_DBUS_IBUS_MOCK_IBUS_INPUT_CONTEXT_CLIENT_H_
    122