@@ -50,8 +50,7 @@ FlutterTizenView::FlutterTizenView(std::unique_ptr<TizenViewBase> tizen_view)
50
50
: tizen_view_(std::move(tizen_view)) {
51
51
tizen_view_->SetView (this );
52
52
53
- if (tizen_view_->GetType () == TizenViewType::kWindow ) {
54
- auto * window = reinterpret_cast <TizenWindow*>(tizen_view_.get ());
53
+ if (auto * window = dynamic_cast <TizenWindow*>(tizen_view_.get ())) {
55
54
window->BindKeys (kBindableSystemKeys );
56
55
}
57
56
}
@@ -73,12 +72,9 @@ void FlutterTizenView::SetEngine(std::unique_ptr<FlutterTizenEngine> engine) {
73
72
// Set up window dependent channels.
74
73
BinaryMessenger* messenger = internal_plugin_registrar_->messenger ();
75
74
76
- if (tizen_view_->GetType () == TizenViewType::kWindow ) {
77
- auto * window = reinterpret_cast <TizenWindow*>(tizen_view_.get ());
78
- window_channel_ = std::make_unique<WindowChannel>(messenger, window);
79
- } else {
80
- window_channel_ = std::make_unique<WindowChannel>(messenger, nullptr );
81
- }
75
+ auto * window = dynamic_cast <TizenWindow*>(tizen_view_.get ());
76
+ window_channel_ = std::make_unique<WindowChannel>(messenger, window);
77
+
82
78
platform_channel_ =
83
79
std::make_unique<PlatformChannel>(messenger, tizen_view_.get ());
84
80
text_input_channel_ = std::make_unique<TextInputChannel>(
@@ -94,13 +90,13 @@ void FlutterTizenView::CreateRenderSurface(
94
90
95
91
if (engine_ && engine_->renderer ()) {
96
92
TizenGeometry geometry = tizen_view_->GetGeometry ();
97
- if (tizen_view_-> GetType () == TizenViewType:: kWindow ) {
98
- auto * window = reinterpret_cast <TizenWindow*>(tizen_view_.get ());
93
+ if (dynamic_cast <TizenWindow*>(tizen_view_. get ()) ) {
94
+ auto * window = dynamic_cast <TizenWindow*>(tizen_view_.get ());
99
95
engine_->renderer ()->CreateSurface (window->GetRenderTarget (),
100
96
window->GetRenderTargetDisplay (),
101
97
geometry.width , geometry.height );
102
98
} else {
103
- auto * tizen_view = reinterpret_cast <TizenView*>(tizen_view_.get ());
99
+ auto * tizen_view = dynamic_cast <TizenView*>(tizen_view_.get ());
104
100
engine_->renderer ()->CreateSurface (tizen_view->GetRenderTarget (), nullptr ,
105
101
geometry.width , geometry.height );
106
102
}
@@ -135,10 +131,10 @@ bool FlutterTizenView::OnMakeResourceCurrent() {
135
131
bool FlutterTizenView::OnPresent () {
136
132
bool result = engine_->renderer ()->OnPresent ();
137
133
#ifdef NUI_SUPPORT
138
- if (tizen_view_-> GetType () == flutter::TizenViewType:: kView &&
139
- engine_->renderer ()->type () == FlutterDesktopRendererType::kEGL ) {
140
- auto * view = reinterpret_cast <TizenViewNui*>(tizen_view_. get () );
141
- view-> RequestRendering ();
134
+ if (auto * view = dynamic_cast <TizenViewNui*>(tizen_view_. get ())) {
135
+ if ( engine_->renderer ()->type () == FlutterDesktopRendererType::kEGL ) {
136
+ view-> RequestRendering ( );
137
+ }
142
138
}
143
139
#endif
144
140
return result;
@@ -309,8 +305,7 @@ void FlutterTizenView::OnCommit(const std::string& str) {
309
305
}
310
306
311
307
void FlutterTizenView::SendInitialGeometry () {
312
- if (tizen_view_->GetType () == TizenViewType::kWindow ) {
313
- auto * window = reinterpret_cast <TizenWindow*>(tizen_view_.get ());
308
+ if (auto * window = dynamic_cast <TizenWindow*>(tizen_view_.get ())) {
314
309
OnRotate (window->GetRotation ());
315
310
} else {
316
311
TizenGeometry geometry = tizen_view_->GetGeometry ();
0 commit comments