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
Doyoun Kang [Thu, 4 May 2023 08:01:59 +0000 (17:01 +0900)]
winfo: add layout_apply info to topvwins option
Change-Id: I1f36b43861a7d73a1b22799cc17fa288c0f09a01
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
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
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
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
Doyoun Kang [Fri, 28 Apr 2023 08:07:53 +0000 (17:07 +0900)]
e_client: add e_client_maximize_update function
Change-Id: Ibba81a6ee1e3b56f9fb77d7f6042af16c4ada1f7
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
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
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
Junkyeong Kim [Thu, 27 Apr 2023 07:06:50 +0000 (16:06 +0900)]
e_dbus_conn : set ecore thread name
Change-Id: Ie8d62b8fe37878d2a4c299020fd2d70cd76c9873
Junkyeong Kim [Thu, 27 Apr 2023 07:01:32 +0000 (16:01 +0900)]
e_comp_wl_capture : set ecore thread name
Change-Id: I54fb7b01fcc63e8c0cba46a1eca24a5edc743da8
Doyoun Kang [Tue, 25 Apr 2023 09:24:58 +0000 (18:24 +0900)]
support taskbar_service
Change-Id: Id628e55061fa8b91dec221753bb8ed9e5a06b1f3
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
Doyoun Kang [Tue, 25 Apr 2023 12:46:58 +0000 (21:46 +0900)]
e_zone: add E_Zone_Obstacle feature
Change-Id: I1fe0d3b7d99fdb84795939c210a7822b406a9300
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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>
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
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
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
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
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
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
Junseok Kim [Wed, 29 Mar 2023 07:32:05 +0000 (16:32 +0900)]
e_client: remove null check for code readerability
Change-Id: Icea24fceca635475e33f264ddea40844e3b815dc
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
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
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
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
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
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
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
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
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
Junseok Kim [Fri, 17 Mar 2023 01:49:10 +0000 (10:49 +0900)]
e_zone: fix typo
Change-Id: Id5ffc8f30341949b4fbad376629a2cef94683619
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
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
SooChan Lim [Tue, 7 Mar 2023 11:56:50 +0000 (20:56 +0900)]
implement the wtz_screen protocol
Change-Id: I258fe058b18b2889cc0dbadd862623425b8c05ba
SooChan Lim [Fri, 10 Mar 2023 08:59:18 +0000 (17:59 +0900)]
add E_Desk_Group_Hook
Change-Id: If73021444670b9c8dc27e3142d4a3d19982da92c
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
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>
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>
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
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
Doyoun Kang [Mon, 13 Mar 2023 09:10:09 +0000 (18:10 +0900)]
e_client: fix bug for calculating ppu size
Change-Id: I677a598fa5aec7f228ecf0a486d174ffa517642c
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
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
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
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
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
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>
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>
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
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
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
Doyoun Kang [Thu, 16 Feb 2023 01:35:09 +0000 (10:35 +0900)]
e_comp_wl: refactors handling state change callback
We refactor code to handle each evas_object_smart_callback for changing state
(such as maximize/unmaximize, fullscreen, etc) separately.
Change-Id: I676e5a7b44dbf2f013fb6aebbd6690c00971bff3
Doyoun Kang [Wed, 15 Feb 2023 05:48:31 +0000 (14:48 +0900)]
Revert "e_comp_wl/e_xdg_shell: refactor the size of configure event"
This reverts commit
871409cb2f434cfe532137ca8eaa0451f4568ef2.
Change-Id: I11d0a70f38430358a2784e9fc6a25ae975826a88
Doyoun Kang [Mon, 20 Feb 2023 01:59:46 +0000 (10:59 +0900)]
refactor code to handle sync_client_geometry_add
There was a potential bug for handling tizen_position_set request if the ec is under
pending_geometry.
We refactored code handling sync_geometry_set to compare the buffer size not serial.
For this, if the tizen_position_set was called under pending geometry, then we called
e_comp_wl_commit_sync_client_geometry_add with size(0x0).
In this case, the client could not send the buffer chagne event for size(0x0), so the
tizen_position_set request remained not to handled.
To resolve this, we refactor the e_comp_wl_commit_sync_client_geometry_add function.
Change-Id: Ib36eec68b918a5ebacbb192037a9dc4a082137a0
Doyoun Kang [Mon, 20 Feb 2023 01:49:13 +0000 (10:49 +0900)]
e_comp_wl: fix bug for handling tizen_move_resize_geometry_set
There was a bug that the window didn't move if a client called the tizen_move_resize_geometry_set
with same size. In this case, the server waited for the changing buffer event, but the client
didn't change the buffer. So, the server didn't move window until getting buffer change event.
To resolve this, we add code to check the size of geometry both current and requested.
If the size is same, then we doesn't pend to change geometry, and just move window.
Change-Id: I28c58fc28cbc9511c3e1ae6076933afae947813c
Junseok Kim [Thu, 9 Feb 2023 10:11:22 +0000 (19:11 +0900)]
e_comp_wl: Send wl_data_device event to client considering input region
There was a bug that window that didn't seen to user receives
wl_data_device_enter event.
In this case, the window has 32bit colored, full size window, input rect
to drawing shelves at bottom of the screen.
And the enlightenment consider only the client's geometry to send
wl_data_device_enter event.
The above situations can cause that the window receive the
wl_data_device_enter event.
For fix this issue, consider input region of the client when send the
wl_data_device_enter event.
Change-Id: Ib13496aecd249ac752a9d0ee02819ac10ee48aa4
Junseok Kim [Thu, 9 Feb 2023 09:53:56 +0000 (18:53 +0900)]
e_client: Add function to get E_Client under pointer consider input rect
Add function to get E_Client under pointer with considering input rect
of client.
Change-Id: I33d41f1434da70feb42f203bfc43412ff969b344
Doyoun Kang [Fri, 17 Feb 2023 01:48:06 +0000 (10:48 +0900)]
e_info_server: consider position for drawing input_region
Change-Id: I2aa1814e1d8cc1a0d400e41f527e904a6d7de02a
Changyeon Lee [Fri, 10 Feb 2023 03:53:37 +0000 (12:53 +0900)]
e_hwc_window_queue: remove unnecessary initailizing pointer
Change-Id: Ieccc8c19e2ed1ef2e1b24241236685242929fa9f
Changyeon Lee [Tue, 7 Feb 2023 08:01:41 +0000 (17:01 +0900)]
e_hwc_windows: remove unnecessary initailizing pointer
Change-Id: I4eeb7d81f53dcb557d4a4eee06d28ef90b15b876
Changyeon Lee [Tue, 7 Feb 2023 07:57:47 +0000 (16:57 +0900)]
e_hwc_window: remove unnecessary initailizing pointer
Change-Id: I37164e540684057d25b7cc229aff1f606136c78d
Changyeon Lee [Tue, 7 Feb 2023 07:56:54 +0000 (16:56 +0900)]
e_comp_wl_tizen_hwc: remove unnecessary initializing pointer
Change-Id: I7437a6a52f82611191fb05d2cb02c15241c0032f
Changyeon Lee [Tue, 7 Feb 2023 08:16:18 +0000 (17:16 +0900)]
e_presentation_time: remove unnecessary initailizing pointer
Change-Id: I9864acb27c6b9d01dd0db3621320298f831e7af1
Changyeon Lee [Tue, 7 Feb 2023 08:17:36 +0000 (17:17 +0900)]
e_explicit_sync: remove unnecessary initailizing pointer
Change-Id: I4efb91b935068389d1709683930901cb9128a0da
Doyoun Kang [Wed, 15 Feb 2023 02:14:30 +0000 (11:14 +0900)]
remove handling enlightenment-tests in post script
Change-Id: I019cd74e344d355d8e878cc8aaa94814b91f2006
Doyoun Kang [Wed, 15 Feb 2023 01:21:29 +0000 (10:21 +0900)]
remove enlightenment-tests in enlightenment package
Change-Id: If6a8c66c1f88d366011d349f9071362dc3d59d54
duna.oh [Fri, 9 Dec 2022 05:42:46 +0000 (14:42 +0900)]
e_devicemgr: handle init_generator_with_sync request
init_generator_with_sync req. is available since tizen_input_devie_manager v.5
e_devicemgr handles this request by sending error_none event when device
is added in E20 and ready to generate input events.
If device is not ready in timer's duration (1 sec), e_devicemgr sends errors.
Change-Id: Ia8412114af58c1f71839c8a111d00fa639f2be9c
Doyoun Kang [Mon, 13 Feb 2023 11:15:46 +0000 (20:15 +0900)]
e_process: check internal window while handling activate/deactivate process
There was a bug that the status of process didn't change to DEACTIVATE when the internal ec got
focused.
For resolve this problem, we check the focus ec is internal ec or not. If focus ec is internal,
then e changes the previous activate process' state to DEACTIVATE.
Change-Id: I62961438c61cfc0685c595e93c9406c41eed963b
Changyeon Lee [Mon, 13 Feb 2023 05:37:36 +0000 (14:37 +0900)]
e_util_transform: fix flickering when client attach null buffer
client attach null buffer when it want to unmap
size of ec is updated by size of buffer and core transform use
size of ec.
so ec is transformed by 0x0 size when window is unmapped and
core transform is enabled.
it cause flickering frame when client attach valid buffer after
it is unmapped.
ex) window is 1920x1080 and core transform size is 3840x2160
1. client attach null buffer and it is umapped
2. transform is updated by 0x0 size because size of ec is 0x0
3. but ec is visible because hide effect
3. client is rendered with transform 0x0 size
4. client attach 1920x1080 size buffer and transform is updated
by 3840x2160
5. client is rendered with transform 3840x2160 size
Change-Id: Icd74973ae3bd18fda47fcadc47d9fad37bc667a5
Doyoun Kang [Mon, 13 Feb 2023 07:02:04 +0000 (16:02 +0900)]
e_comp_wl.h: remove unused function
Change-Id: I020264804229c39426ed21daab7c92ec8a3f7896
Doyoun Kang [Mon, 13 Feb 2023 02:03:56 +0000 (11:03 +0900)]
e_comp_wl: refactor code to handle sync_geometry_set
We refactor code to handle the tizen_move_resize_set_geometry request.
We handled it using the serial data of buffer, but there was a case not to set the serial data.
So, we changed code that e compares the buffer size and requested geometry size instead of the
serial data.
Change-Id: I0994f382797de3108e9c6c3645b0449f750b4832
Changyeon Lee [Mon, 6 Feb 2023 11:36:05 +0000 (20:36 +0900)]
e_comp_object: fix the size of effect object
the size of effect object should be set with the size of comp object
when map of effect object is disabled, not the size of buffer.
because the size of buffer can be different with the size of comp object
when client attach buffer which is not matched comp object.
Change-Id: I609f29db78d666f5efe18a39d1f295fb23a6af02
Doyoun Kang [Mon, 6 Feb 2023 07:23:02 +0000 (16:23 +0900)]
e_desk: check code whether ec is deleted in e_desk_geometry_set
Change-Id: I262d85056fe9a44de5f84626e055daafb906df33
Doyoun Kang [Wed, 1 Feb 2023 09:51:46 +0000 (18:51 +0900)]
e_policy_visibility: check bg_state before calling uniconify_render_pending
Change-Id: I83a38396dcae98aa019cd264c91ad1b8ccec00a2
Changyeon Lee [Thu, 19 Jan 2023 10:00:42 +0000 (19:00 +0900)]
e_comp_wl_tizen_hwc: add wait_commit to log of feedback timeout
Change-Id: I1fcada3c3cd323fde9610324189ffcaacc75c4b7