1// Copyright (c) 2011 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 UI_BASE_IME_INPUT_METHOD_FACTORY_H_
6#define UI_BASE_IME_INPUT_METHOD_FACTORY_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "base/memory/scoped_ptr.h"
11#include "ui/base/ime/input_method_initializer.h"
12#include "ui/base/ui_base_export.h"
13#include "ui/gfx/native_widget_types.h"
14
15namespace ui {
16namespace internal {
17class InputMethodDelegate;
18}  // namespace internal
19
20class InputMethod;
21
22// Creates a new instance of InputMethod and returns it.
23UI_BASE_EXPORT scoped_ptr<InputMethod> CreateInputMethod(
24    internal::InputMethodDelegate* delegate,
25    gfx::AcceleratedWidget widget);
26
27// Makes CreateInputMethod return a MockInputMethod.
28UI_BASE_EXPORT void SetUpInputMethodFactoryForTesting();
29
30}  // namespace ui;
31
32#endif  // UI_BASE_IME_INPUT_METHOD_FACTORY_H_
33