diff --git a/shell/platform/tizen/channels/text_input_channel.cc b/shell/platform/tizen/channels/text_input_channel.cc index e9eb6d83dbf6c..bf45155eab73f 100644 --- a/shell/platform/tizen/channels/text_input_channel.cc +++ b/shell/platform/tizen/channels/text_input_channel.cc @@ -49,13 +49,14 @@ bool IsASCIIPrintableKey(char c) { } // namespace -TextInputChannel::TextInputChannel(BinaryMessenger* messenger, - FlutterTizenEngine* engine) +TextInputChannel::TextInputChannel( + BinaryMessenger* messenger, + std::unique_ptr input_method_context) : channel_(std::make_unique>( messenger, kChannelName, &JsonMethodCodec::GetInstance())), - input_method_context_(std::make_unique(engine)) { + input_method_context_(std::move(input_method_context)) { channel_->SetMethodCallHandler( [this](const MethodCall& call, std::unique_ptr> result) { diff --git a/shell/platform/tizen/channels/text_input_channel.h b/shell/platform/tizen/channels/text_input_channel.h index 3fccb4395e294..b97177b2162ff 100644 --- a/shell/platform/tizen/channels/text_input_channel.h +++ b/shell/platform/tizen/channels/text_input_channel.h @@ -21,8 +21,6 @@ namespace flutter { -class FlutterTizenEngine; - enum class EditStatus { kNone, kPreeditStart, kPreeditEnd, kCommit }; struct TextEditingContext { @@ -36,8 +34,9 @@ struct TextEditingContext { class TextInputChannel { public: - explicit TextInputChannel(BinaryMessenger* messenger, - FlutterTizenEngine* engine); + explicit TextInputChannel( + BinaryMessenger* messenger, + std::unique_ptr input_method_context); virtual ~TextInputChannel(); bool IsSoftwareKeyboardShowing() { return is_software_keyboard_showing_; } diff --git a/shell/platform/tizen/flutter_tizen_engine.cc b/shell/platform/tizen/flutter_tizen_engine.cc index 91b112b044d98..50f4fdc290986 100644 --- a/shell/platform/tizen/flutter_tizen_engine.cc +++ b/shell/platform/tizen/flutter_tizen_engine.cc @@ -11,6 +11,7 @@ #include "flutter/shell/platform/tizen/logger.h" #include "flutter/shell/platform/tizen/system_utils.h" +#include "flutter/shell/platform/tizen/tizen_input_method_context.h" namespace flutter { @@ -257,7 +258,8 @@ bool FlutterTizenEngine::RunEngine(const char* entrypoint) { navigation_channel = std::make_unique( internal_plugin_registrar_->messenger()); text_input_channel = std::make_unique( - internal_plugin_registrar_->messenger(), this); + internal_plugin_registrar_->messenger(), + std::make_unique(this)); platform_view_channel = std::make_unique( internal_plugin_registrar_->messenger()); key_event_handler_ = std::make_unique(this);