platform/upstream/enlightenment.git
2 years agoe_devicemgr: create tizen_input_devices only for first bound seat & manager 40/284140/1
duna.oh [Thu, 10 Nov 2022 05:34:33 +0000 (14:34 +0900)]
e_devicemgr: create tizen_input_devices only for first bound seat & manager

If a wayland_client uses ecore_wl library and efl_util API,
it binds two pairs of wl_seat & tizen_input_device_manager.

ecore_wl listens wayland events (ex. device_add/device_remove) and send
requests properly. (ex. tizen_input_device_release)

However efl_util dispatches event queue only when efl_util API is called.
It doesn't send tizen_input_device_release requests and causes resource leaks.

To fix this resource leak,
this patch is to create tizen_input_device resources only for
the first bound wl_seat & first bound tizen_input_devcie_manager
which ecore_wl binds.
efl_util always binds wl_globals after ecore_wl2 binds ones.

Change-Id: I47c741a36c2205e2bde2a630a4b66d3794aa23ef

2 years agoe_devicemgr: fix the memory leak detected by static analysis tool 39/284139/1
duna.oh [Mon, 7 Nov 2022 08:20:01 +0000 (17:20 +0900)]
e_devicemgr: fix the memory leak detected by static analysis tool

Change-Id: I9733fb3941c67d6975f2d1572e0ecebacb86db63

2 years agoe_devicemgr: add error logs when failing to alloc structure 38/284138/1
duna.oh [Mon, 7 Nov 2022 08:22:08 +0000 (17:22 +0900)]
e_devicemgr: add error logs when failing to alloc structure

Change-Id: I27ac7b2f3e47be7e963f090130a575d388bcd43e

2 years agoe_devicemgr: add data struct for tizen_input_device_manager 77/283877/2
duna.oh [Fri, 4 Nov 2022 10:15:47 +0000 (19:15 +0900)]
e_devicemgr: add data struct for tizen_input_device_manager

E_Devicemgr_Input_Device_Mgr_Data is a data for tizen_input_device_manager.
This has a Eina_List of E_Device_Input_Device_User_Data and manager's resource.
When a client unbinds tizen_input_device_manager, mgr_data iterates a list
of device_user_data and cleans up device's resource.

Change-Id: I7fa0650a1cf25b177b2a1a88dc6e1b8f80ad4409

2 years agoRevert "e_client: modified code for e_client_unmaximize" 34/283934/1 accepted/tizen/unified/20221109.171116
Doyoun Kang [Sun, 6 Nov 2022 01:28:55 +0000 (10:28 +0900)]
Revert "e_client: modified code for e_client_unmaximize"

This reverts commit 51cba1f7c4c8cf2fa3508d191c2ba54e9dc3d5ec.

Change-Id: I1960204996f99374ac5b7e725b9462afc3505363

2 years agoviewport: Do not use evas_object_event_callback_del() 29/283929/1
Seunghun Lee [Mon, 7 Nov 2022 08:18:13 +0000 (17:18 +0900)]
viewport: Do not use evas_object_event_callback_del()

For short, the `evas_object_event_callback_del_full()` should be used
instead of `evas_object_event_callback_del()`.

The crash happened as the backtrace shown below, and it seems that the
crash was due to the misuse of `evas_object_event_callback_del()`.
This patch also log more about the viewport just in case the patch may
not fix the crash.

backtrace:
(gdb)bt

  #0  0x000d6e98 in e_object_is_del (obj=0x6) at /usr/src/debug/enlightenment-0.20.0/src/bin/e_object.c:106
  #1  0x00086088 in _e_comp_wl_viewport_cb_parent_show(data=0x1d50c70, e=<optimized out>, obj=<optimized out>, event_info=<optimized out>) at /usr/src/debug/enlightenment-0.20.0/src/bin/e_comp_wl_viewport.c:572
  #2 0xb5d91df6 in _eo_evas_object_cb (data=0x207e4c8, event=<optimized out>) at /usr/src/debug/efl-1.25.1/builddir/../src/lib/evas/canvas/evas_callbacks.c:181
  ...

The evas_object_event_callback_del() is to remove the most recently
added callback from the object. Having used it in `e_comp_wl_viewport.c`
could have caused unintentional removal of another callback depending on
the timing of creation and destruction of several viewports, and this
eventually could result in a crash.

I couldn't find the clear evidence that this really led the crash, but
let me give you an example what situation can make this crash.

1. There are 2 viewports created with the same parent. So, 2 viewports
would add a callback for its own. I will call both viewport as `A` and
`B`, and `A` is created before `B`.

2. The viewport `A` try to delete its callback from the parent evas
object because of the change of subsurface parent by calling
`evas_object_event_callback_del()`.  And this will unintentionally
delete the callback of `B`, not `A` because the callback of `B` is the
most recently added one.

3. Let's say the viewport `A` gets deleted by `tizen_viewport.destroy`,
and it does not call the `evas_object_event_callback_del_full()` because
`viewport->epc` must already be null.  And now, the data for the
callback `A` becomes freed memory, but the callback `A` is still in
callback list of parent object.

4. Event if the viewport `B` gets deleted by `tizen_viewport.destroy`,
it won't be able to remove any callbacks with
`evas_object_event_callback_del_full()` because the callback of `B` has
already been removed by the process 2.

As I mentioned, I'm not sure this really led the crash but I believe and
hope that this will fix the crash.

Change-Id: Ie92900df80d2351bbf9054fd3c4e9e6184b67d57

2 years agoRevert "viewport: Cleanup setting parent and more log" 28/283928/1
Seunghun Lee [Mon, 7 Nov 2022 08:17:09 +0000 (17:17 +0900)]
Revert "viewport: Cleanup setting parent and more log"

This reverts commit 3cd0f29865d9508cc511228f08fffc64ff46bfbd to re-write
commit message.

Change-Id: I9937d1050fba4cb1052d6a3b478e6bdc183ca70d

2 years agoviewport: Cleanup setting parent and more log 04/283804/1
Seunghun Lee [Wed, 2 Nov 2022 08:50:12 +0000 (17:50 +0900)]
viewport: Cleanup setting parent and more log

The crash happened as the backtrace shown below but I couldn't find the
cause. So, this patch logs more about viewport to help find the cause of
problem next time if it will happen again.

backtrace:
 (gdb)bt
 #0  0x000d6e98 in e_object_is_del (obj=0x6) at /usr/src/debug/enlightenment-0.20.0/src/bin/e_object.c:106
 #1  0x00086088 in _e_comp_wl_viewport_cb_parent_show (data=0x1d50c70, e=<optimized out>, obj=<optimized out>, event_info=<optimized out>) at /usr/src/debug/enlightenment-0.20.0/src/bin/e_comp_wl_viewport.c:572
 #2  0xb5d91df6 in _eo_evas_object_cb (data=0x207e4c8, event=<optimized out>) at /usr/src/debug/efl-1.25.1/builddir/../src/lib/evas/canvas/evas_callbacks.c:181
 ...

Change-Id: I7be6210c608ca02d55d59a6c65c60a8bb04873ba

2 years agoe_policy_wl: calculate aspect ratio including header and footer height 26/283726/1
Junseok Kim [Thu, 6 Oct 2022 03:10:45 +0000 (12:10 +0900)]
e_policy_wl: calculate aspect ratio including header and footer height

There is a windows that have their own decorator that header and footer.
And the window need to resize using aspect ratio to the content except the fixed decorator size.

for those windows, added aux hint to set their header and footer height and adjusted to calculate aspect ratio resize.
When the client sets the aux hint, then the enlightenment calculates aspect ratio without header and footer height.

aux hint keys:
wm.policy.win.resize.header_height
wm.policy.win.resize.footer_height

aux hint values:
unsigned integer

Change-Id: I033c73197951c975145d2ecaa00bdc96e4e8f798

2 years agoe_policy_wl: tizen_policy version up to 11 14/283614/2 accepted/tizen/unified/20221102.172739
Doyoun Kang [Mon, 31 Oct 2022 07:26:47 +0000 (16:26 +0900)]
e_policy_wl: tizen_policy version up to 11

We update tizen_policy version to 11 for supporting desktop window type.

Change-Id: Ib630f8f3789137a5061d072459bbc6e4a3613e33

2 years agoe_desk: do not deactive hwc when desk zoom is set 13/283613/1
Changyeon Lee [Tue, 25 Oct 2022 04:35:11 +0000 (13:35 +0900)]
e_desk: do not deactive hwc when desk zoom is set

deactive of hwc is not needed because hwc does not use device state
when pp of hwc is set or desk_zoom enable state of client is set.

this patch is for supporting hwc in case of desk_zoom of client is
not appllied.

Change-Id: I7c9b04ff2559d8240373d3a334c16f37f137d905

2 years agoe_client: add APIs for getting desk_zoom enable state 78/283578/1
Doyoun Kang [Thu, 27 Oct 2022 09:32:01 +0000 (18:32 +0900)]
e_client: add APIs for getting desk_zoom enable state

We add APIs to get/set the enable state whether the ec is under running desk_zoom or not.
- void e_client_desk_zoom_enable_set(E_Client *ec, Eina_Bool enable)
- Eina_Bool e_client_desk_zoom_enable_get(E_Client *ec)

Change-Id: I733d84fb0b96066577029aabe4724e9ce7e0ea09

2 years agoe_client: use e_client_frame_geometry_set in e_client_fullscreen 97/283497/1
Doyoun Kang [Thu, 27 Oct 2022 08:34:50 +0000 (17:34 +0900)]
e_client: use e_client_frame_geometry_set in e_client_fullscreen

We changed code to use e_client_frame_geometry_set() instead of evas_object_geometry_set()
to move and resize window synchronously in e_client_fullscreen().

Change-Id: I9cf3385cbceeccad2b25f3aaba4b8a71e3140625

2 years agoe_policy: add E_POLICY_HOOK_CLIENT_AUX_HINT_CHANGED hook 91/283391/1
Doyoun Kang [Tue, 25 Oct 2022 10:37:44 +0000 (19:37 +0900)]
e_policy: add E_POLICY_HOOK_CLIENT_AUX_HINT_CHANGED hook

Change-Id: I9a824d37f055ccd7161d87aba00ad5579140f1c1

2 years agoRevert "keyrouter: replace eina_safety error log with e_log" 54/283354/1
duna.oh [Tue, 25 Oct 2022 04:48:25 +0000 (13:48 +0900)]
Revert "keyrouter: replace eina_safety error log with e_log"

This reverts commit c82b257197071559463b026880fdd6c912e096d3.

Change-Id: I336deac6e0c9334fe3cce7a4949e7fb1f2f963ba

2 years agoRevert "keyrouter: simplify chained if-statements with AND operator" 53/283353/1
duna.oh [Tue, 25 Oct 2022 04:48:12 +0000 (13:48 +0900)]
Revert "keyrouter: simplify chained if-statements with AND operator"

This reverts commit 672574a5482de9419e372108762b1d9983df171c.

Change-Id: I9cc0e4a92d9681d01fb44d702e6db2a60f04e3ec

2 years agoRevert "keyrouter: add pname(process name) of client in logs" 52/283352/1
duna.oh [Tue, 25 Oct 2022 04:47:53 +0000 (13:47 +0900)]
Revert "keyrouter: add pname(process name) of client in logs"

This reverts commit 51b8d115c91919115b116bcf5275a9a150d70fde.

Change-Id: I35af6f27219d7fb230b0064315b91d4bb5c4bda0

2 years agoe_client: modify code to call maximize_pre/unmaximize_pre callback 62/283262/1
Doyoun Kang [Fri, 21 Oct 2022 05:57:37 +0000 (14:57 +0900)]
e_client: modify code to call maximize_pre/unmaximize_pre callback

There is a bug that the maximize_done/unmaximize_done evas_object_smart_callback
doesn't call after calling maximize_pre/unmaximize_pre evas_object_smart_callback
in some case.

This resolve this problem

Change-Id: I6d30dc2897b441574c92f46d68e77e3501e412b1

2 years agoe_msg: added explicit type conversion to limit length 89/283189/2
Junseok Kim [Mon, 17 Oct 2022 06:03:42 +0000 (15:03 +0900)]
e_msg: added explicit type conversion to limit length

Change-Id: I5f448d8e88b385de627b6c4c782da5ae7cd41222

2 years agokeyrouter: add pname(process name) of client in logs 86/283186/1
duna.oh [Tue, 18 Oct 2022 01:45:44 +0000 (10:45 +0900)]
keyrouter: add pname(process name) of client in logs

Change-Id: I141430ee891e49a953c2ab11a2c52c34b4b8ccfe

2 years agokeyrouter: simplify chained if-statements with AND operator 85/283185/1
duna.oh [Tue, 18 Oct 2022 01:10:24 +0000 (10:10 +0900)]
keyrouter: simplify chained if-statements with AND operator

Change-Id: I4117fcb3fae1284906b30ce6d657e47b7efc3e22

2 years agokeyrouter: replace eina_safety error log with e_log 84/283184/1
duna.oh [Tue, 18 Oct 2022 01:00:19 +0000 (10:00 +0900)]
keyrouter: replace eina_safety error log with e_log

provide more logs about the client which is exclusively
grabbing the key.

Change-Id: Ia4e14735cb740110204123fc3a0f9766be279c96

2 years agoe_client: modified code for e_client_unmaximize 57/283157/2
Doyoun Kang [Wed, 19 Oct 2022 06:28:31 +0000 (15:28 +0900)]
e_client: modified code for e_client_unmaximize

We changed code to use e_client_util_move_resize_without_frame() instead of
e_policy_visibility_client_defer_move().

An e_client_util_move_resize_without_frame() has a functionality for synchronizing
move and resize.

Change-Id: Idb7d9eee65f0f13fa579b835c8383f1e08e8b99e

2 years agoe_comp_object: add checking null for reducing error log 17/283117/1
Changyeon Lee [Mon, 17 Oct 2022 03:32:59 +0000 (12:32 +0900)]
e_comp_object: add checking null for reducing error log

image object and shadow object can be null because it is created
in intercept show callback.

Change-Id: If83bba9c35abeca0d71d59a5f9416717e2f926e3

2 years agoe_comp_object: change log of mismatch between pixmap and frame size to info level 16/283116/1
Changyeon Lee [Mon, 17 Oct 2022 07:02:06 +0000 (16:02 +0900)]
e_comp_object: change log of mismatch between pixmap and frame size to info level

pixmap and frame size can be misatch for reducing memory in case of video subsurface

Change-Id: I8dffb3cd68b814af26b7d3283eeae257316935fc

2 years agoe_hwc_window: remove error log in case not implemented case 15/283115/1
Changyeon Lee [Mon, 17 Oct 2022 03:29:51 +0000 (12:29 +0900)]
e_hwc_window: remove error log in case not implemented case

Change-Id: I62666c3542ea0f981b1232f9c9ad8845cd8df766

2 years agoe_pixmap: changed eina_safety to if clause to reduce error log 42/283042/1
Junseok Kim [Fri, 14 Oct 2022 07:46:39 +0000 (16:46 +0900)]
e_pixmap: changed eina_safety to if clause to reduce error log

Change-Id: I5f78bda6bc244ec69eef254ede83c2d8db75a603

2 years agoe_client: changed eina_safety to if clause to reduce log 41/283041/1
Junseok Kim [Fri, 14 Oct 2022 02:06:53 +0000 (11:06 +0900)]
e_client: changed eina_safety to if clause to reduce log

Change-Id: I48f5467c8e318d21798bf6d21888f79b8dffb345

2 years agoe_policy_visibility: fix bug for checking a visible state of transient_child 75/282875/2
Doyoun Kang [Wed, 12 Oct 2022 23:20:18 +0000 (08:20 +0900)]
e_policy_visibility: fix bug for checking a visible state of transient_child

There was a bug that the parent window was uniconified even though its child was not visible.
This was because that the child was uniconic state but its visibility was unknown state.
(this means it was not calculated visibility and it was not shown yet).

To resolve this problem, we add code to check whether child's visibility is unknown
in _e_policy_check_transient_child_visible function.

Change-Id: I80604558afa86fac020e0681a3bcdb8adb75bb84

2 years agoe_client: restore the code for resizing mode 74/282874/1 accepted/tizen_7.0_unified_hotfix tizen_7.0_hotfix accepted/tizen/7.0/unified/hotfix/20221116.110738 accepted/tizen/unified/20221013.100053 accepted/tizen/unified/20221013.130851 tizen_7.0_m2_release
Junseok Kim [Tue, 4 Oct 2022 10:14:57 +0000 (19:14 +0900)]
e_client: restore the code for resizing mode

There was a bug that the resizing didn't uses the mode that client requested.
It caused by resize_mode did not applied to ec->resize_mode.
For fix it, restore resize_mode code.
And accoding to the policy, the Non-floating window can also resize with interactive resize.
So, removed checking the floating window from legacy code.

Change-Id: I750e4069701de0b144faf1a84cc3b56f5489dcf6

2 years agowinfo: add -desk test option for iconify_toggle 25/282825/1
Doyoun Kang [Wed, 12 Oct 2022 01:39:03 +0000 (10:39 +0900)]
winfo: add -desk test option for iconify_toggle

Change-Id: I8d1ff2c87b6d8b1123b84bb8ec73ba126a80dab5
Usage: winfo -desk iconify_toggle

2 years agoe_desk: add new API for getting iconified list 24/282824/1
Doyoun Kang [Wed, 12 Oct 2022 01:37:11 +0000 (10:37 +0900)]
e_desk: add new API for getting iconified list

E_API Eina_List * e_desk_visible_client_iconified_list_get(E_Desk *desk)

Change-Id: I86540290f030454be702813a927b4bb652706ad7

2 years agoe_comp_object: reference front buffer while render update is locked 67/282767/2
Changyeon Lee [Thu, 6 Oct 2022 11:06:46 +0000 (20:06 +0900)]
e_comp_object: reference front buffer while render update is locked

front buffer should be reference for preventing tearing buffer

Change-Id: I449802b815120a85dcf8d05f2d54a07f80099893

2 years agoe_comp_object: change e_comp_object_render_update_lock/unlock/lock_get to E_API 66/282766/2
Changyeon Lee [Thu, 6 Oct 2022 03:35:25 +0000 (12:35 +0900)]
e_comp_object: change e_comp_object_render_update_lock/unlock/lock_get to E_API

Change-Id: I85fe96e26c1257870a76c2ae40fc380b9def6a7b

2 years agoe_pointer: set e_pointer's object only when object is changed 64/282764/3
duna.oh [Tue, 11 Oct 2022 01:06:54 +0000 (10:06 +0900)]
e_pointer: set e_pointer's object only when object is changed

Change-Id: I050179a6450b831507b8176b5c4362cf1cfd691a

2 years agoadd E_POINTER_HOOK_SHOW/HIDE hooks 63/282763/1
duna.oh [Tue, 11 Oct 2022 01:00:10 +0000 (10:00 +0900)]
add E_POINTER_HOOK_SHOW/HIDE hooks

Change-Id: I919eac923e0e87e6d8daaf1e9c531d35b1d728b4

2 years agoe_comp_object: add log when render update lock enabled/disabled 31/282631/1
Changyeon Lee [Tue, 4 Oct 2022 03:03:25 +0000 (12:03 +0900)]
e_comp_object: add log when render update lock enabled/disabled

Change-Id: Ia5e77f3d4be851a2ac57df18f413ad3e5bb139ed

2 years agoe_hwc: add log when norender enabled/disabled 30/282630/1
Changyeon Lee [Tue, 4 Oct 2022 02:55:19 +0000 (11:55 +0900)]
e_hwc: add log when norender enabled/disabled

Change-Id: Ib2b39c367614810cfa40326a1c741611b4505519

2 years agoe_policy_wl: support interactive_move/resize_done event of tizen_policy 73/282273/1
Doyoun Kang [Sat, 24 Sep 2022 04:06:33 +0000 (13:06 +0900)]
e_policy_wl: support interactive_move/resize_done event of tizen_policy

Change-Id: Iff61f5cee2b2e214188780112587822a3264c7a5

2 years agoe_comp_wl: reference gbm_bo until imported tbm_surface is destroyed 00/282200/1 accepted/tizen/unified/20220929.080320
Changyeon Lee [Wed, 28 Sep 2022 03:51:40 +0000 (12:51 +0900)]
e_comp_wl: reference gbm_bo until imported tbm_surface is destroyed

imported tbm_surface can have invalid buffer handle
if buffer handle of gbm_bo is closed when gbm_bo is destroyed.

we do not destroy gbm_bo until imported tbm_surface is destroyed.

Change-Id: Ibbfbeb84aa8e6c17af6471e64571f7dd9f2423e5

2 years agoe_info_server: support tbm_surface which is not wayland-tbm resource in dump buffers 99/282199/1
Changyeon Lee [Wed, 28 Sep 2022 03:45:50 +0000 (12:45 +0900)]
e_info_server: support tbm_surface which is not wayland-tbm resource in dump buffers

Change-Id: Ib258db8a7b6339b2de8ef8a214fef485cccc5ee5

2 years agoe_comp_wl: move a code checking 'cur_mouse_action' value 94/281794/1
duna.oh [Wed, 21 Sep 2022 01:38:01 +0000 (10:38 +0900)]
e_comp_wl: move a code checking 'cur_mouse_action' value

If 'cur_mouse_action' is not null, E20 should not send events to clients.
So its value should be checked right before sending wayland events.
This patch allows the cursor to follow mouse movement when user is doing
mouse action such as resizing/moving windows).

Change-Id: Ia53521b1bd4d07400dba8280fad8cde3ea7cf9e4

2 years agoe_desk: add E_Desk_Zoom_Animating_Type information 88/281688/1 accepted/tizen/unified/20220921.170518
Doyoun Kang [Tue, 20 Sep 2022 09:06:52 +0000 (18:06 +0900)]
e_desk: add E_Desk_Zoom_Animating_Type information

There was a bug that the disable zoom was not working while running zoom animation
first time.

We add E_Desk_Zoom_Animating_Type information to check an animation type which is
running currently.
For this information, we can control enable/disable zoom animation efficiently.

Change-Id: Ibced55bd644759515679ae4894bc55f326613302

2 years agoe_desk: fix build warning 92/281592/1
Doyoun Kang [Tue, 20 Sep 2022 04:39:21 +0000 (13:39 +0900)]
e_desk: fix build warning

Change-Id: I1e91e5bc47ba02974a7abebc964340a61b54e2a4

2 years agosupport feature - iconify_all and restore_all in desk window 01/281401/1
Doyoun Kang [Fri, 16 Sep 2022 09:31:24 +0000 (18:31 +0900)]
support feature - iconify_all and restore_all in desk window

We support new feature to iconify/restore all visible windows in the desk.
For this we add new APIs as below.

  - void e_desk_visible_client_iconify_all(E_Desk *desk)
  : Iconify all visible windows in the desk except desktop type or user_skip_winlist set window.

  - void e_desk_visible_client_restore_all(E_Desk *desk)
  : Uniconify all visible windows which were iconified by iconify all windows request.

If a new window is activated after running iconify all windows, then the iconified window list is cleared.
So, there is no window which is uniconified when an user reqeust to restore window.

Change-Id: Iddaa8ee5f4680a580e6eade9060b946d144f476a

2 years agoe_policy_wl: doesn't send iconic state change event to unmapped window 25/281225/1 accepted/tizen/unified/20220915.173220 accepted/tizen/unified/20220916.022108 accepted/tizen/unified/20220916.022146
Doyoun Kang [Wed, 14 Sep 2022 08:40:48 +0000 (17:40 +0900)]
e_policy_wl: doesn't send iconic state change event to unmapped window

When the window's visibility is changed to fully-obscured, then e sends
an iconic state change event to the window and its children.
But there was a bug that the child window which was not mapped didn't render
because its internal state was iconic.

So, we change code not to send the iconic state change event to unmapped window.

Change-Id: Ib0c38dd419874af7cf1b8b321a724204d5260cc2

2 years agoe_client: Do not move a window to the center of zone 17/281217/1
Seunghun Lee [Wed, 14 Sep 2022 03:53:18 +0000 (12:53 +0900)]
e_client: Do not move a window to the center of zone

This patch is to fix that sub-surface gets placed wrong position which
is not the position a client wants.

It seems a legacy code of "desktop" window manager to move an
out-of-screen window to the center of zone.

For a desktop window manager, it makes sense because it's window
manager's responsibility to place window appropriately.
Plus, there is no way to move a window except user interacts with window
decoration, e.g, by dragging window title bar. Therefore, the window
manager should at least place movable windows to be visible to a user.

However, in Tizen, it's partly client's responsibility to move its
window, and there exists tizen_position wayland extension for it. So, we
should let clients move its window anywhere even if the position is out
of screen. Some windows like lockscreen already have worked that way
according to the comments which is removed by this patch.

Therefore, this legacy code doesn't make sense when it comes to window
manager for Tizen device environment.

Change-Id: Ia908cf892726a5a9022a1b3061355a0b42c6568a

2 years agorefactoring: use new API instead of exp_iconify.by_client 08/281208/1
Doyoun Kang [Wed, 14 Sep 2022 06:31:30 +0000 (15:31 +0900)]
refactoring: use new API instead of exp_iconify.by_client

Add new API for checking whether the window is iconified by client request or not.
- e_client_is_iconified_by_client

We replace code to use e_client_is_iconified_by_client() API instead of
ec->exp_iconify.by_client directly.

Change-Id: I823d3202d55dd8bc7ae220a016fafde544826487

2 years agoe_policy_visibility: include tiles of internal EC when getting the below activity... 50/281150/1
Junseok Kim [Wed, 17 Aug 2022 05:38:11 +0000 (14:38 +0900)]
e_policy_visibility: include tiles of internal EC when getting the below activity clients

There was an issue that below window receives pre-visibility although they're already obscured by internal ec.

Let there're 3 windows as below,
winA: partial sized, opaque
winB: full sized, opaque, internal
winC: partial sized, opaque

When the winA hides, the below uniconify logic runs to show below windows.
Expected situation is no windows are uniconified that winB is already shown,
but the winC gets pre-visibility because of the internal ec didn't included tile calculate.

For fix this problem, include tiles of the internal EC when calculate below activity clients.

Change-Id: I6bdd1b63b5ca243a8045c574ec7331a8e838e166

2 years agoe_client: add e_client_transform_core_direct_render_set 02/281002/1 accepted/tizen/unified/20220913.175634
Changyeon Lee [Wed, 7 Sep 2022 11:09:19 +0000 (20:09 +0900)]
e_client: add e_client_transform_core_direct_render_set

if direct_render_set is enabled, use direct_render of e_map

Change-Id: I736fa5a1fc63848e7f8e140714f346d590483e69

2 years agoe_map: add e_map_new_with_direct_render 01/281001/1
Changyeon Lee [Wed, 7 Sep 2022 11:06:14 +0000 (20:06 +0900)]
e_map: add e_map_new_with_direct_render

Change-Id: I1ba642f4008ad5d9efc71c622824004ed6f6d38d

2 years agoe_explicit_sync: fix wrong setting of explicit_sync_buffer_release 00/281000/1
Changyeon Lee [Wed, 7 Sep 2022 04:00:49 +0000 (13:00 +0900)]
e_explicit_sync: fix wrong setting of explicit_sync_buffer_release

e_explicit_sync_surface_commit is called before e_comp_wl_surface_commit
after this patch e8b6ec84e244604182a71a78776991ca3018c63e

explicit_sync_buffer_release should be set to pending buffer

Change-Id: If461fcf678290c7faebc0353d1cc6368d4e88eed

2 years agoe_desk: remove e_map_util_object_move_sync_set in _e_desk_object_zoom 68/280968/1
Doyoun Kang [Wed, 7 Sep 2022 06:30:26 +0000 (15:30 +0900)]
e_desk: remove e_map_util_object_move_sync_set in _e_desk_object_zoom

There was a bug that the enlightenment fell in infinite loop when the zoom was running in some case.
- Pre condition: zoom is enabled
- Reproduce: Keyboard is shown / hidden with moving effect
Then, the infinite loop is occured.

To resolve this, we remove code which call the e_map_util_object_move_sync_set in _e_desk_object_zoom.

Change-Id: I93ceabccfaa7ce0fdd39da31c4865e9a9181610d

2 years agoe_info_server: Erase unreachable code 77/280777/1 accepted/tizen/unified/20220908.124826
Junkyeong Kim [Mon, 5 Sep 2022 02:17:00 +0000 (11:17 +0900)]
e_info_server: Erase unreachable code

Only EVAS_RENDER_BLEND and EVAS_RENDER_COPY are used.
Other enum types were deprecated so erase deprecated case.

Change-Id: I270bea7481c4133dba570b485b04e6f36c439c3c
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_comp_object: Delay move when move_after_resize is true 18/280718/1
Doyoun Kang [Fri, 2 Sep 2022 09:57:32 +0000 (18:57 +0900)]
e_comp_object: Delay move when move_after_resize is true

This patch tries to resolve the problem that sub-surface can't be moved
at the time of sub-surface launch.

The problem is that, in _e_comp_intercept_move(), given (x,y) position
can be lost if move_after_resize flag is true, and it eventually makes
the comp_object not being moved to this position permanently.

The scenario from which the problem was discovered is as follow.

Creation of surface -> Creation of xdg_toplevel -> Apply maximize
policy -> Resize surface -> move_after_resize = true -> Creation of
subsurface -> wl_subsurface.set_position() -> wl_surface.commit()
-> evas_object_move() -> _e_comp_intercept_move() -> (*) if
(cw->ec->move_after_resize) return -> Buffer size changes -> Unset
move_after_resize

Change-Id: Ibffa65dcb009283071aee6afa6e9f461f502162d

2 years agoviewport: Apply viewport when parent gets visible 33/280533/1 accepted/tizen/unified/20220902.125439 submit/tizen/20220902.060013
Seunghun Lee [Wed, 24 Aug 2022 09:47:33 +0000 (18:47 +0900)]
viewport: Apply viewport when parent gets visible

Since calculating viewport is dependent on parent's buffer, viewport
should be applied when parent object gets visible.

Change-Id: I36689dd0e7f402154ab317e317b8a540524ed30a

2 years agoviewport: Apply viewport when parent resized 32/280532/1
Seunghun Lee [Wed, 24 Aug 2022 08:14:45 +0000 (17:14 +0900)]
viewport: Apply viewport when parent resized

This patch is to resolve the issue that geometry of window applied by
viewport couldn't be updated when the size of its parent changed.

Updating geometry when parent gets resized makes sense because
calculating geometry is dependent on parent size.

Change-Id: I621ae16ca0eeadd381207119746d12249ffd92ee

2 years agoe_client: modify code to handle a client_type 84/280484/1
Doyoun Kang [Tue, 30 Aug 2022 09:00:33 +0000 (18:00 +0900)]
e_client: modify code to handle a client_type

Change-Id: If6a7a2a243d5b918f88cdfda0dc3960834436482

2 years agoe_client: add E_Iconified_Type 93/280393/1 accepted/tizen/unified/20220830.032644 submit/tizen/20220829.110346
Doyoun Kang [Mon, 29 Aug 2022 09:51:45 +0000 (18:51 +0900)]
e_client: add E_Iconified_Type

New features for handling the iconic window's iconified type.
- E_Iconified_Type enumeration
- E_API void e_client_iconified_type_set(E_Client *ec, E_Iconified_Type type);
- E_API E_Iconified_Type e_client_iconified_type_get(E_Client *ec);

Change-Id: I65204283ad2704addce2b3628227cf6aa679ca29

2 years agoe_policy_wl: support desktop type window 49/280349/1
Doyoun Kang [Sun, 28 Aug 2022 23:11:18 +0000 (08:11 +0900)]
e_policy_wl: support desktop type window

Change-Id: Ib77bfd12ba4268a7f102779ec0fba8597694e437

2 years agoe_hwc_window: override client type when render update lock is set 47/280347/2 accepted/tizen/unified/20220829.062611 submit/tizen/20220829.021631
Changyeon Lee [Wed, 24 Aug 2022 09:14:57 +0000 (18:14 +0900)]
e_hwc_window: override client type when render update lock is set

if render update lock is set, buffer of client should not be updated
in display.
but hwc is designed client should update latest buffer in display.

Change-Id: I4550602f910db3486590bfa2ea53551e43011280

2 years agoe_comp_object: introduce e_comp_object_render_update_lock/unlock 46/280346/2
Changyeon Lee [Tue, 16 Aug 2022 11:05:57 +0000 (20:05 +0900)]
e_comp_object: introduce e_comp_object_render_update_lock/unlock

if e_comp_object_render_update_lock is called, enlightenment does not
update evas image object in job callback of compositing(_e_comp_cb_update)
until render_update_lock count is decreased zero.

this api does not prevent updating evas image object when
e_comp_object_dirty is directly called.

Change-Id: Ic0cec29a9c43ed9659b14e5bac88e276e66d5642

2 years agoe_devicemgr: modify the order of DEVICE_DEL event handler 41/280341/1
duna.oh [Fri, 26 Aug 2022 06:41:41 +0000 (15:41 +0900)]
e_devicemgr: modify the order of DEVICE_DEL event handler

e_devicemgr and e_comp_screen, both handles the DEVICE_DEL event.
When e_devicemgr's handler is called, it removes the device
from the device list and set last_device_ptr NULL.
Since e_comp_screen is called afterward, the device is already
removed.
This patch reorders the event handler.

Change-Id: I479657db2600a6fd490cc6c7ff386914990baf49

2 years agodevicemgr: fix the bug that generating pointer should update 'mouse' state, not ... 82/280282/1
duna.oh [Mon, 27 Jun 2022 02:54:57 +0000 (11:54 +0900)]
devicemgr: fix the bug that generating pointer should update 'mouse' state, not 'touch'.

Change-Id: Ia8fe207e6646b2732797f49a56b7be0a761d4b4e

2 years agoe_info: add input_log_enable option 68/280168/1
duna.oh [Wed, 24 Aug 2022 10:12:59 +0000 (19:12 +0900)]
e_info: add input_log_enable option

set input_log_enable on/off
0: off, 1: off (default: on)

Change-Id: I4f5ee193508abd273af0bfc17fca2e72a6eedf3e

2 years agoe_comp_wl: clean up code 96/280096/1 accepted/tizen/unified/20220824.135541 submit/tizen/20220824.005504
Doyoun Kang [Mon, 22 Aug 2022 09:23:05 +0000 (18:23 +0900)]
e_comp_wl: clean up code

We just changed a name of internal values to w, h from x, y in _e_comp_wl_evas_cb_resize.
(no logic change)

Change-Id: Ied861f3035d34f2b83a4a05bfb79858d33086953

2 years agorefactor code for maximizing window 95/280095/1
Doyoun Kang [Mon, 22 Aug 2022 09:16:37 +0000 (18:16 +0900)]
refactor code for maximizing window

Change-Id: I8436542def3bf74ef2231305b5e6eb85d5afe4c8

2 years agoe_client: remove "fullscreen" evas_object_smart_callback in _e_client_maximize 35/279835/1 accepted/tizen/unified/20220818.210825 submit/tizen/20220818.075750
Doyoun Kang [Thu, 18 Aug 2022 06:42:05 +0000 (15:42 +0900)]
e_client: remove "fullscreen" evas_object_smart_callback in _e_client_maximize

The "fullscreen" callback should be called only e_client_fullscreen_set.
If we need a callback later, then we can add evas_object_smart_callback with another name
such as "maximize_fullscreen".

Change-Id: I03074f3463775418cc46798c2bf35e7dcae55afb

2 years agoe_client: refactor _e_client_maximize function 34/279834/1
Doyoun Kang [Thu, 18 Aug 2022 06:39:38 +0000 (15:39 +0900)]
e_client: refactor _e_client_maximize function

change code to use e_client_frame_geometry_set() instead of evas_object_geometry_set()

Change-Id: I74d156fd409c84080843dcf52ee2f092a619e01b

2 years agoe_output: set video_to_primary to true in screenmirroring capture 71/279771/1
Junkyeong Kim [Thu, 11 Aug 2022 08:10:00 +0000 (17:10 +0900)]
e_output: set video_to_primary to true in screenmirroring capture

if tdm stream capture is not supported,
set video_to_primary true to get video image for screenmirroring capture.

Change-Id: I714aeab929c9a79067fcc46a4fcd7849cc5e1cdc
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_dnd, e_slot: fix misuse of hash function 99/279199/1
Junseok Kim [Tue, 31 May 2022 02:48:36 +0000 (11:48 +0900)]
e_dnd, e_slot: fix misuse of hash function

e_slot.c: _e_slot_g->hash_slot_objs misuses eina_hash_pointer_new but actual key was int.
e_dnd: _drop_handlers_responsives misuses eina_hash_int32_new but actual key was uintptr_t.
due to pointer size and int size mismatch in 64bit system, these codes can makes some problem.
this patch need for prevent future problem.

please refer: c20f36275df9536520509fe52d9e6faeeaffa67d

Change-Id: I04ad1b28da2fa5cbeff3cb7c3fdcde037f013c9a

2 years agoe_xdg_shell: modify code to remove oldest configure resource 80/279080/1 accepted/tizen/unified/20220802.144807 submit/tizen/20220802.023045
Doyoun Kang [Tue, 2 Aug 2022 01:25:03 +0000 (10:25 +0900)]
e_xdg_shell: modify code to remove oldest configure resource

There is a possibility that the size of the configure resource is increased continuously
if an app doesn't send configure_ack reqeust after it get the configure event.
To prevent continuous resource size increase, we remove the oldest configure resource
from the waiting configure_ack list if the number of list exceeds a specific number.

Change-Id: Ia882cf5ea5be06574822ff4b3fdb627af6db70ab

2 years agoe_process: fix bug not changing action to no visible windows 60/278860/3 accepted/tizen/unified/20220728.131650 submit/tizen/20220727.055337
Doyoun Kang [Wed, 27 Jul 2022 00:27:30 +0000 (09:27 +0900)]
e_process: fix bug not changing action to no visible windows

There was a bug that the action of process was not changed to E_PROCESS_ACT_NO_VISIBLE_WINDOWS
when all windows of the process were hidden.
This resolve this problem.

Change-Id: I488ce2e5cf9b5fe3fe6c702dd2f490243559328f

2 years agoe_hwc_window_queue: set destroy notify only when destroy listener is added
Changyeon Lee [Wed, 27 Jul 2022 03:00:48 +0000 (12:00 +0900)]
e_hwc_window_queue: set destroy notify only when destroy listener is added

for checking whether destroy listener is added,
hwc_window_queue checks whether destroy notify is set.
destroy notify should be set only when destroy listener is added.

Change-Id: Ifb9b71bd9b926f1432c816e8f6eb3e97dfd17435

2 years agoe_comp_wl_tizen_hwc: send tizen_hwc_commit_feedback in hwc planes policy
Changyeon Lee [Tue, 26 Jul 2022 10:53:50 +0000 (19:53 +0900)]
e_comp_wl_tizen_hwc: send tizen_hwc_commit_feedback in hwc planes policy

tizen_hwc_commit_feedback cannot be supported in hwc planes policy
becasue module can update tdm_layer and hwc does not aware it.

this patch send tizen_hwc_commit_feedback and print not supported log
because client wait tizen_hwc_commit_feedback.

Change-Id: I41004c4fb7607182154322abd2942f6045c58a17

2 years agoe_hwc_window_queue: Add missing remove destroy listener in destroy callback 15/278815/1
Changyeon Lee [Tue, 26 Jul 2022 08:38:25 +0000 (17:38 +0900)]
e_hwc_window_queue: Add missing remove destroy listener in destroy callback

fix remove destroy listener after buffer is freed

Change-Id: Ia029c4491fd32f04e9a98a55687d8476555c0984

2 years agoe_hwc_window: clean up indentation 09/278509/1
Changyeon Lee [Fri, 15 Jul 2022 08:11:06 +0000 (17:11 +0900)]
e_hwc_window: clean up indentation

Change-Id: I077e095aa59922840d0d85b47f3de44452f3d0f2

2 years agoe_client: fix code for resizing floating mode window 90/278490/1 accepted/tizen/unified/20220722.031017 submit/tizen/20220721.101438
Doyoun Kang [Thu, 21 Jul 2022 05:41:07 +0000 (14:41 +0900)]
e_client: fix code for resizing floating mode window

There was a bug that the floating mode window resized invalid when the target was rotated.
This patch resolve this problem.

Change-Id: I39b4a1f4c94e8a782a7117c7c26075aa1a25d1ec

2 years agoe_info_client: erase unused variable 73/278473/1
Junkyeong Kim [Thu, 21 Jul 2022 02:37:32 +0000 (11:37 +0900)]
e_info_client: erase unused variable

Change-Id: I2e4a60c39818d7c022fe3ebe073cbc38231e512a
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_client: add e_client_resize_object_create_cb function 97/278397/1
Doyoun Kang [Wed, 20 Jul 2022 05:02:21 +0000 (14:02 +0900)]
e_client: add e_client_resize_object_create_cb function

This supports e's module to make a customized resize object.
If the E_Client_Resize_Object_Create_Cb is set by e's module, then it's up to the module
to make a resize object. In this case, e doesn't make a default resize object.

Change-Id: I79612a2e4e1e2130a5c6be2cd2178a92cba5b1b7

2 years agoe_config/e_client: support an image object for the resize object 69/278369/1
Doyoun Kang [Tue, 19 Jul 2022 07:30:16 +0000 (16:30 +0900)]
e_config/e_client: support an image object for the resize object

We added code to be able to change the resize object to an image as well as a rectangle.

If an user wants to change the resize object to the customized image, then user has to
set e_config's value as below.
- resize_object.type : 1  (0:rectangle, 1:image)
- resize_object.image_path : image path

FYI, the default resize object is a rectangle. And if the image object is invalid,
then enlightenment makes a resize object to a default rectangle.

Change-Id: Ic5cd01684dea11323b55f639a93850c30c6f2b69

2 years agoRevert "e_comp_object: fix dangling pointer of content object" 65/278365/1 accepted/tizen/unified/20220721.135044 submit/tizen/20220719.232114
Changyeon Lee [Tue, 19 Jul 2022 11:28:40 +0000 (20:28 +0900)]
Revert "e_comp_object: fix dangling pointer of content object"

This reverts commit 3c67afdbf5ece121e974e140186d584deba4761c.

Change-Id: I6fda62a65f74842278df54540959213de4b507f5

2 years agoe_hwc_windows: fix leak of E_Hwc_Windows_Comp_Info 50/277950/1 accepted/tizen/unified/20220718.140358 submit/tizen/20220715.081431
Changyeon Lee [Fri, 15 Jul 2022 04:53:25 +0000 (13:53 +0900)]
e_hwc_windows: fix leak of E_Hwc_Windows_Comp_Info

there is leak of E_Hwc_Windows_Comp_Info when tbm_surface is null
or tbm_surface_internal_add/set_user_data are failed.

Change-Id: If8236a1ab70a064f34ba5bc9c39dd6c3998d5889

2 years agoe_comp_wl: fix missing e_explicit_sync_commit in case of remote surface 62/277762/1 accepted/tizen/unified/20220714.135400 submit/tizen/20220713.042217
Changyeon Lee [Tue, 12 Jul 2022 07:38:18 +0000 (16:38 +0900)]
e_comp_wl: fix missing e_explicit_sync_commit in case of remote surface

_e_comp_wl_surface_state_commit is not called in case of remote surface
calling e_explicit_sync_commit is moved to _e_comp_wl_surface_cb_commit.

Change-Id: I933b252d306eea75d83c482ceca466cc81885c62

2 years agoe_pointer: fix dangling pointer of evas object 61/277761/1
Changyeon Lee [Mon, 11 Jul 2022 10:19:11 +0000 (19:19 +0900)]
e_pointer: fix dangling pointer of evas object

Change-Id: Ibde34fa391f9e6014532fdaac107370542a0e6a5

2 years agoe_comp_object: fix dangling pointer of content object 60/277760/1
Changyeon Lee [Tue, 12 Jul 2022 01:42:10 +0000 (10:42 +0900)]
e_comp_object: fix dangling pointer of content object

if launchscreen client is changed, new launchscreen client
can have dangling pointer of content object.

1. old launchscreen client set content object(cw->obj)
2. splash refernece content object(splash->obj)
3. launchscreen client is changed,
   new launchscreen client set content object(cw->obj)
4. old launchscreen client is destroyed, content object is deleted
   evas_object_del(cw->obj)
5. in splash off, splash unreference content object(splash->obj)
6. content object is deleted
6. new launchscreen client has dangling pointer

this patch add calling e_comp_object_content_usnet when
launchscreen client is changed.
e_comp_object_content_set/unset use evas_object_ref/unref and
splash use evas_object_del for preventing call twice evas_object_del.

Change-Id: I826d1978ddc4dee764ff830bb941dbdc93ad3ca6

2 years agoe_info: add mouse_accel option 70/277570/1
Junkyeong Kim [Fri, 8 Jul 2022 05:11:20 +0000 (14:11 +0900)]
e_info: add mouse_accel option

make mouse acceleration set/unset option.
0: off, 1: on (default: on)

Change-Id: I2c7503e0b5223dacc5f90e18672ee4908e1955ef
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoe_comp_wl_screenshooter: support tizen_screenshooter interface version 3 77/277477/1 accepted/tizen/unified/20220711.173828 submit/tizen/20220708.090227
Junkyeong Kim [Thu, 23 Jun 2022 12:05:59 +0000 (21:05 +0900)]
e_comp_wl_screenshooter: support tizen_screenshooter interface version 3

support tizen_screeenshooter interface shoot request and use done event.

Change-Id: I94141f12bfb5e4af93b853d402c248251c95de2f
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoresize: fix bug for aspect_ratio resize 31/276631/1 accepted/tizen/unified/20220623.144214 submit/tizen/20220622.080639
Doyoun Kang [Wed, 22 Jun 2022 07:00:20 +0000 (16:00 +0900)]
resize: fix bug for aspect_ratio resize

There was a bug that the aspect_ratio didn't work correctly when the aspect_ratio
was set while creating partial window.
So we change code to set the aspect in e_client_resize_begin().

Change-Id: I8394185c324d0f518ec06950e2b585a9ac20e90b

2 years agoe_xdg_shell_v6: modify code to use valid data type for commit hook 90/276590/1 accepted/tizen/unified/20220622.133938 submit/tizen/20220621.233903
Doyoun Kang [Tue, 21 Jun 2022 10:50:24 +0000 (19:50 +0900)]
e_xdg_shell_v6: modify code to use valid data type for commit hook

Change-Id: I3faa2b05ec61a748293a56ca4d7838f51ca2cfb0

2 years agoe_devicemgr: fix the memory leak of tizen_input_device objects 53/276453/1
duna.oh [Wed, 15 Jun 2022 08:32:24 +0000 (17:32 +0900)]
e_devicemgr: fix the memory leak of tizen_input_device objects

There is a bug that a client doesn't send 'tizen_input_device_destroy' requests,
then tizen_input_device resources would stay undeleted.
This commit cleans up tizen_input_device resources when a client destroys

The tizen_input_device resource should be removed from the list 'dev->resources'
to prevent accessing invalid resource object.

Change-Id: I54cd0212032b60b8e6278207ef495ab806dc6a86

2 years agoe_xdg_shell_v6: change commit handler event to surface commit hook 36/276436/2 accepted/tizen/unified/20220620.030233 submit/tizen/20220617.064720
Junseok Kim [Tue, 14 Jun 2022 23:36:13 +0000 (08:36 +0900)]
e_xdg_shell_v6: change commit handler event to surface commit hook

Change the target event of the surface commit handler from E_EVENT_CLIENT_BUFFER_CHANGE to E_COMP_WL_HOOK_CLIENT_SURFACE_COMMIT.
Previously, because more weight was placed on the buffer, even when the surface commit came,
the xdg surface information was processed only when the buffer attach had occurred before.

However, according to the spec, it is supposed to be processed when a commit comes.
To match this, the target event has been changed to hook that E_COMP_WL_HOOK_CLIENT_SURFACE_COMMIT, which is generated when a commit comes.

Change-Id: I515802229fabfa8ba3a84c70b457e16f1b767ed2

2 years agoe_comp_wl: added CLIENT_SURFACE_COMMIT hook 35/276435/2
Junseok Kim [Tue, 14 Jun 2022 23:29:36 +0000 (08:29 +0900)]
e_comp_wl: added CLIENT_SURFACE_COMMIT hook

Change-Id: Ib6f96d51bf7caf00df32f2e2d47c45ef7e3e19e4

2 years agoe_hwc_windows: fix accessing e_hwc_window after it is freed 47/276447/2
Changyeon Lee [Fri, 10 Jun 2022 05:39:54 +0000 (14:39 +0900)]
e_hwc_windows: fix accessing e_hwc_window after it is freed

e_hwc_window can be freed in _e_hwc_windows_changes_update
in case of queue_buffer is released in e_hwc_window_buffer_fetch.

for preventing e_hwc_window is freed, e_hwc_window is referenced
when it is updated.

Change-Id: I0963c9ebedc0b64b7b03b75b402ece31797a1e9f

2 years agoe_client: consider edge value while calculating visibility 60/276360/1 accepted/tizen/unified/20220616.141811 submit/tizen/20220615.100802
Doyoun Kang [Wed, 15 Jun 2022 06:01:38 +0000 (15:01 +0900)]
e_client: consider edge value while calculating visibility

When the window size is 1x1, then the eina_tiler skips it as rounding.
So, we add an additional edge value to window's geometry to calculate visibility correctly.

Change-Id: I3ee6fa69fc5d84e9cf1e9ed64108597489da0f6a

2 years agoRevert "e_client: remove edge value while calculating visibility" 59/276359/1
Doyoun Kang [Wed, 15 Jun 2022 05:56:25 +0000 (14:56 +0900)]
Revert "e_client: remove edge value while calculating visibility"

This reverts commit 30ddbd419145f3f1c4cec1f4021ea1a7b56a6de5.

Change-Id: I147a04838130b773fed8a686c0752b65976c5c36

2 years agoe_input: add null check for invalid E_Output object 55/276355/1
duna.oh [Fri, 10 Jun 2022 07:19:52 +0000 (16:19 +0900)]
e_input: add null check for invalid E_Output object

Change-Id: I374faa3534d926858aed5548bbb820758a4e0b9d

2 years agoRevert "e_devicemgr: clean up tizen_input_device objects when a client destroys" 54/276354/1
duna.oh [Fri, 10 Jun 2022 06:44:29 +0000 (15:44 +0900)]
Revert "e_devicemgr: clean up tizen_input_device objects when a client destroys"

This reverts commit 2991f7d98fe8720891584c0d2726bd7a0bf9cde0.

Change-Id: I37198e7ae63a56dcc6bee3e3bbbe1f39b57bd818

2 years agoe_devicemgr: clean up tizen_input_device objects when a client destroys 89/276089/1
duna.oh [Tue, 26 Apr 2022 06:32:56 +0000 (15:32 +0900)]
e_devicemgr: clean up tizen_input_device objects when a client destroys

There is a bug that a client does not send destroy requests,
then tizen_input_device objects would stay undeleted.
This commit fixes memory leak of tizen_input_device objs.

Change-Id: I96deae1f41a63dcc7c3525c26a17613d86bce408

2 years agoe_info: 'resource_id' should be stored as uint32_t 88/276088/1
duna.oh [Tue, 26 Apr 2022 06:42:40 +0000 (15:42 +0900)]
e_info: 'resource_id' should be stored as uint32_t

Change-Id: If3494a3b0958fc2a7a7b0218b217ce0587f1c778