platform/upstream/enlightenment.git
20 months agoRevert "e_hwc_windows: do not skip animating window in visible list" 05/299905/1 accepted/tizen/7.0/unified/20231013.015725
Changyeon Lee [Wed, 11 Oct 2023 11:06:56 +0000 (20:06 +0900)]
Revert "e_hwc_windows: do not skip animating window in visible list"

This reverts commit aff40cbe7a5f5f6d91b5052837d6a3ac41d18859.

this commit is not needed anymore

bug is fixed with commit 0eb394584

"e_hwc_windows: fix the problem that window located under 24 depth
 window is visible"

Change-Id: Id96c7450cf9232692017434687a1c70f8aea9cf9

20 months agoe_hwc_windows: synchronize present when below_transparent_window is unset 24/299224/1
Changyeon Lee [Thu, 21 Sep 2023 12:51:32 +0000 (21:51 +0900)]
e_hwc_windows: synchronize present when below_transparent_window is unset

if accepted state of hwc_window is changed Device to Client
but below_transparent_obj is displayed, black frame can be shown
even if below window is shown.
for fixing it, hwc synchronize hardware and evas compositing(present)
when below_transparent_window is unset.

Change-Id: I4e2ee5643ae8c882c2ed9aa7705d21e725e639ab

20 months agoAdd e_client_under_position_input_get() 76/283476/3
Artur Świgoń [Thu, 14 Sep 2023 09:40:15 +0000 (11:40 +0200)]
Add e_client_under_position_input_get()

Similarly to e_client_under_position_get(), it performs a hit-test, but input
regions are also considered. If input regions are present, then the specified
position needs to be inside such a region.

Change-Id: Ie75c346ffc6e535fdb678e7b5748435f9a003bbb

21 months agoe_hwc_windows: fix the problem that window located under 24 depth window is visible 62/298862/1 accepted/tizen/7.0/unified/20230918.160929
Changyeon Lee [Wed, 13 Sep 2023 12:56:48 +0000 (21:56 +0900)]
e_hwc_windows: fix the problem that window located under 24 depth window is visible

if tdm backend set target buffer to upper hw layer that used device type window,
window located under 24 depth window can be visible when evas object is visible.

so to fix the problem, hwc set transparent object when bottom ui window is device type
and target window is enabled.

Change-Id: I321b4fc84f3cb0f172d21eca92e9f317e454e77f

21 months agoe_hwc_windows: do not skip animating window in visible list 76/297776/1 accepted/tizen/7.0/unified/20230825.185046
Changyeon Lee [Wed, 23 Aug 2023 09:38:28 +0000 (18:38 +0900)]
e_hwc_windows: do not skip animating window in visible list

animating window can be shown under 24 depth fullscreen window

Change-Id: I24122a8ff2b7467d2c46c85e36723f0a84ae7654

21 months agoe_keyrouter: check validation of key when unsetting keygrab 40/297340/1 accepted/tizen/7.0/unified/20230818.185426
duna.oh [Wed, 16 Aug 2023 10:56:27 +0000 (19:56 +0900)]
e_keyrouter: check validation of key when unsetting keygrab

Change-Id: Ibe190b58eee3b85da41f6d689aee8712884ac721

23 months agoe_devicemgr_inputgen: fix to convert clas to Ecore_Device_Class when deinit generator 32/294832/1 accepted/tizen/7.0/unified/20230628.131353
duna.oh [Mon, 26 Jun 2023 08:01:28 +0000 (17:01 +0900)]
e_devicemgr_inputgen: fix to convert clas to Ecore_Device_Class when deinit generator

There was a bug sending a enum TIZEN_INPUT_DEVICE_MANAGER_CLAS_XXX
to _e_devicemgr_inputgen_list_get() API which takes Ecore_Device_Class type
as a argument.

Change-Id: Iaf6093d73134322a8c2442b022b0d49cda6c5126

23 months agoe_service_gesture: use e_util_timestamp_get() instead of ecore_timer_get() 93/294793/1 accepted/tizen/7.0/unified/20230628.014031
duna.oh [Thu, 22 Jun 2023 01:30:53 +0000 (10:30 +0900)]
e_service_gesture: use e_util_timestamp_get() instead of ecore_timer_get()

Change-Id: I2f54b82ed4a98962557c644d38474ca4f3e921b5

23 months agoe_service_gesture: add 'use_cleanup_timer' config in gesture_service 92/294792/1
duna.oh [Thu, 15 Jun 2023 00:08:58 +0000 (09:08 +0900)]
e_service_gesture: add 'use_cleanup_timer' config in gesture_service

configuration added
- use_cleanup_timer: use timer to cleanup gestures
- cleanup_time: wait for gesture ends after started (60 sec by default)

Change-Id: I9629f5b5ba3c05542bbff8a17268ed867611ffe0

23 months agoe_devicemgr: add E_API enabling to reset input block 91/294791/1
duna.oh [Thu, 15 Jun 2023 04:06:59 +0000 (13:06 +0900)]
e_devicemgr: add E_API enabling to reset input block

Change-Id: I34eb9ed5ade990af920649dd58f8a0dddbe1cd92

2 years agoe_info_server: change win_id type to uint64_t 54/293554/1 accepted/tizen/7.0/unified/20230601.105728
Junkyeong Kim [Wed, 31 May 2023 05:11:33 +0000 (14:11 +0900)]
e_info_server: change win_id type to uint64_t

Change-Id: I9a9ebd80d4d72b118512dc33e32e3cff48f6b0a4

2 years agoe_comp_wl: add checking if e_comp->pointer is null 60/293360/1
duna.oh [Mon, 22 May 2023 05:44:29 +0000 (14:44 +0900)]
e_comp_wl: add checking if e_comp->pointer is null

Change-Id: I9967ef30abb72dd97d59f2bc65b3287e06e3f576

2 years agoe_pointer: add null checking in e_pointer_object_set() 59/293359/1
duna.oh [Mon, 22 May 2023 02:15:09 +0000 (11:15 +0900)]
e_pointer: add null checking in e_pointer_object_set()

Change-Id: I2ff3a61e21a6bcf4d296eb793a8fe1e03099b509

2 years agoe_comp_wl: add break in switch in _e_comp_wl_cursor_timer_control() 58/293358/1
duna.oh [Mon, 22 May 2023 01:56:55 +0000 (10:56 +0900)]
e_comp_wl: add break in switch in _e_comp_wl_cursor_timer_control()

Change-Id: I57182350abbeaedf9484811a5cc601cd3a2598f4

2 years agoe_comp_wl: add null checking in e_comp_wl_input_cursor_timer_enable_set() 57/293357/1
duna.oh [Mon, 22 May 2023 01:00:37 +0000 (10:00 +0900)]
e_comp_wl: add null checking in e_comp_wl_input_cursor_timer_enable_set()

Change-Id: I22c1cfa7b1da182978314cdcbb8e9f28f17f8da9

2 years agoe_client: use e_client_raise during layer set by desk area 43/293243/2 accepted/tizen/7.0/unified/20230526.164239
Junseok Kim [Tue, 9 May 2023 11:15:11 +0000 (20:15 +0900)]
e_client: use e_client_raise during layer set by desk area

There was a bug that client raised to the topmost of the stack even if there're other higher E_Desk_Area.
It caused by stack change without consider E_Desk_Area.
For fix this issue, use e_client_raise instead of evas_object_raise on layer set by desk area.

Change-Id: I72c00a2a8917775641a8ec31d1c7357b408e7db4

2 years agoe_desk_area: maximize client that locked client size when desk area geom apply 42/293242/2
Junseok Kim [Wed, 26 Apr 2023 09:47:36 +0000 (18:47 +0900)]
e_desk_area: maximize client that locked client size when desk area geom apply

Change-Id: I5e600678f09e9488cdf5aceeedf5e7419ac1799a

2 years agoe_desk: remove strdup for prevent memory leak 41/293241/2
Junseok Kim [Wed, 29 Mar 2023 07:32:54 +0000 (16:32 +0900)]
e_desk: remove strdup for prevent memory leak

remove strdup call for prevent memory leak on wtz_splitscreen_region callback
and remove useless checker of the hook result

Change-Id: I91884c140eba316664cd7cf559f719c850974354

2 years agoe_client: remove null check for code readerability 40/293240/2
Junseok Kim [Wed, 29 Mar 2023 07:32:05 +0000 (16:32 +0900)]
e_client: remove null check for code readerability

Change-Id: Icea24fceca635475e33f264ddea40844e3b815dc

2 years agoe_desk_area: rename desk_group into desk_area 39/293239/2
SooChan Lim [Wed, 29 Mar 2023 06:55:46 +0000 (15:55 +0900)]
e_desk_area: rename desk_group into desk_area

Change-Id: I7b3fc33173435e3c27584c0c88e28b04d75407b1

2 years agoe_client: Use desk_group geometry for maximize reference geometry if desk group enabled 38/293238/2
Junseok Kim [Thu, 23 Mar 2023 12:12:30 +0000 (21:12 +0900)]
e_client: Use desk_group geometry for maximize reference geometry if desk group enabled

Change-Id: If4f9c847c19a9151885510df05c6739331b9c5c5

2 years agoe_desk: Duplicate appid string for send hook function 37/293237/2
Junseok Kim [Thu, 23 Mar 2023 02:01:29 +0000 (11:01 +0900)]
e_desk: Duplicate appid string for send hook function

Change-Id: I6e9a489bcb37e9173f2e71370b24f346bc0d434a
NOTE:: the appid MUST be freed on hook function

2 years agoe_desk_group: Add API for resizing method of window in desk_group 36/293236/2
Junseok Kim [Wed, 22 Mar 2023 10:57:04 +0000 (19:57 +0900)]
e_desk_group: Add API for resizing method of window in desk_group

Add API for choose resizing method of window in desk group.

when the e_desk_group_transform_enable_set receives True value,
the window in desk group will be transformed to fit to geometry of desk group same as before.
when disabled, then the window will be resized their client size to fit to geometry of desk group.

NOTE: current maximize size of the window is fit to desk.
e_client_maximized_geometry_set should be called after transform disable to set maximize size as geometry of desk_group.

Change-Id: I4175fe01cb1a4cca6dca5a296a8c27ad3a606ec1

2 years agoe_desk: check edg->name is available when generate splitscreen region 35/293235/2
Junseok Kim [Tue, 21 Mar 2023 11:21:07 +0000 (20:21 +0900)]
e_desk: check edg->name is available when generate splitscreen region

Change-Id: I9cf1fa54c73914069e6e1c8e3bffab6adc6493de

2 years agofollow the changed protocol 34/293234/2
SooChan Lim [Tue, 21 Mar 2023 08:08:14 +0000 (17:08 +0900)]
follow the changed protocol

This is the implementation for the changed wtz_screen interface.

Change-Id: Ifa4c356dbf7ad1c9e16fb299c2d3e9256da544b5

2 years agoe_zone: remove error post when the splitscreen didn't supported 33/293233/2
Junseok Kim [Fri, 17 Mar 2023 03:13:29 +0000 (12:13 +0900)]
e_zone: remove error post when the splitscreen didn't supported

Change-Id: I595bc400ebfc9db99e91b579f796ba042dd70f9f

2 years agoe_desk: Add argument to copy appid to hook function 32/293232/2
Junseok Kim [Fri, 17 Mar 2023 02:47:05 +0000 (11:47 +0900)]
e_desk: Add argument to copy appid to hook function

Change-Id: I51ea559114ce15fd0215503449e22205ff6049da

2 years agoe_desk: create using id 0 instead of id of wtz_splitscreen 31/293231/2
Junseok Kim [Fri, 17 Mar 2023 01:52:30 +0000 (10:52 +0900)]
e_desk: create using id 0 instead of id of wtz_splitscreen

Change-Id: Icc3db894b032152ca4cf82b4dfe3050d0e60b57b

2 years agoe_zone: fix typo 30/293230/2
Junseok Kim [Fri, 17 Mar 2023 01:49:10 +0000 (10:49 +0900)]
e_zone: fix typo

Change-Id: Id5ffc8f30341949b4fbad376629a2cef94683619

2 years agoe_appinfo: change e_appinfo_pid_get to E_API 29/293229/2
Junseok Kim [Tue, 27 Dec 2022 06:30:25 +0000 (15:30 +0900)]
e_appinfo: change e_appinfo_pid_get to E_API

Change-Id: I29cb1661ce84b905906f0969af14d21327f696c3

2 years agoimplement the wtz_shell protocol 28/293228/2
SooChan Lim [Thu, 9 Mar 2023 09:23:22 +0000 (18:23 +0900)]
implement the wtz_shell protocol

This is the first implementation for the wtz_shell and wtz_surface interface.

Change-Id: I37ddcb2d4cacbc4e557b23d64b9f0bb249668f9f

2 years agoimplement the wtz_screen protocol 27/293227/2
SooChan Lim [Tue, 7 Mar 2023 11:56:50 +0000 (20:56 +0900)]
implement the wtz_screen protocol

Change-Id: I258fe058b18b2889cc0dbadd862623425b8c05ba

2 years agoadd E_Desk_Group_Hook 26/293226/2
SooChan Lim [Fri, 10 Mar 2023 08:59:18 +0000 (17:59 +0900)]
add E_Desk_Group_Hook

Change-Id: If73021444670b9c8dc27e3142d4a3d19982da92c

2 years agoe_comp_wl: fix to set ec->pointer_enter_sent in mouse_in/out_send() and out() 10/292910/1 accepted/tizen/7.0/unified/20230525.170520
duna.oh [Tue, 16 May 2023 06:03:00 +0000 (15:03 +0900)]
e_comp_wl: fix to set ec->pointer_enter_sent in mouse_in/out_send() and out()

Change-Id: Ibbfa26825fa0021068e50f24ce6d24aa6a4473f3

2 years agoe_comp_wl: add function to check if cursor timer is needed to apply 70/292870/1
duna.oh [Thu, 11 May 2023 09:43:52 +0000 (18:43 +0900)]
e_comp_wl: add function to check if cursor timer is needed to apply

Change-Id: I2ee45838328a2f18056d6fd89c9717dee0160f64

2 years agoe_comp_wl_input: do not apply cursor timer logic if client has unset cursor 69/292869/1
duna.oh [Thu, 11 May 2023 00:42:58 +0000 (09:42 +0900)]
e_comp_wl_input: do not apply cursor timer logic if client has unset cursor

add has_cursor_unset member variable in E_Client struct.
If ec->has_cursor_unset is TRUE, do not apply cursor timer logic which is
to hide cursor when mouse event doesn't come (idle for such sec.) and to show
cursor when mouse event starts to come.

Change-Id: I2442ac345832b2795bf211db3c6a18f35df76595

2 years agoe_comp_wl: add checking pointer_enter_sent in _e_comp_wl_cursor_reload() 68/292868/1
duna.oh [Wed, 10 May 2023 07:33:29 +0000 (16:33 +0900)]
e_comp_wl: add checking pointer_enter_sent in _e_comp_wl_cursor_reload()

Change-Id: I0b30aeb0e80ed8f2726eaeda42e8e78f1bf5a71f

2 years agoe_comp_wl_input: add checking show_cursor before setting cursor's visible TRUE 67/292867/1
duna.oh [Wed, 10 May 2023 07:02:38 +0000 (16:02 +0900)]
e_comp_wl_input: add checking show_cursor before setting cursor's visible TRUE

Change-Id: I7978a61c6f71cb976c0428c7927e63fe5423ee54

2 years agoe_pointer: refactoring e_pointer_object_set() 66/292866/1
duna.oh [Wed, 10 May 2023 07:00:15 +0000 (16:00 +0900)]
e_pointer: refactoring e_pointer_object_set()

Change-Id: Ic5c9e2a6c50e30e9a6d12e6d9b8b1f38ee0cd095

2 years agoe_comp_wl: add intercept hooks for cursor timer when mouse wheel/down/up 65/292865/1
duna.oh [Wed, 10 May 2023 05:11:02 +0000 (14:11 +0900)]
e_comp_wl: add intercept hooks for cursor timer when mouse wheel/down/up

Change-Id: I00467aa607b43a5f8e463e5e44394b26d7e8eb79

2 years agoRevert "Revert "e_comp_object: make the frame object transparent when it is unredirec... 25/292825/1
Changyeon Lee [Mon, 15 May 2023 03:07:47 +0000 (12:07 +0900)]
Revert "Revert "e_comp_object: make the frame object transparent when it is unredirected""

This reverts commit 521314d7db521047cb2e2aaff06b450046e12e36.

e_comp_object_color_get return user_color of trasnparent if transparent is set

Change-Id: Ic465c0d141994a08ec9684abf6257a8ece77d89e

2 years agoe_input: add checking TOUCH capability in e_input_device_pointer_xy_get() 95/292695/1
duna.oh [Thu, 11 May 2023 08:30:49 +0000 (17:30 +0900)]
e_input: add checking TOUCH capability in e_input_device_pointer_xy_get()

seat->ptr.x/y could be updated by TOUCH or POINTER device.
This patch fixes the bug that if no POINTER device is attached, user couldn't
get the right values of ptr.x/y.

Change-Id: I9a8c7b708882a30a81a02db6ad6f4d2a4a87aed8

2 years agoe_hwc_window: calculate fps of hw cursor 57/292557/1
Changyeon Lee [Tue, 2 May 2023 02:51:09 +0000 (11:51 +0900)]
e_hwc_window: calculate fps of hw cursor

Change-Id: I2679ca9ca30da11cf0983c5e276088ade173281d

2 years agoe_comp_object: add e_comp_object_color_get 36/292536/1
Changyeon Lee [Tue, 9 May 2023 08:28:03 +0000 (17:28 +0900)]
e_comp_object: add e_comp_object_color_get

Change-Id: Iaac99b24ff8b8d13e72bd12d9af7b9ff72af9bdc

2 years agoAdd code to update the layout_apply information 64/292364/2 accepted/tizen/7.0/unified/20230505.170237
Doyoun Kang [Thu, 4 May 2023 08:04:56 +0000 (17:04 +0900)]
Add code to update the layout_apply information

We update the layout_apply value of EC to EINA_TRUE when the user requests to layout_set.
And we change it to EINA_FALSE when the user requests to maximize, unmaximize and
interactive move or resize.

Change-Id: Ib8f3a88d8689aad625b2cdaa453548a98ab39d5b

2 years agowinfo: add layout_apply info to topvwins option 63/292363/2
Doyoun Kang [Thu, 4 May 2023 08:01:59 +0000 (17:01 +0900)]
winfo: add layout_apply info to topvwins option

Change-Id: I1f36b43861a7d73a1b22799cc17fa288c0f09a01

2 years agoe_client: add the layout_apply value and APIs 62/292362/1
Doyoun Kang [Thu, 4 May 2023 07:56:03 +0000 (16:56 +0900)]
e_client: add the layout_apply value and APIs

We added the layout_apply code to maintain the state of layout_set as below.
1. add a layout_apply value in E_Client structure
2. add new APIs for setting/getting the layout_set apply state.
   - void e_client_layout_apply(E_Client *ec, Eina_Bool apply);
   - Eina_Bool e_client_is_layout_apply(E_Client *ec);

Change-Id: Ia785e49749b1f12173e2ba76ff2e16d09c1aca59

2 years agoRevert "e_comp_object: make the frame object transparent when it is unredirected" 44/292344/1
Changyeon Lee [Thu, 4 May 2023 08:19:14 +0000 (17:19 +0900)]
Revert "e_comp_object: make the frame object transparent when it is unredirected"

This reverts commit d4cf397796ff40363042ad4c8abbade4b1facddb.

Change-Id: I8ab5ea025607e46697015426c8a3fba09e4c7c43

2 years agoe_service_gesture: do not raise a gesture without 1st finger event 46/292246/1
duna.oh [Tue, 2 May 2023 04:49:47 +0000 (13:49 +0900)]
e_service_gesture: do not raise a gesture without 1st finger event

e_service_gesture expects multi-touch events coming after 1st finger events.
There was the bug that a gesture started from 2nd finger event and
didn't end properly since 1st finger was consumed by e-mod screen reader.
This patch add prevention check if 1st finger did come or not.

Change-Id: Ied7f991671eceb7c57aa1b78fe5fcf495b1503dd

2 years agoe_comp_object: modify e_comp_intercept_resize 17/292217/1
Doyoun Kang [Fri, 28 Apr 2023 06:36:01 +0000 (15:36 +0900)]
e_comp_object: modify e_comp_intercept_resize

When e calls evas_object_resize, then _e_comp_intercept_resize is called.
In this callback function, if the window is not ready to be resized for
various reasons (such as not yet visible), we should call e_client_size_set
to update ec's size only if the current ec's size and new size are different.
We don't check the maximize state of window because the window size may
change depending on the maximize type.

Change-Id: I536f185ccfd5edfe1d8aeff7917b8cbaaea0cc07

2 years agoe_policy: add callback for E_EVENT_ZONE_USEFUL_GEOMETRY_CHANGE 15/292215/1
Doyoun Kang [Fri, 28 Apr 2023 08:11:14 +0000 (17:11 +0900)]
e_policy: add callback for E_EVENT_ZONE_USEFUL_GEOMETRY_CHANGE

We add a E_EVENT_ZONE_USEFUL_GEOMETRY_CHANGE event callback function.
If the useful geometry of E_Zone is changed, then we re-calculate the
geometry of a maximize state windows.

Change-Id: I9171704936cc53a9dae91874c9b3c3a210ac376c

2 years agoe_client: add e_client_maximize_update function 14/292214/1
Doyoun Kang [Fri, 28 Apr 2023 08:07:53 +0000 (17:07 +0900)]
e_client: add e_client_maximize_update function

Change-Id: I85947a2ef4cb4056baf6a52e68a271152448f622

2 years agoChange maximize type for service windows 13/292213/1
Doyoun Kang [Fri, 28 Apr 2023 07:59:26 +0000 (16:59 +0900)]
Change maximize type for service windows

We changed a maximize type of special windows (such as service windows)
to MAXIMIZE_FULLSCREEN.
For this patch, if the obsctacle windows (ex, taskbar) are exist, the special
windows are maximized regardless of obstacles area.

FYI, normal window's default maximize type is E_MAXIMIZE_EXPAND and it's
maximize geometry is affected by obstacle area.

Change-Id: I02ebd9c12cd29a604bba1534e271d397410a5120

2 years agoe_zone: add Event for useful_geometry_change 12/292212/1
Doyoun Kang [Fri, 28 Apr 2023 05:13:36 +0000 (14:13 +0900)]
e_zone: add Event for useful_geometry_change

We add a new event - E_EVENT_ZONE_USEFUL_GEOMETRY_CHANGE.
This event is generated when an obstacle is added/removed/modified.

Change-Id: I613a335f6040318172476e5cf2b46f0273536355

2 years agoe_client: use e_zone_desk_useful_geometry_get in e_client_maximize 11/292211/1
Doyoun Kang [Fri, 28 Apr 2023 10:35:45 +0000 (19:35 +0900)]
e_client: use e_zone_desk_useful_geometry_get in e_client_maximize

Change-Id: I17b23e7d3c7af3db6d8fa602360cd7e08fa6ab18

2 years agoe_zone: add E_Zone_Obstacle feature 10/292210/1
Doyoun Kang [Fri, 28 Apr 2023 10:30:05 +0000 (19:30 +0900)]
e_zone: add E_Zone_Obstacle feature

Change-Id: I8366c9bff5d9dc3b83b52e8831aa235a485a0858

2 years agoe_comp_wl & e_comp_wl_input: fixed pointer constraints logic using mouse in cb instea... 52/292152/1 accepted/tizen/7.0/unified/20230502.051241
Sungjin Park [Fri, 28 Apr 2023 03:15:50 +0000 (12:15 +0900)]
e_comp_wl & e_comp_wl_input: fixed pointer constraints logic using mouse in cb instead of focus cb

Change-Id: I128f39e302b920e85bb7ab17953a9e359973dc7a
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_object: make the frame object transparent when it is unredirected 09/292109/2
Changyeon Lee [Mon, 24 Apr 2023 07:58:13 +0000 (16:58 +0900)]
e_comp_object: make the frame object transparent when it is unredirected

glTexImage2D is called in next render if the frame object is redirected
because it does not have native buffer and it is visible.

we makes the frame object transparent and evas does not render
the frame object.(glTexImage2D is not called)

this patch optimizes gpu memory usage.

Change-Id: I44a229c4d3e972c4eccf3bfb0b56d73fb6f04e0d

2 years agoe_comp_wl_input: fixed to use client's y position to warp pointer when locked pointer... 73/292073/1
Sungjin Park [Thu, 27 Apr 2023 04:34:19 +0000 (13:34 +0900)]
e_comp_wl_input: fixed to use client's y position to warp pointer when locked pointer is destroyed

Change-Id: I276348fd94fc7b7a0a892d43a1e9fcd36c2d59dc
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl_input: fixed to update region_pending in locked_pointer_set_region callback 71/292071/1
Sungjin Park [Thu, 27 Apr 2023 04:31:14 +0000 (13:31 +0900)]
e_comp_wl_input: fixed to update region_pending in locked_pointer_set_region callback

Change-Id: I02aae0b8083c4a52258cd236b36edb61597371b6
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoecomp_wl & e_comp_wl_input: moved header inclusion to .c file for relative pointer... 61/292061/1
Sungjin Park [Thu, 27 Apr 2023 02:13:52 +0000 (11:13 +0900)]
ecomp_wl & e_comp_wl_input: moved header inclusion to .c file for relative pointer and pointer constraints

Change-Id: Ifb289508648b5ff5d269d727deb02d17ba10a457
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl: prepend mouse move event handler to prevent mouse move propagation when... 13/292013/1
Sungjin Park [Tue, 25 Apr 2023 11:51:34 +0000 (20:51 +0900)]
e_comp_wl: prepend mouse move event handler to prevent mouse move propagation when required

Change-Id: Ic61a340f0fbab911747a46b2ff0fea352a301878
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl_input: set/unset pointer relative motion handler when a pointer constraint... 12/292012/1
Sungjin Park [Tue, 25 Apr 2023 11:49:31 +0000 (20:49 +0900)]
e_comp_wl_input: set/unset pointer relative motion handler when a pointer constraint is activated/deactivated

Change-Id: I5a279f8fe8186912850b50c0c1f09725a2258a4d
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_input_evdev: modified to send pointer relative motion event when required 11/292011/1
Sungjin Park [Tue, 25 Apr 2023 11:38:25 +0000 (20:38 +0900)]
e_input_evdev: modified to send pointer relative motion event when required

Change-Id: I15850efd519d0481ad260b836d08ec844e9d00ab
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_input: added internal APIs to set/get pointer relative motion handler 10/292010/1
Sungjin Park [Tue, 25 Apr 2023 11:36:53 +0000 (20:36 +0900)]
e_input: added internal APIs to set/get pointer relative motion handler

Change-Id: I5e95285611c1f52b9531b1388dc96e3fd325bc40
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl & e_comp_wl_input: added signal emitters for pointer constraints 09/292009/1
Sungjin Park [Tue, 25 Apr 2023 11:25:02 +0000 (20:25 +0900)]
e_comp_wl & e_comp_wl_input: added signal emitters for pointer constraints

Change-Id: I868c98a32d62bbb722950ed40e1f4228ce661364
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl & e_comp_wl_input: added implementation for zwp_pointer_constraints_v1_inte... 08/292008/1
Sungjin Park [Tue, 25 Apr 2023 11:18:24 +0000 (20:18 +0900)]
e_comp_wl & e_comp_wl_input: added implementation for zwp_pointer_constraints_v1_interface

Change-Id: Ib8393b03d78761e97cd92cd2b179d0d877ff1c25
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agoe_comp_wl & e_comp_wl_input: added implementation for zwp_relative_pointer_v1_interface 06/292006/1
Sungjin Park [Tue, 25 Apr 2023 10:52:09 +0000 (19:52 +0900)]
e_comp_wl & e_comp_wl_input: added implementation for zwp_relative_pointer_v1_interface

Change-Id: Ic712d83511d7a3f7bcdc61a5e12640d5f5ad4e6e
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agopackaging: added support for relative pointer and pointer constraints wayland extension 05/292005/1
Sungjin Park [Tue, 25 Apr 2023 07:49:24 +0000 (16:49 +0900)]
packaging: added support for relative pointer and pointer constraints wayland extension

Change-Id: Ib19f6fd473dc3d7356bb107ae80d48ad5a18cec8
Signed-off-by: Sungjin Park <sj76.park@samsung.com>
2 years agovideo: Fix render failure for 1x1 size 88/291788/1
Seunghun Lee [Fri, 21 Apr 2023 05:13:10 +0000 (14:13 +0900)]
video: Fix render failure for 1x1 size

While determining whether the given vertices represent the portrait or
the landscape rectangle, the margin of 1 pixel has been used because
sometimes there has been 1 pixel difference between two adjacent
vertices. This could be because of evas map algorithm, but I'm not sure.

If the dimension of rectangle would be 1x1 it wouldn't be worked, so if
the given vertices represent the rectangle that has 1x1 dimension, then
no margin would be used.

Change-Id: I0c776060ed3124dfd72717e474f193929ae51c6a

2 years agoe_client: inherit parent's zoom when transform core update 72/291672/1
Junseok Kim [Wed, 19 Apr 2023 05:11:05 +0000 (14:11 +0900)]
e_client: inherit parent's zoom when transform core update

Change-Id: I5f0c8415f95eadba1e335eaebe23f0eee8417c74

2 years agoe_policy_wl: send configure event while handling tizen_policy_set_layout request 47/291647/2 accepted/tizen/7.0/unified/20230424.020444
Doyoun Kang [Wed, 19 Apr 2023 01:16:58 +0000 (10:16 +0900)]
e_policy_wl: send configure event while handling tizen_policy_set_layout request

Change-Id: Id2889160e456dd1596aa21e2ab3fa0e850e7de71

2 years agoe_comp_wl/e_xdg_shell: modify code for handling configure event size 46/291646/1
Doyoun Kang [Wed, 19 Apr 2023 00:24:29 +0000 (09:24 +0900)]
e_comp_wl/e_xdg_shell: modify code for handling configure event size

We modify code to call configure_send function with width and height are -1 when only
the window's state is changed.
If the width and height are -1, this means we don't need to consider the size value
while sending configure event.

So, in this case, we don't update the configure size value.

Change-Id: I5d75520c915acc5b558d63524b638761f2242626

2 years agoe_input: fix build warning about unused function 52/291552/1
duna.oh [Tue, 18 Apr 2023 06:12:40 +0000 (15:12 +0900)]
e_input: fix build warning about unused function

The function '_device_handle_axis()' is only used
when LIBINPUT_HAVE_SCROLL_VALUE120 is undefined.

Change-Id: I8e1ae2db20074a300342d30f691b7c23d4ca4881

2 years agoe_info: add -use_cursor_timer option in winfo (enlightenment_info) 28/291528/1
duna.oh [Tue, 18 Apr 2023 03:59:05 +0000 (12:59 +0900)]
e_info: add -use_cursor_timer option in winfo (enlightenment_info)

new option 'use_cursor_timer' to enable/disable cursor_timer
which hides cursor when no mouse events comes
ex) winfo -use_cursor_timer [1:on] [0:off]

Change-Id: I1d8b0ba28650885c333b64f0623f6416c4ef985a

2 years agoe_config: add a new configuration - wm_win_rotation_swap_size 16/291516/1 accepted/tizen/7.0/unified/20230418.141956
Doyoun Kang [Tue, 18 Apr 2023 02:12:08 +0000 (11:12 +0900)]
e_config: add a new configuration - wm_win_rotation_swap_size

If this config is enabled, then window size can be swapped when it is rotated.
But it's up to e-module which is in charge of rotation functionality.

Change-Id: Ida40692d119cc0b42788c0b7ee5a153f029590c4

2 years agoe_info: add zone's angle information in topvwins 82/291482/1 accepted/tizen/7.0/unified/20230418.093704
Doyoun Kang [Mon, 17 Apr 2023 06:16:43 +0000 (15:16 +0900)]
e_info: add zone's angle information in topvwins

Change-Id: I6b669405289521fcb5ffc9c4cb865b901ccab981

2 years agoe_comp_wl: add _e_comp_wl_region_area_check function 58/291458/1
Junkyeong Kim [Fri, 14 Apr 2023 09:07:48 +0000 (18:07 +0900)]
e_comp_wl: add _e_comp_wl_region_area_check function

if requested region size(x+w or y+h) is over origin base region area,
set base region area to requested size.

Change-Id: I1d76b2e32330b1a4917c1172d0a57fc49a665521

2 years agoe_client/e_policy: subdivide the shadow size of decorator 59/291359/1
Doyoun Kang [Thu, 13 Apr 2023 11:22:45 +0000 (20:22 +0900)]
e_client/e_policy: subdivide the shadow size of decorator

We subdivided the shadow size of decorator into top, bottom, left, right.

Change-Id: Iabfa65039407ef8b9cfa23370a62497f59194db2

2 years agoe_info: print all ECs list on topwins operation 40/291340/1
Junseok Kim [Tue, 11 Apr 2023 06:31:45 +0000 (15:31 +0900)]
e_info: print all ECs list on topwins operation

There was no way to present invisible ECs list because of past topwins prints just evas object in e_comp->evas.
So, print all ECs on topwins operation.

Change-Id: I6f5170d26d2a4e1ae9f5e5760bd369eced5f919a
(cherry picked from commit e9453ea6c5ba5ea23a495e4bbf146b83fc4c6739)

2 years agoe_policy_wl: set desk_iconify_skip for cursor window 28/291328/1
Doyoun Kang [Thu, 13 Apr 2023 09:55:47 +0000 (18:55 +0900)]
e_policy_wl: set desk_iconify_skip for cursor window

We add code that the cursor window is not iconified by desk_iconify.

Change-Id: Idd4f03b3fc96515b65679682b027966999ab4bff

2 years agoe_policy: set desk_iconify_skip for service windows 93/291293/1
Doyoun Kang [Thu, 13 Apr 2023 02:32:01 +0000 (11:32 +0900)]
e_policy: set desk_iconify_skip for service windows

We add code that the service windows (such as home screen, quickpanel,
lock screen, etc) not to be iconified by desk_iconify.

Change-Id: I500af48b147c758b11d7ba62fd89fdd69ad1efa1
(cherry picked from commit b26b957ce22715633ccc6cab05af7b7098fc2112)

2 years agoe_policy_wl: change a layout geometry considering the shadow size 82/291182/1
Doyoun Kang [Tue, 11 Apr 2023 06:56:54 +0000 (15:56 +0900)]
e_policy_wl: change a layout geometry considering the shadow size

Change-Id: Id50ebd0086c36b381d7dfcbf8a7cd018cc38dda2

2 years agoe_client/e_policy_wl: add the shadow size for decoration 28/291128/2 accepted/tizen/7.0/unified/20230410.160650
Doyoun Kang [Mon, 10 Apr 2023 07:30:53 +0000 (16:30 +0900)]
e_client/e_policy_wl: add the shadow size for decoration

We add a shadow size for the client side decoration.
- E_Client struction : add a shadow value
- E_Policy_Hint_Type : add a E_POLICY_HINT_DECORATION_SIZE_SHADOW

Change-Id: I2044aba597dfb43408282574b6133dfcf650dd5c

2 years agoe_policy_wl: change aux hint name for decoration properties 27/291127/1
Doyoun Kang [Mon, 10 Apr 2023 06:46:50 +0000 (15:46 +0900)]
e_policy_wl: change aux hint name for decoration properties

We changed aux hint name related with client size decoration as below.
* E_Policy_Hint_Type
  - E_POLICY_HINT_RESIZE_HEADER_HEIGHT -> E_POLICY_HINT_DECORATION_SIZE_HEADER
  - E_POLICY_HINT_RESIZE_FOOTER_HEIGHT -> E_POLICY_HINT_DECORATION_SIZE_FOOTER
* hint_name
  - wm.policy.win.resize.header_height -> wm.policy.win.decoration.size.header
  - wm.policy.win.resize.footer_height -> wm.policy.win.decoration.size.footer

Change-Id: Iceb68af9d9fd6e116a779b96e4a11845e8b106b3

2 years agoe_desk: use transform_core to desk zoom 91/290991/1
Junseok Kim [Tue, 4 Apr 2023 04:07:31 +0000 (13:07 +0900)]
e_desk: use transform_core to desk zoom

Use transform_core API to desk zoom instead of transform_core_update_with_desk_zoom function.

There was a bug that video window blinking that enabled both of transform and desk zoom.

When the video window changed their size, the transform_core_update called by EVAS_CALLBACK_RESIZE before idle time.
And then, after idle time, following called the transform_core_update_with_desk_zoom by E_EVENT_CLIENT_RESIZE.
In this situation, it makese the window blinking because their're has different coordinates and zoom value of evas_map.

For fix this issue, use transform_core API to doing desk zoom to zoom at same time with other transform.

Change-Id: Ie2adf7d4af1d6239fb04d732ea3e51d6fc2ecee5

2 years agoe_util_transform: Add e_util_transform_zoom 90/290990/1
Junseok Kim [Tue, 4 Apr 2023 03:54:27 +0000 (12:54 +0900)]
e_util_transform: Add e_util_transform_zoom

Added e_util_transform_zoom for contain zoom information for using zoom API of evas_map.

Change-Id: I03b4d2ae0c8e0344c467157db592e963e437748a

2 years agoe_input_device: set input thread name 89/290989/1
Jihoon Kim [Tue, 4 Apr 2023 09:50:28 +0000 (18:50 +0900)]
e_input_device: set input thread name

Change-Id: I411af19f820f41fda3b856ac561a6382ec29b05c
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2 years agoe_comp_object: Quick fix for video punching issue 05/289605/2
Seunghun Lee [Fri, 10 Mar 2023 00:16:04 +0000 (09:16 +0900)]
e_comp_object: Quick fix for video punching issue

Applying render copy operation to smart object of video view didn't get
to take effect immediately after calling e_comp_object_mask_set() for
some reason. And it caused a visual glitch that the video view didn't
get displayed for a while.

Calling e_comp_object_mask_set(), the size of a rectangle object called
mask object must be 0x0 because there is obviously no
evas_object_resize() with this object. It would not be able to make evas
update its view. But it should be different for changing render
operation on smart object of video view. It should make some changes on
evas and make evas update its view. But it doesn't seem to work this
way. I'm not entirely sure, but it seems a bug in evas. Yet, I could be
wrong.

Since calling evas_object_resize() with the mask object seems to resolve
the issue, so let's avoid the issue with this way.
After all, calling evas_object_resize() with the mask object in
e_comp_object_mask_set() does make sense, and I don't see any side
effect in it.

Note that we might need to make another patch for this problem because
it's not the solution to get rid of root cause of the issue.

Change-Id: I04037517c30812f4120b9c024cea349e36723d71

2 years agoe_client: use rand_r() instead of rand() 72/290772/1 accepted/tizen/7.0/unified/20230405.151558
Doyoun Kang [Mon, 3 Apr 2023 02:55:28 +0000 (11:55 +0900)]
e_client: use rand_r() instead of rand()

we changed code to use rand_r instead of rand for thread safety

Change-Id: I0c0b35d1a42ace33428df7f11e3eebf4dc133d10

2 years agoe_comp_wl: remove selection target when ec going to delete 26/290726/1
Junseok Kim [Fri, 31 Mar 2023 07:02:18 +0000 (16:02 +0900)]
e_comp_wl: remove selection target when ec going to delete

Change-Id: I91f6ef96f004b016214916b90b10bf18abfa9fd7

2 years agoe_comp_wl_data: check focused resource is dnd icon resource 25/290725/1
Junseok Kim [Thu, 30 Mar 2023 10:08:21 +0000 (19:08 +0900)]
e_comp_wl_data: check focused resource is dnd icon resource

Check focused resource is same with DnD icon resource on start_drag request callback.
There was a bug that DnD icon window sometimes didn't appear.
It caused by focus set to the DnD icon window before receive start_drag request by timing issue.
Then the source window lose their focus, finally start_drag request fail.

For fix this issue, check the icon_resource is focused and continue the callback.

Change-Id: Ifb9c64df0123102f7cb925ce19c9902111318654

2 years agoe_comp_wl_data: set visible value of the drag_client to False when the drag finished. 24/290724/1
Junseok Kim [Thu, 30 Mar 2023 06:31:41 +0000 (15:31 +0900)]
e_comp_wl_data: set visible value of the drag_client to False when the drag finished.

Set visible value of the drag client to 0 when the drop finished.

There're many log about show blocked of the drag client after the drop
finished.
It's caused by the visible value of the drag client is 1 even though the
drag client didn't draw their surface after the drop finished.
To solve this problem, we set the visible value of the drag client to 0
when the drop finished.

Change-Id: I6994de1e5f11a3d1e1d2922948f43f10fd8d1753

2 years agoe_comp_wl: fix cursor flickering when mouse_out occurs 61/290661/1
duna.oh [Thu, 30 Mar 2023 06:08:00 +0000 (15:08 +0900)]
e_comp_wl: fix cursor flickering when mouse_out occurs

Showing and hiding a cursor is request-triggered operation by clients.
Hiding a cursor when mouse_out occurs is unnecessary server-side operation
and causes cursor flickering when mouse moves between apps.

Scenarios:
1. When mouse moves between cursor-supported apps (App 1 & App 2), App 2
sets its cursor and E20 hides an old cursor and shows a new one.

2 When mouse moves from a cursor-supported app to a cursor-unsupported app,
the cursor-unsupported app sets its cursor as null and E20 hides a cursor.

Change-Id: I3e15fd821064aa819f93eaed664c7d700a46b05a

2 years agosupport the set_auto_placement request of the tizen_launch_appinfo 92/290592/1 accepted/tizen/7.0/unified/20230330.014320
Doyoun Kang [Wed, 29 Mar 2023 08:25:01 +0000 (17:25 +0900)]
support the set_auto_placement request of the tizen_launch_appinfo

1. change version of tizen_launch_appinfo to 2
2. implement callback function for set_auto_placement of tizen_launch_appinfo
3. add E_CLIENT_INTERCEPT_HOOK_AUTO_PLACEMENT intercept hook

Change-Id: I7a007e403337af41873b1c2205939098d41cf6d4

2 years agoRename function name to get timestamp 76/290276/1 accepted/tizen/7.0/unified/20230328.140140
Jihoon Kim [Wed, 22 Mar 2023 07:28:20 +0000 (16:28 +0900)]
Rename function name to get timestamp

The function to get timestamp can be used generally.

Change-Id: Iff1e7db62724d15731dab2971d06ff5b317b21aa
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2 years agoFix timestamp overflow issue 90/290190/2
Jihoon Kim [Tue, 21 Mar 2023 08:01:19 +0000 (17:01 +0900)]
Fix timestamp overflow issue

Change-Id: Ie94b23adf5180c769f1ca9cec0403006d415e9e1
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2 years agoe_policy_wl: support tizen_policy_set_layout request 46/290246/1
Doyoun Kang [Wed, 22 Mar 2023 01:40:21 +0000 (10:40 +0900)]
e_policy_wl: support tizen_policy_set_layout request

Change-Id: I97bfb3fdf6ee52489644c2edf4ba8e21b4db8006

2 years agoe_comp_wl: Change input region set method 16/289716/1
Junkyeong Kim [Mon, 13 Mar 2023 11:28:30 +0000 (20:28 +0900)]
e_comp_wl: Change input region set method

erase round off error protection code.
use ec's w and h value instead state's w and h to get input region.

Change-Id: I197500f61b8d3655ae609036ca91d03c99ca285f

2 years agoe_client: fix bug for calculating ppu size 82/289682/1
Doyoun Kang [Mon, 13 Mar 2023 09:10:09 +0000 (18:10 +0900)]
e_client: fix bug for calculating ppu size

Change-Id: I677a598fa5aec7f228ecf0a486d174ffa517642c