From: Eunki Hong Date: Fri, 29 Mar 2024 13:30:40 +0000 (+0900) Subject: [Tizen] Set device class when mouse cancel X-Git-Tag: accepted/tizen/7.0/unified/20240330.125534^0 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git;a=commitdiff_plain;h=0feae630620a5c4feb87ca4003a92ee5ceef908d [Tizen] Set device class when mouse cancel Let we add device and screen and etc informations at MouseCancel event. It will be used when interrupt event sended to application side. Change-Id: I29f88d49234b33840783f8297c8e605819f3085d Signed-off-by: Eunki Hong --- diff --git a/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp index ae415cb..cde96b4 100644 --- a/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp @@ -903,10 +903,21 @@ void WindowBaseEcoreWl::OnMouseButtonCancel(void* data, int type, void* event) if(touchEvent->window == static_cast(ecore_wl_window_id_get(mEcoreWindow))) { + Device::Class::Type deviceClass; + Device::Subclass::Type deviceSubclass; + + GetDeviceClass(ecore_device_class_get(touchEvent->dev), deviceClass); + GetDeviceSubclass(ecore_device_subclass_get(touchEvent->dev), deviceSubclass); + Integration::Point point; point.SetDeviceId(touchEvent->multi.device); point.SetState(PointState::INTERRUPTED); - point.SetScreenPosition(Vector2(0.0f, 0.0f)); + point.SetScreenPosition(Vector2(touchEvent->x, touchEvent->y)); + point.SetRadius(touchEvent->multi.radius, Vector2(touchEvent->multi.radius_x, touchEvent->multi.radius_y)); + point.SetPressure(touchEvent->multi.pressure); + point.SetAngle(Degree(touchEvent->multi.angle)); + point.SetDeviceClass(deviceClass); + point.SetDeviceSubclass(deviceSubclass); mTouchEventSignal.Emit(point, touchEvent->timestamp); diff --git a/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp b/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp index f86954e..a4274b7 100644 --- a/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp +++ b/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp @@ -1337,10 +1337,21 @@ void WindowBaseEcoreWl2::OnMouseButtonCancel(void* data, int type, void* event) { DALI_TRACE_SCOPE(gTraceFilter, "DALI_ON_MOUSE_CANCEL"); + Device::Class::Type deviceClass; + Device::Subclass::Type deviceSubclass; + + GetDeviceClass(ecore_device_class_get(touchEvent->dev), deviceClass); + GetDeviceSubclass(ecore_device_subclass_get(touchEvent->dev), deviceSubclass); + Integration::Point point; point.SetDeviceId(touchEvent->multi.device); point.SetState(PointState::INTERRUPTED); - point.SetScreenPosition(Vector2(0.0f, 0.0f)); + point.SetScreenPosition(Vector2(touchEvent->x, touchEvent->y)); + point.SetRadius(touchEvent->multi.radius, Vector2(touchEvent->multi.radius_x, touchEvent->multi.radius_y)); + point.SetPressure(touchEvent->multi.pressure); + point.SetAngle(Degree(touchEvent->multi.angle)); + point.SetDeviceClass(deviceClass); + point.SetDeviceSubclass(deviceSubclass); mTouchEventSignal.Emit(point, touchEvent->timestamp);