From f2d95b4068c655f9b1648f72b62c5ba0b04468cc Mon Sep 17 00:00:00 2001 From: Boram Bae Date: Thu, 18 Aug 2022 16:17:37 +0900 Subject: [PATCH 1/2] Use evas_object_image as mouse event target * Use ecore_evas_window_get instead of ecore_evas_window_get. * Fix flutter-tizen/flutter-tizen/issues/424 Signed-off-by: Boram Bae --- .../platform/tizen/tizen_window_elementary.cc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/shell/platform/tizen/tizen_window_elementary.cc b/shell/platform/tizen/tizen_window_elementary.cc index bdd8b3c51c046..2890f56f081c4 100644 --- a/shell/platform/tizen/tizen_window_elementary.cc +++ b/shell/platform/tizen/tizen_window_elementary.cc @@ -173,7 +173,7 @@ void TizenWindowElementary::RegisterEventHandlers() { [](void* data, Evas* evas, Evas_Object* object, void* event_info) { auto* self = reinterpret_cast(data); if (self->view_delegate_) { - if (self->elm_win_ == object) { + if (self->image_ == object) { auto* mouse_event = reinterpret_cast(event_info); self->view_delegate_->OnPointerDown( @@ -184,7 +184,7 @@ void TizenWindowElementary::RegisterEventHandlers() { } }; evas_object_event_callback_add( - elm_win_, EVAS_CALLBACK_MOUSE_DOWN, + image_, EVAS_CALLBACK_MOUSE_DOWN, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_DOWN], this); evas_object_callbacks_[EVAS_CALLBACK_MOUSE_UP] = [](void* data, Evas* evas, @@ -192,7 +192,7 @@ void TizenWindowElementary::RegisterEventHandlers() { void* event_info) { auto* self = reinterpret_cast(data); if (self->view_delegate_) { - if (self->elm_win_ == object) { + if (self->image_ == object) { auto* mouse_event = reinterpret_cast(event_info); self->view_delegate_->OnPointerUp( mouse_event->canvas.x, mouse_event->canvas.y, @@ -201,7 +201,7 @@ void TizenWindowElementary::RegisterEventHandlers() { } } }; - evas_object_event_callback_add(elm_win_, EVAS_CALLBACK_MOUSE_UP, + evas_object_event_callback_add(image_, EVAS_CALLBACK_MOUSE_UP, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_UP], this); @@ -209,7 +209,7 @@ void TizenWindowElementary::RegisterEventHandlers() { [](void* data, Evas* evas, Evas_Object* object, void* event_info) { auto* self = reinterpret_cast(data); if (self->view_delegate_) { - if (self->elm_win_ == object) { + if (self->image_ == object) { auto* mouse_event = reinterpret_cast(event_info); self->view_delegate_->OnPointerMove( @@ -220,14 +220,14 @@ void TizenWindowElementary::RegisterEventHandlers() { } }; evas_object_event_callback_add( - elm_win_, EVAS_CALLBACK_MOUSE_MOVE, + image_, EVAS_CALLBACK_MOUSE_MOVE, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_MOVE], this); evas_object_callbacks_[EVAS_CALLBACK_MOUSE_WHEEL] = [](void* data, Evas* evas, Evas_Object* object, void* event_info) { auto* self = reinterpret_cast(data); if (self->view_delegate_) { - if (self->elm_win_ == object) { + if (self->image_ == object) { auto* wheel_event = reinterpret_cast(event_info); double delta_x = 0.0; @@ -247,7 +247,7 @@ void TizenWindowElementary::RegisterEventHandlers() { } }; evas_object_event_callback_add( - elm_win_, EVAS_CALLBACK_MOUSE_WHEEL, + image_, EVAS_CALLBACK_MOUSE_WHEEL, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_WHEEL], this); evas_object_callbacks_[EVAS_CALLBACK_KEY_DOWN] = [](void* data, Evas* evas, @@ -359,7 +359,8 @@ int32_t TizenWindowElementary::GetDpi() { } uintptr_t TizenWindowElementary::GetWindowId() { - return elm_win_window_id_get(elm_win_); + return ecore_evas_window_get( + ecore_evas_ecore_evas_get(evas_object_evas_get(elm_win_))); } void TizenWindowElementary::SetPreferredOrientations( From 6dca800541fe948106f61e4920353a34e5baf354 Mon Sep 17 00:00:00 2001 From: Boram Bae Date: Fri, 19 Aug 2022 11:16:08 +0900 Subject: [PATCH 2/2] Update based on reivew Signed-off-by: Boram Bae --- shell/platform/tizen/tizen_window_elementary.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/shell/platform/tizen/tizen_window_elementary.cc b/shell/platform/tizen/tizen_window_elementary.cc index 2890f56f081c4..a0a7c5e18c7c4 100644 --- a/shell/platform/tizen/tizen_window_elementary.cc +++ b/shell/platform/tizen/tizen_window_elementary.cc @@ -305,17 +305,18 @@ void TizenWindowElementary::UnregisterEventHandlers() { rotation_changed_callback_); evas_object_event_callback_del( - elm_win_, EVAS_CALLBACK_MOUSE_DOWN, + image_, EVAS_CALLBACK_MOUSE_DOWN, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_DOWN]); evas_object_event_callback_del( - elm_win_, EVAS_CALLBACK_MOUSE_UP, + image_, EVAS_CALLBACK_MOUSE_UP, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_UP]); evas_object_event_callback_del( - elm_win_, EVAS_CALLBACK_MOUSE_MOVE, + image_, EVAS_CALLBACK_MOUSE_MOVE, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_MOVE]); evas_object_event_callback_del( - elm_win_, EVAS_CALLBACK_MOUSE_WHEEL, + image_, EVAS_CALLBACK_MOUSE_WHEEL, evas_object_callbacks_[EVAS_CALLBACK_MOUSE_WHEEL]); + evas_object_event_callback_del( elm_win_, EVAS_CALLBACK_KEY_DOWN, evas_object_callbacks_[EVAS_CALLBACK_KEY_DOWN]);