- add sources.
[platform/framework/web/crosswalk.git] / src / ash / ime_control_delegate.h
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 ASH_IME_CONTROL_DELEGATE_H_
6 #define ASH_IME_CONTROL_DELEGATE_H_
7
8 namespace ui {
9 class Accelerator;
10 }  // namespace ui
11
12 namespace ash {
13
14 // Delegate for controlling IME (input method editor).
15 class ImeControlDelegate {
16  public:
17   virtual ~ImeControlDelegate() {}
18
19   virtual bool HandleNextIme() = 0;
20   virtual bool HandlePreviousIme(const ui::Accelerator& accelerator) = 0;
21   // Switches to another IME depending on the |accelerator|.
22   virtual bool HandleSwitchIme(const ui::Accelerator& accelerator) = 0;
23
24   // Checks for special language anomalies and re-map the |accelerator|
25   // accordingly.
26   virtual ui::Accelerator RemapAccelerator(
27       const ui::Accelerator& accelerator) = 0;
28 };
29
30 }  // namespace ash
31
32 #endif  // ASH_IME_CONTROL_DELEGATE_H_