#include "ui/base/ime/input_method_base.h"
#include <tuple>
#include "base/check.h"
#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/observer_list.h"
#include "base/strings/utf_string_conversions.h"
#include "build/build_config.h"
#include "ui/base/ime/ime_key_event_dispatcher.h"
#include "ui/base/ime/input_method_observer.h"
#include "ui/base/ime/text_input_client.h"
#include "ui/base/ime/text_input_flags.h"
#include "ui/base/ime/virtual_keyboard_controller_stub.h"
#include "ui/events/event.h"
namespace ui {
InputMethodBase::InputMethodBase(
ImeKeyEventDispatcher* ime_key_event_dispatcher)
: … { … }
InputMethodBase::InputMethodBase(
ImeKeyEventDispatcher* ime_key_event_dispatcher,
std::unique_ptr<VirtualKeyboardController> keyboard_controller)
: … { … }
InputMethodBase::~InputMethodBase() { … }
void InputMethodBase::SetImeKeyEventDispatcher(
ImeKeyEventDispatcher* ime_key_event_dispatcher) { … }
void InputMethodBase::OnFocus() { … }
void InputMethodBase::OnBlur() { … }
void InputMethodBase::SetFocusedTextInputClient(TextInputClient* client) { … }
void InputMethodBase::DetachTextInputClient(TextInputClient* client) { … }
TextInputClient* InputMethodBase::GetTextInputClient() const { … }
void InputMethodBase::SetVirtualKeyboardBounds(const gfx::Rect& new_bounds) { … }
void InputMethodBase::OnTextInputTypeChanged(TextInputClient* client) { … }
TextInputType InputMethodBase::GetTextInputType() const { … }
void InputMethodBase::SetVirtualKeyboardVisibilityIfEnabled(bool should_show) { … }
void InputMethodBase::AddObserver(InputMethodObserver* observer) { … }
void InputMethodBase::RemoveObserver(InputMethodObserver* observer) { … }
VirtualKeyboardController* InputMethodBase::GetVirtualKeyboardController() { … }
void InputMethodBase::SetVirtualKeyboardControllerForTesting(
std::unique_ptr<VirtualKeyboardController> controller) { … }
bool InputMethodBase::IsTextInputClientFocused(const TextInputClient* client) { … }
bool InputMethodBase::IsTextInputTypeNone() const { … }
void InputMethodBase::OnInputMethodChanged() const { … }
ui::EventDispatchDetails InputMethodBase::DispatchKeyEventPostIME(
ui::KeyEvent* event) const { … }
void InputMethodBase::NotifyTextInputStateChanged(
const TextInputClient* client) { … }
void InputMethodBase::NotifyTextInputCaretBoundsChanged(
const TextInputClient* client) { … }
void InputMethodBase::SetFocusedTextInputClientInternal(
TextInputClient* client) { … }
}