platform/upstream/enlightenment.git
2 years agosubsurface: Use e_client_from_surface_resource() 94/292594/1
Seunghun Lee [Wed, 10 May 2023 04:35:10 +0000 (13:35 +0900)]
subsurface: Use e_client_from_surface_resource()

Change-Id: I7284152973a0872640b2ad065b0648f6f2d5c5b2

2 years agoe_hwc_window: calculate fps of hw cursor 56/292556/3
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 agoUse e_client_from_surface_resource() 54/292554/2
Seunghun Lee [Tue, 9 May 2023 06:23:42 +0000 (15:23 +0900)]
Use e_client_from_surface_resource()

Use e_client_from_surface_resource() instead of
wl_resource_get_user_data() directly.

Change-Id: Ie8dda92cbf81de5760d9090e64bbb2b02c8ae0e9

2 years agoe_client: Introduce e_client_from_surface_resource() 53/292553/2
Seunghun Lee [Tue, 9 May 2023 05:00:50 +0000 (14:00 +0900)]
e_client: Introduce e_client_from_surface_resource()

The wl_resource_get_user_data() has been used to get the corresponding
E_Client instance. To stop using wl_resource_get_user_data() directly,
this patch introduces a wrapper API. So, from now on,
e_client_from_surface_resource() has to be used instead of
wl_resource_get_user_data().

There could be some advantages with this API.

Firstly, as long as this API keeps returning E_Client instance, we can
change user data of surface resource if necessary.

Secondly, e_client_from_surface_resource() can check given surface
resource to see if it's actually associated with E_Client. If given
wl_resource isn't the one associated with E_Client, then it could return
NULL so that the caller would fail fast. Or, the caller would end up
manipulating the returned pointer of wl_resource_get_user_data() without
knowing it's not the correct instance.

Change-Id: I7fdc19a6b4cba647c314c32ae36ab847ca459ff7

2 years agoe_client: use e_client_raise during layer set by desk area 52/292552/2
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_zone: remove E_EVENT_POINTER_WARP 21/292521/3
SooChan Lim [Tue, 9 May 2023 05:45:34 +0000 (14:45 +0900)]
e_zone: remove E_EVENT_POINTER_WARP

It is not used anymore

Change-Id: I6ce3ca7f47e0d60fcf2d605a8f2283f19ca810ad

2 years agoe_slot: remove e_slot and e_splitlayout 20/292520/3
SooChan Lim [Wed, 3 May 2023 11:51:13 +0000 (20:51 +0900)]
e_slot: remove e_slot and e_splitlayout

e_slot and e_splitlayout are not used anymore.
They are deprecated.

Change-Id: I4434c0db552779fda4f976b99f9fabd19ec18748

2 years agoe_comp_object: add e_comp_object_color_get 33/292533/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 agoe_magnifier: make the functions be internal 19/292519/2
SooChan Lim [Wed, 3 May 2023 11:22:28 +0000 (20:22 +0900)]
e_magnifier: make the functions be internal

Change-Id: I112ef05b29a1492509ebd291f88deaf3c0a1f255

2 years agoe_path: make the functions be internal 18/292518/2
SooChan Lim [Wed, 3 May 2023 11:13:36 +0000 (20:13 +0900)]
e_path: make the functions be internal

Change-Id: I9d4b83f7ca5c1644a340c8c64219910f187cc6b1

2 years agoe_theme: make the functions be internal 17/292517/2
SooChan Lim [Wed, 3 May 2023 11:07:02 +0000 (20:07 +0900)]
e_theme: make the functions be internal

Change-Id: I8bd42a1067fffb17b7c74b2e8695a2f505541164

2 years agoe_prefix: make the functions be internal 16/292516/2
SooChan Lim [Wed, 3 May 2023 10:58:52 +0000 (19:58 +0900)]
e_prefix: make the functions be internal

Change-Id: I4316d9387f90d41f266de99bf601185135122afc

2 years agoe_bg: make the functions be internal 14/292514/2
SooChan Lim [Wed, 3 May 2023 10:06:45 +0000 (19:06 +0900)]
e_bg: make the functions be internal

Change-Id: Ie118ba00037995802c872e052f8aa8f8ec428c4e

2 years agoe_bindings: make the functions be internal 13/292513/2
SooChan Lim [Wed, 3 May 2023 09:56:01 +0000 (18:56 +0900)]
e_bindings: make the functions be internal

Change-Id: Ic258a8ce09a851cb5def5d899c0d2df924c71446

2 years agoe_actions: make the functions be internal 12/292512/2
SooChan Lim [Wed, 3 May 2023 08:53:51 +0000 (17:53 +0900)]
e_actions: make the functions be internal

Change-Id: Iae81439d93a7816dfe90b24074ffced0d1e59dc1

2 years agoe_util: remove e_util_immortal_check 11/292511/1
SooChan Lim [Tue, 2 May 2023 02:01:36 +0000 (11:01 +0900)]
e_util: remove e_util_immortal_check

It is deprecated.

Change-Id: Id55b2948b29ceb00290dd4ea93af284253ebbb5f

2 years agoe_client: remove e_clients_immortal_list 10/292510/1
SooChan Lim [Tue, 2 May 2023 01:59:54 +0000 (10:59 +0900)]
e_client: remove e_clients_immortal_list

It is deprecated.

Change-Id: I0259dc1369be426f9b73fd561207eed3053265ab

2 years agoe_comp_wl: remove the use of session-recovery protocol 09/292509/1
SooChan Lim [Sun, 30 Apr 2023 08:35:37 +0000 (17:35 +0900)]
e_comp_wl: remove the use of session-recovery protocol

It is not used.

Change-Id: I03c2f678cf598a79917bb871c431266cef92614b

2 years agoe_pixmap: remove e_pixmap_is_x 08/292508/1
SooChan Lim [Sun, 30 Apr 2023 08:02:16 +0000 (17:02 +0900)]
e_pixmap: remove e_pixmap_is_x

It is deprecated.

Change-Id: I4758ba93d6ed1f03868d968cf0df64175f7d6677

2 years agoe_pixmap: remove E_PIXMAP_TYPE_X 07/292507/1
SooChan Lim [Sun, 30 Apr 2023 07:54:56 +0000 (16:54 +0900)]
e_pixmap: remove E_PIXMAP_TYPE_X

It is deprecated.

Change-Id: Ia414b70b0366c6736710366ffb4e74297db09a9d

2 years agoe_client: remove e_client_has_xwindow 06/292506/1
SooChan Lim [Sun, 30 Apr 2023 07:42:24 +0000 (16:42 +0900)]
e_client: remove e_client_has_xwindow

It is deprecated.

Change-Id: Ic55c4fecb8aeb01178e7f7c95d27297fa65b549c

2 years agoe_config: remove e_config_mode_changed 05/292505/1
SooChan Lim [Sun, 30 Apr 2023 07:36:17 +0000 (16:36 +0900)]
e_config: remove e_config_mode_changed

e_config_mode_changed deprecated

Change-Id: I2a746c3b49233b7ab6c09390686ecd5b48760266

2 years agoe_config: remove E_EVENT_CONFIG_MODE_CHANGED 04/292504/1
SooChan Lim [Sun, 30 Apr 2023 07:34:31 +0000 (16:34 +0900)]
e_config: remove E_EVENT_CONFIG_MODE_CHANGED

E_EVENT_CONFIG_MODE_CHANGED is not used anywhere.

Change-Id: I1a8e467d4864518947fbce02eedc21f6b8c5894b

2 years agoviewport: Remove superfluous debug message 97/292497/1
Seunghun Lee [Tue, 2 May 2023 02:02:37 +0000 (11:02 +0900)]
viewport: Remove superfluous debug message

It's been unnecessarily printed too much in some cases.

Change-Id: I55ef1c531138dc1f9d17c6beac4eba03423c0c3a

2 years agoAdd code to update the layout_apply information 61/292361/1
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 60/292360/1
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 59/292359/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" 43/292343/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 41/292241/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_policy: add callback for E_EVENT_ZONE_USEFUL_GEOMETRY_CHANGE 09/292209/2 accepted/tizen/unified/20230528.171009
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: I1d2fcb026f630c082fb47643c8ba36575159c6ac

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

Change-Id: Ibba81a6ee1e3b56f9fb77d7f6042af16c4ada1f7

2 years agoChange maximize type for service windows 07/292207/2
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: Ia17189a68d5a9ab068ed49c2c94ff98fa5f8a621

2 years agoe_comp_object: modify e_comp_intercept_resize 68/292168/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: Ib1b60c532f0f34b84e791b7d75b04e8f8c843713

2 years agoe_zone: add Event for useful_geometry_change 61/292161/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_dbus_conn : set ecore thread name 29/292129/1
Junkyeong Kim [Thu, 27 Apr 2023 07:06:50 +0000 (16:06 +0900)]
e_dbus_conn : set ecore thread name

Change-Id: Ie8d62b8fe37878d2a4c299020fd2d70cd76c9873

2 years agoe_comp_wl_capture : set ecore thread name 28/292128/1
Junkyeong Kim [Thu, 27 Apr 2023 07:01:32 +0000 (16:01 +0900)]
e_comp_wl_capture : set ecore thread name

Change-Id: I54fb7b01fcc63e8c0cba46a1eca24a5edc743da8

2 years agosupport taskbar_service 16/292116/2 accepted/tizen/unified/20230428.155115
Doyoun Kang [Tue, 25 Apr 2023 09:24:58 +0000 (18:24 +0900)]
support taskbar_service

Change-Id: Id628e55061fa8b91dec221753bb8ed9e5a06b1f3

2 years agoe_client: use e_zone_desk_useful_geometry_get in e_client_maximize 15/292115/2
Doyoun Kang [Tue, 25 Apr 2023 12:48:15 +0000 (21:48 +0900)]
e_client: use e_zone_desk_useful_geometry_get in e_client_maximize

Change-Id: I62adb5fdcc91ef70b1cd352cabaa407fb5be0b9d

2 years agoe_zone: add E_Zone_Obstacle feature 14/292114/2
Doyoun Kang [Tue, 25 Apr 2023 12:46:58 +0000 (21:46 +0900)]
e_zone: add E_Zone_Obstacle feature

Change-Id: I1fe0d3b7d99fdb84795939c210a7822b406a9300

2 years agovideo: Do not initialize hwc backend with the same zone 11/292111/2
Seunghun Lee [Tue, 25 Apr 2023 08:43:42 +0000 (17:43 +0900)]
video: Do not initialize hwc backend with the same zone

When an E_EVENT_CLIENT_ZONE_SET event issues, it has to check the given
zone to see if it is the same as previous zone to prevent from
initializing hwc backend again unnecessarily.

Change-Id: I0b792bac6368414269c791587da0e5661dc5cbf2

2 years agoe_comp_object: make the frame object transparent when it is unredirected 07/292107/1
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: I73a99ec8039d3093d7f1fad8edd40a21d951a00f

2 years agoe_desk_area: maximize client that locked client size when desk area geom apply 82/292082/1
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 agovideo: Fix render failure for 1x1 size 87/291787/1 accepted/tizen/unified/20230531.151935
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: remove the internal_elm_win 96/291696/1
SooChan Lim [Thu, 20 Apr 2023 07:10:17 +0000 (16:10 +0900)]
e_client: remove the internal_elm_win

internel_elm_win var is useless.

Change-Id: I8b171c42b1e5bbc1737f0c2b8cf450d030d5cb11

2 years agoe_hwc_window: fix problem that cursor window is freed even if it is displayed 88/291688/1 accepted/tizen/unified/20230421.103339
Changyeon Lee [Thu, 20 Apr 2023 06:55:51 +0000 (15:55 +0900)]
e_hwc_window: fix problem that cursor window is freed even if it is displayed

buffer_ref of commit data can be changed to null when client destroy wl_buffer.
the problem is occurred when client destroy wl_buffer between commit and
commit_handler.

this patch use cursor info of the commit_data  instead buffer_ref for checking
whether the commit_data enable/disable display.

Change-Id: I23d3c986a499c0bdfe81495e9c166a4f82c32f91

2 years agoe_client: inherit parent's zoom when transform core update 71/291671/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 45/291645/1 accepted/tizen/unified/20230420.091932
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 44/291644/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 51/291551/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) 26/291526/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 15/291515/1 accepted/tizen/unified/20230419.044957
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 65/291465/1
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 47/291447/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 58/291358/1 accepted/tizen/unified/20230414.125219
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_policy_wl: set desk_iconify_skip for cursor window 27/291327/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_info: print all ECs list on topwins operation 95/291295/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

2 years agoe_policy: set desk_iconify_skip for service windows 92/291292/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

2 years agoe_policy_wl: change a layout geometry considering the shadow size 81/291181/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 25/291125/1 accepted/tizen/unified/20230411.161310
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 24/291124/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 86/290986/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 85/290985/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 78/290878/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_client: use rand_r() instead of rand() 71/290771/1 accepted/tizen/unified/20230404.140014
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 21/290721/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 17/290717/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. 16/290716/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 59/290659/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 agoe_desk: remove strdup for prevent memory leak 09/290609/1 accepted/tizen/unified/20230330.025624
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 08/290608/1
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 07/290607/1
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 06/290606/1
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 05/290605/1
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 04/290604/1
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 03/290603/1
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 02/290602/1
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 01/290601/1
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 00/290600/1
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 99/290599/1
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 98/290598/1
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 97/290597/1
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 96/290596/1
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 95/290595/1
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 94/290594/1
SooChan Lim [Fri, 10 Mar 2023 08:59:18 +0000 (17:59 +0900)]
add E_Desk_Group_Hook

Change-Id: If73021444670b9c8dc27e3142d4a3d19982da92c

2 years agosupport the set_auto_placement request of the tizen_launch_appinfo 90/290590/1
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 71/290271/1 accepted/tizen/unified/20230329.013229
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 62/290262/1
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 45/290245/1 accepted/tizen/unified/20230323.172515
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 15/289715/1 accepted/tizen/unified/20230316.045741
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 81/289681/2
Doyoun Kang [Mon, 13 Mar 2023 09:10:09 +0000 (18:10 +0900)]
e_client: fix bug for calculating ppu size

Change-Id: I677a598fa5aec7f228ecf0a486d174ffa517642c

2 years agoe_comp_object: Quick fix for video punching issue 96/289596/1
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 agoAdd libds and libds-tizen dependencies 11/289511/1
Seunghun Lee [Tue, 7 Mar 2023 08:38:19 +0000 (17:38 +0900)]
Add libds and libds-tizen dependencies

No functional addition. It's just to make enlightenment be dependent on
libds.

Change-Id: Ia7473d6e47fdd9d17bb6e8894cf17778cc3ba13e

2 years agoRevert "e_comp_wl: Change input region set method" 54/289454/1
Junkyeong Kim [Wed, 8 Mar 2023 01:54:42 +0000 (10:54 +0900)]
Revert "e_comp_wl: Change input region set method"

This reverts commit e73ae666dfcef2058ea9e150ed60428bb1c8aa04.

Change-Id: Iee34018bc783422a6267c77b82f4ad393ea4c2ef

2 years agoRevert "e_comp_object: Add input region set condition" 53/289453/1
Junkyeong Kim [Wed, 8 Mar 2023 01:48:44 +0000 (10:48 +0900)]
Revert "e_comp_object: Add input region set condition"

This reverts commit 363e8d480b0760cc8577f982ec27fc3aefa6fd00.

Change-Id: I525d0f795c01b38a776da90cacc5024ae6f9e6a9

2 years agoe_policy_wl: add callback functions for set/unset pin mode 73/289373/1 accepted/tizen/unified/20230307.101624
Doyoun Kang [Mon, 6 Mar 2023 11:23:07 +0000 (20:23 +0900)]
e_policy_wl: add callback functions for set/unset pin mode

Change-Id: I3e4f8442a525b77bb542213eeebfd2ed104012dc

2 years agoe_comp_object: Add input region set condition 73/289273/1
Junkyeong Kim [Fri, 3 Mar 2023 08:33:59 +0000 (17:33 +0900)]
e_comp_object: Add input region set condition

if width or height is 0, input region can be set 0x0.
it can makes region set error.
so do not add rect if width or height is c0.

Change-Id: Icc63a111a0fd6b49efe60d46e9772a096ee0e1d7
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_comp_wl: Change input region set method 72/289272/1
Junkyeong Kim [Fri, 3 Mar 2023 08:22:46 +0000 (17:22 +0900)]
e_comp_wl: Change input region set method

eina_tiler_intersection API has round off error. so do not use this API.
intead, use input region rectangle directly.

Change-Id: I744b79ebd3ac6ae759403709362730516b6e8797
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_input: support other axis_source (finger/continuous) than mouse wheel 42/289242/1
duna.oh [Thu, 2 Mar 2023 08:45:05 +0000 (17:45 +0900)]
e_input: support other axis_source (finger/continuous) than mouse wheel

Change-Id: I704ef4980832ad6cfa248b4912fbf05c3b6f6068

2 years agoe_client: modify e_client_pinned_set function 55/289155/1
Doyoun Kang [Thu, 2 Mar 2023 06:33:19 +0000 (15:33 +0900)]
e_client: modify e_client_pinned_set function

We changed a layer of the pinned set window to ABOVE layer

Change-Id: I5967f14ae43d17313c98802a612d2c339fedcfe6

2 years agoe_info_client/server: add -prop_set option in winfo (enlightenment_info) 54/289154/1
Doyoun Kang [Thu, 2 Mar 2023 06:23:10 +0000 (15:23 +0900)]
e_info_client/server: add -prop_set option in winfo (enlightenment_info)

We add new option "prop_set" to test some property in winfo (enlightenment_info)
ex) winfo -prop_set [window] [property] [value]

First we support test for pinning window.
- winfo -prop_set 0x12345678 pin 1

Change-Id: I114b4b020870fcf8d1892f507b699303f4f67443