SooChan Lim [Thu, 10 Aug 2023 07:14:13 +0000 (16:14 +0900)]
e_focus_policy_topmost: implement comp_object_lower callback
Add the code at the hooks call of E_COMP_OBJECT_HOOK_LOWER.
Change-Id: I576cde35c8ccf496f5d1b7b90e2066c21ab78402
SooChan Lim [Thu, 10 Aug 2023 06:31:21 +0000 (15:31 +0900)]
e_focus_policy_history: implement del callback
Add the code at the hooks call of E_CLIENT_HOOK_DEL.
Change-Id: Ie9bb186d45a59144672ad148079ec225c1e3b30d
SooChan Lim [Thu, 10 Aug 2023 07:06:04 +0000 (16:06 +0900)]
e_focus_policy_topmost: implement del callback
Add the code at the hooks call of E_CLIENT_HOOK_DEL.
Change-Id: I533616afa5d1e08ec60bbf94418f2398bf4bb322
SooChan Lim [Thu, 10 Aug 2023 06:35:21 +0000 (15:35 +0900)]
e_focus_policy_history: implement eval end callback
Add the code at the hooks call of E_CLIENT_HOOK_EVAL_END.
Change-Id: I0747157864efa1d4cb7f5c98a0ae479092ca5719
SooChan Lim [Thu, 10 Aug 2023 06:30:39 +0000 (15:30 +0900)]
e_focus_policy_topmost: implement eval end callback
Add the code at the hooks call of E_CLIENT_HOOK_EVAL_END.
Change-Id: I399ece79d3d43e4bf84d37f95d45d9037b9bb6ba
SooChan Lim [Thu, 10 Aug 2023 07:26:02 +0000 (16:26 +0900)]
e_focus_policy_history: implement activate_done callback
Add the code at the hooks call of E_CLIENT_HOOK_ACTIVATE_DONE.
Change-Id: If9c4c629bfbb6f79a8ed856eb2c3b44e12ea1082
SooChan Lim [Thu, 10 Aug 2023 05:58:54 +0000 (14:58 +0900)]
e_focus_policy_history: implement focus_set/unset callback
Add the code at the hooks call of E_CLIENT_HOOK_FOCUS_SET/UNSET.
Change-Id: I3ef2aace90791b80d9487861682b44ff609d35fe
SooChan Lim [Thu, 10 Aug 2023 06:19:02 +0000 (15:19 +0900)]
e_focus_policy_history: implement focus_latest_set callback
Add the code at the hooks call of E_CLIENT_HOOK_FOCUS_LATEST_SET.
Change-Id: I63b03cf8d27375f99252ba7d29ca6b78ed53643f
SooChan Lim [Thu, 10 Aug 2023 06:12:31 +0000 (15:12 +0900)]
e_focus_policy_history: implement focus_defer_set callback
Add the code at the hooks call of E_CLIENT_HOOK_FOCUS_DEFER_SET.
Change-Id: I5aa43c0ac11a61709d5211b44a7c1e3243a26904
SooChan Lim [Thu, 10 Aug 2023 05:56:06 +0000 (14:56 +0900)]
e_focus_policy_topmost: implement focus_set/unset callback
Add the code at the hooks call of E_CLIENT_HOOK_FOCUS_SET/UNSET.
Change-Id: Ie9b4964174e4b1cb0c7d4ed9fd5492617b5e0de1
SooChan Lim [Thu, 10 Aug 2023 02:21:58 +0000 (11:21 +0900)]
e_focus_policy: implement E_ZONE_HOOK_FOCUS_CLEAR callback
Refcatoring focus policy.
The current focused ec is set to be null.
Change-Id: If5f5588226d26f9d988dcc50e5ee35263f37616f
SooChan Lim [Thu, 10 Aug 2023 02:12:20 +0000 (11:12 +0900)]
e_focus_policy_history: implement E_ZONE_HOOK_FOCUS_RESET callback
Refcatoring focus policy.
This callback implmentation replaces e_client_refocus() calls.
See the E_ZONE_HOOK_FOCUS_RESET hook call.
Change-Id: I8b8a907d8290d99526388ee31f25f8a0994b0545
SooChan Lim [Thu, 10 Aug 2023 01:54:07 +0000 (10:54 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_ACTIVATE_DONE callback
The focus may be changed at E_CLIENT_HOOK_ACTIVATE_DONE callback.
Change-Id: Idc19863ecd4041c193553a54bb90279c7e9a16f7
SooChan Lim [Thu, 10 Aug 2023 01:49:40 +0000 (10:49 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_FOCUS_LATEST_SET callback
The focus may be changed at E_CLIENT_HOOK_FOCUS_LATEST_SET callback.
Change-Id: I7330df445d46363470d377f3546bb6f92851fb22
SooChan Lim [Thu, 10 Aug 2023 01:47:24 +0000 (10:47 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_FOCUS_DEFER_SET callback
The focus may be changed at E_CLIENT_HOOK_FOCUS_DEFER_SET callback.
Change-Id: I3bfd75102f58f66017fca51eaf3dc7fdf7e48015
SooChan Lim [Thu, 10 Aug 2023 01:23:09 +0000 (10:23 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_EVAL_END callback
The focus may be changed at E_CLIENT_HOOK_EVAL_END callback.
Change-Id: I578fae83cb52b579d87239bac4e27d6ed6426b17
SooChan Lim [Thu, 10 Aug 2023 01:07:32 +0000 (10:07 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_FOCUS_UNSET callback
The focus may be changed at E_CLIENT_HOOK_FOCUS_UNSET callback.
Change-Id: I308974522a7fcc91dea7cda1c36a3b4d61e1a4b4
SooChan Lim [Thu, 10 Aug 2023 00:58:14 +0000 (09:58 +0900)]
e_focus_policy_history: make a E_POLICY_HOOK_CLIENT_STACK_TRANSIENT_FOR_DONE callback
The focus may be changed at E_POLICY_HOOK_CLIENT_STACK_TRANSIENT_FOR_DONE callback.
Change-Id: I19b29de877dd66fcd62e1d73ecc1b410424d8ad8
SooChan Lim [Thu, 10 Aug 2023 00:54:36 +0000 (09:54 +0900)]
e_focus_policy_history: make a E_ZONE_HOOK_FOCUS_RESET callback
The focus may be changed at E_ZONE_HOOK_FOCUS_RESET callback.
Change-Id: Ifcea814b689c5b519fa12c9d3a4b691ae4e6b8d2
SooChan Lim [Thu, 10 Aug 2023 00:51:26 +0000 (09:51 +0900)]
e_focus_policy: make a E_ZONE_HOOK_FOCUS_CLEAR callback
The focus may be changed at E_ZONE_HOOK_FOCUS_CLEAR callback.
Change-Id: I2ec7e4c15579fd14865fa28066e83c6e59c7f9e2
SooChan Lim [Thu, 10 Aug 2023 00:38:07 +0000 (09:38 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_DEL callback
The focus may be changed at E_CLIENT_HOOK_DEL callback.
Change-Id: I73ce47a7309fe515551d87db9c5efc641762a465
SooChan Lim [Thu, 10 Aug 2023 00:31:12 +0000 (09:31 +0900)]
e_focus_policy: make a E_CLIENT_HOOK_FOCUS_SET callback
The focus may be changed at E_CLIENT_HOOK_FOCUS_SET callback.
Change-Id: Ic3ffe1be6a211292313abc0d1168df9a5f3755ce
SooChan Lim [Thu, 10 Aug 2023 00:24:33 +0000 (09:24 +0900)]
e_focus_policy_history: make a E_COMP_OBJECT_HOOK_HIDE callback
The focus may be changed at E_COMP_OBJECT_HOOK_HIDE callback.
Change-Id: I02cfaf4b233c08e0dd786c8ee5d8400c21e9c947
SooChan Lim [Thu, 10 Aug 2023 00:20:06 +0000 (09:20 +0900)]
e_focus_policy_history: make a E_COMP_OBJECT_HOOK_SHOW callback
The focus may be changed at E_COMP_OBJECT_HOOK_SHOW callback.
Change-Id: Ia198bfd048874c38141e8a29903aec1fcf0fe7e1
SooChan Lim [Thu, 10 Aug 2023 00:07:42 +0000 (09:07 +0900)]
e_focus_policy: make a E_COMP_OBJECT_HOOK_MOVE callback
The focus may be changed at E_COMP_OBJECT_HOOK_MOVE callback.
Change-Id: I9fe6e2d54a89c022850d5adaf5ea0c006454a064
SooChan Lim [Wed, 9 Aug 2023 23:58:38 +0000 (08:58 +0900)]
e_focus_policy: make a E_COMP_OBJECT_HOOK_LOWER callback
The focus may be changed at E_COMP_OBJECT_HOOK_LOWER callback.
Change-Id: Ib49b0c6c183d0da96c5553c5babf8723df086ec8
SooChan Lim [Wed, 9 Aug 2023 11:22:00 +0000 (20:22 +0900)]
e_focus_policy: add focused_ec_mutex
Each implementation has a focused_ec_mutex variable.
Change-Id: I89e5e5300df6ae1bcc78f0a8bcc7573a0a88e8db
SooChan Lim [Wed, 9 Aug 2023 11:09:22 +0000 (20:09 +0900)]
e_focus: use the new e_focus apis
This code is diabled and is not working now.
The implementations of E_Focus_Policy_Iface is needed for working.
Change-Id: I23127c173ec667ada8920b757c7081c29c86a484
SooChan Lim [Wed, 9 Aug 2023 11:58:37 +0000 (20:58 +0900)]
e_focus_policy: implement the E_CLIENT_HOOK_MOUSE_IN/OUT/DOWN callback.
Thease replace the e_focus_event_mouse funtions below.
e_focus_mouse_in()
e_focus_mouse_out()
e_focus_mouse_down()
Change-Id: I7aade8ea35bdaf97deaa1c329fa556ee5b1df8f6
SooChan Lim [Wed, 9 Aug 2023 10:47:57 +0000 (19:47 +0900)]
e_focus: Add the skeleton code for refactoring the focus policy
This is the first skeleton code for the focus policy refactoring.
The structure of the class diagram is below.
E_Focus --(has)--> E_Focus_Policy_Iface <|----(Implmentation)-- E_Focus_Policy_Topmost
|
|--(Implmentation)-- E_Focus_Policy_History
All the code for refatoring is diabled with defining the REFACTOR_FOCUS_POLIY feature.
Change-Id: Ia0d18599c53068f1bd68ae5019cf1a489c0bd1e8
Doyoun Kang [Mon, 21 Aug 2023 02:25:14 +0000 (11:25 +0900)]
e_service_taskbar: move window when the taskbar change the size or place type
Change-Id: I5965f9f4ffcbef42ac49e79fd61bf18efa028926
SooChan Lim [Fri, 18 Aug 2023 09:40:36 +0000 (18:40 +0900)]
e_comp: expose e_comp_zone_find_by_ec() function
E20 module has to use e_comp_zone_find_by_ec() function
in order to remove the use of ec->zone.
The zone variable will be deprecated, therefore E20 module
has to remove ec->zone at its code.
Change-Id: I587699f36c4630af0ec0105aba585c3691481edf
Jihoon Kim [Fri, 18 Aug 2023 05:03:23 +0000 (14:03 +0900)]
e_input: fix issue not to handle key event in emulator
Change-Id: I7302a798d57a032a6c64e812591b74da76a018ce
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
Junseok Kim [Thu, 17 Aug 2023 12:23:11 +0000 (21:23 +0900)]
e_comp_wl: No need to check client is focused before relative motion send
Change-Id: Id70a8164a8eb317e25f4059ddc95ce2aacaebf3e
Junseok Kim [Thu, 17 Aug 2023 06:08:43 +0000 (15:08 +0900)]
e_client: use surface-local coordinate to check input rect of the client
There was a bug that input rect didn't fit with partial sized surface.
It's caused by the position checker consider as local coordinate of the client to absolute coordinate.
To correct this bug, consider the position of the client to use surface-local coordinate.
Change-Id: I0f98c5ada983af2dac919467b5e899aaca401e4b
Junseok Kim [Thu, 10 Aug 2023 05:44:31 +0000 (14:44 +0900)]
e_comp_wl: do not send data device send enter/leave on evas mouse in/out callback
The wl_data_device_send_enter/leave is called in ecore_mouse_move callback.
For consistency of the drag and drop, remove wl_data_device_send_enter from the evas mouse callback
Change-Id: I0c072b52c67196a4d5286ba2a0379a4d1db90277
Junseok Kim [Wed, 9 Aug 2023 02:58:52 +0000 (11:58 +0900)]
e_service_kvm: rename res_srv_mc to srv_kvm_res
Change-Id: Ic6ee2190649a6d24d2c2919d2cdd9c258b1752b4
Junseok Kim [Mon, 31 Jul 2023 06:45:34 +0000 (15:45 +0900)]
e_service_kvm: Add kvm layer and adjust to kvm client
Change-Id: I156fae9d1ad0d218c3c19fa17f3df62fb71579b8
Seunghun Lee [Thu, 17 Aug 2023 01:31:23 +0000 (10:31 +0900)]
e_comp_wl: Don't use uninitialized value
The uninitialized 'name' variable could be used if fopen() in
_e_comp_wl_pname_get() is failed.
Change-Id: Ib6d874481ab52483369784d7d8799311f01a0b9c
Inhong Han [Wed, 16 Aug 2023 11:54:57 +0000 (20:54 +0900)]
e_input: fix key input not working issue
If keyrouter is initialized first because input thread is running late,
key event will not be added to input_event_handler.
Change-Id: If5105b631798d42367e9e57de88e4ced5a4c35ea
duna.oh [Wed, 16 Aug 2023 10:56:27 +0000 (19:56 +0900)]
e_keyrouter: check validation of key when unsetting keygrab
Change-Id: Ibe190b58eee3b85da41f6d689aee8712884ac721
Changyeon Lee [Fri, 11 Aug 2023 10:34:07 +0000 (19:34 +0900)]
e_hwc_window: remove calling e_comp_zone_find_by_ec
Change-Id: I709e22d8408dbacbf967dce3d57b6cdeaa0635b3
Changyeon Lee [Wed, 16 Aug 2023 07:42:40 +0000 (16:42 +0900)]
e_hwc_window: clean up _e_hwc_window_free
remove unnecessary checking null and goto
Change-Id: Ib490361e875bf30b614e3959952cb51a7d04589a
Doyoun Kang [Wed, 16 Aug 2023 08:14:53 +0000 (17:14 +0900)]
e_focus: add code to call e_client_focus_defer_set in mouse down callback
There is bug that the child window can not get focus when the mouse down event is occured.
In mouse down callback, the window get focus first.
If the window is child and it set the belong_to_parent property to the parent, then the
parent will be raised. The parent window is added to the defer_focus_stack in intercept_raise
callback function.
And finally, the parent window gets the focus by defer_focus policy.
To resolve this problem, we add code that e calls e_client_focus_defer_set for the child window.
Change-Id: I96dd830115213bb93787b1e00fe83e1ca052184c
Doyoun Kang [Wed, 16 Aug 2023 08:09:43 +0000 (17:09 +0900)]
e_focus: raise parent window in mouse down callback
We add code to raise the parent window when the mouse down event is occured on below cases.
- the "always_click_to_raise" config is enabled.
- the parent and child makes its relationship as belong_to_parent property
Change-Id: Ic91e15932d534c49cdf19f60f2ab0ba0844ea5fc
Jihoon Kim [Wed, 16 Aug 2023 01:49:58 +0000 (10:49 +0900)]
e_comp_wl_input: Add null check
e_client_from_surface_resource can return NULL
Change-Id: I6575d354da0d1759449e0a33391ba91fb67b90e3
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
Seunghun Lee [Mon, 14 Aug 2023 05:36:48 +0000 (14:36 +0900)]
compositor: Disconnect link of request_move on destroy
Change-Id: I8ac47c3e1add61364e835a18df2eb31a20f0ebc0
Seunghun Lee [Tue, 8 Aug 2023 05:17:46 +0000 (14:17 +0900)]
e_comp_wl: Enable log messages of libds
It redirects log messages of libds to enlightenment log system.
Let the intial log level of libds be DS_DBG so that it can be printed
depending on enlightenment's log level.
Change-Id: I8ee125c7285f38b74feae04f951b2587b876960e
Doyoun Kang [Thu, 10 Aug 2023 08:08:00 +0000 (17:08 +0900)]
e_client/e_zone: support iconified_type for iconify by parent
We add a new iconified type - E_ICONIFIED_TYPE_PARENT_ICONIFY_BY_CLIENT.
If the transient parent is iconified by client request, then the children are
iconified also and the iconified_type is set to this type.
FYI, however, if the transient parent is iconified by visibility, then the
children are not iconified.
Change-Id: I3afa825bfe3e8cc566519928e3d9d78423a67671
Doyoun Kang [Thu, 10 Aug 2023 08:00:17 +0000 (17:00 +0900)]
e_policy: add EINTERN e_policy_client_iconic_state_change_send
Change-Id: Ieebf8a1c415f0b0e37bc9df3087a4fa8b3afa82a
Changyeon Lee [Wed, 9 Aug 2023 09:13:15 +0000 (18:13 +0900)]
e_comp_object: remove unnecessary critical log
hwc should be able to update the comp object even if
ec is deleted (wl_surface is deleted) because
the comp object can be shown.
Change-Id: If35a311cedebaccc3070fc0f07333033b6b92223
SooChan Lim [Thu, 10 Aug 2023 05:22:58 +0000 (14:22 +0900)]
e_client: add e_client_intercept_hook_focus_revert_call signature
Change-Id: Iedcab6333fb8c37aa39776c0e2c9c2c16eb9f202
SooChan Lim [Wed, 9 Aug 2023 23:34:21 +0000 (08:34 +0900)]
e_client: change some static functions to EINTERN functions
These functions will be needed by refactoring the focus policy.
Change-Id: I3eca54504dc2748b37dde0f815f9a17b6dbe8214
Seunghun Lee [Wed, 9 Aug 2023 10:29:40 +0000 (19:29 +0900)]
Revert "Use wl_signal_emit_mutable()"
The call to wl_signal_emit_mutable() causes some memory issue for some
reason, so this reverts commit
499af4f07e8119645f5df18a4d62d02b700935c3.
Change-Id: I624c94042f6e11699c41403b04e738a33163988d
Seunghun Lee [Wed, 9 Aug 2023 09:40:11 +0000 (18:40 +0900)]
compositor: Fix memory corruption
Calling wl_list_remove(sub->parent_surface_destroy.link) in
_e_subsurface_destroy() caused memory corruption, if it is called after
the destruction of parent surface.
Change-Id: Ifb0ee675554d13c93aed2e2c438c8a43f2d347e1
Jihoon Kim [Wed, 9 Aug 2023 03:26:57 +0000 (12:26 +0900)]
e_input: fix build warning
Change-Id: I7f2a00413381f2e7f8cf40fd3261aecf5da531b1
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
Junseok Kim [Wed, 9 Aug 2023 02:40:21 +0000 (11:40 +0900)]
e_desk: remove unused variable
Change-Id: I61df571af756420398aee787cacd3c998acec04b
Doyoun Kang [Wed, 9 Aug 2023 01:53:55 +0000 (10:53 +0900)]
e_policy_visibility: add checking geometry while checking obscured by children
Change-Id: I42d692c1ab953e8e3199a08981f3165249fe8715
Doyoun Kang [Tue, 8 Aug 2023 09:36:27 +0000 (18:36 +0900)]
e_policy_wl: bug fix for activate_above request
When a transient_below child requests to activate above its parent,
then e doesn't allow this request.
Change-Id: Ieb56f9364ce86bd42c69954a49e47f757eaf2fa4
Junseok Kim [Tue, 8 Aug 2023 06:27:20 +0000 (15:27 +0900)]
e_comp: move position of the E_LAYER_CLIENT_DRAG to right below of the cursor
Change-Id: I2df2e7bea5d81e47c0752172ed9c4f92b92420a4
Junseok Kim [Tue, 8 Aug 2023 06:21:20 +0000 (15:21 +0900)]
e_comp_wl: correct position of the drag window
the x, y is relative position of the window under pointer.
and the ev->x, ev->y is absolute position of the screen.
the drag window have to position to absolute position, not to relative position.
Change-Id: Ic9fd3414e2bf890f18ccd8afbc49f8e72753f1e3
SooChan Lim [Tue, 8 Aug 2023 04:12:23 +0000 (13:12 +0900)]
e_client: remove the use of e_config->focus_setting
The e_config->focus_setting is awlays 1 which is
E_FOCUS_NEW_WINDOW, so it is useless.
Change-Id: Id3bc8ff3d802ea16cbfefd0f78cbcd8721bc5c76
Junseok Kim [Fri, 4 Aug 2023 06:52:41 +0000 (15:52 +0900)]
e_client: remove e_client_focus_track functions
There're no call of the e_client_focus_track_freeze and e_client_focus_track_thaw.
So, the e_client_focus_track functions and variables are not necessary.
Change-Id: I4765e12c857ca36155e0d414f01087f0c9bac56f
Junseok Kim [Fri, 4 Aug 2023 06:35:57 +0000 (15:35 +0900)]
e_desk: remove focus set logic from desk show animation
Remove focus setting logic from desk showing animation.
It's not necessary to current focus logic both of Topmost and Focus history.
Change-Id: Ia8bb3e271f0741fb7eda2273bcdc3ac10d0851dc
Junseok Kim [Fri, 4 Aug 2023 06:32:18 +0000 (15:32 +0900)]
e_comp_wl_data, e_comp_wl_input: remove controlling focus stack
remove controlling focus stack from e_comp_wl_data, e_comp_wl_input.
It's useless code that the clients are ignored by ec->override.
Change-Id: I1ba7d38d60c42cd90ef6ee9688529bb69fd23d53
Changyeon Lee [Mon, 7 Aug 2023 03:41:24 +0000 (12:41 +0900)]
e_pointer: do scale with same output resolution ratio of width and height
Change-Id: Iab23e011084c7d057b3a8bfafdbc51814ab32b28
Joonbum Ko [Fri, 4 Aug 2023 10:44:05 +0000 (19:44 +0900)]
e_comp_wl: add e_comp_wl_focused_client_flush
add the mutex to protect event_flush for each clients.
e_input_input: use the added focused_client_flush
Change-Id: I86677be4b161103732fcefdf5ba8199b4296e538
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
SooChan Lim [Mon, 7 Aug 2023 05:41:54 +0000 (14:41 +0900)]
e_comp_canvas: do nothing at mouse in callback
No need to manage the focus here. The focus management will
execute other focus logic.
Change-Id: Ic367f1498c09ef88eeb8a0294312bd6285834ae4
SooChan Lim [Fri, 4 Aug 2023 00:45:50 +0000 (09:45 +0900)]
e_client: make the early returns
make the early returns at _e_client_check_really_iconified()
Change-Id: I1ed75586b1230f0d12a43acbc20626196415b9e8
SooChan Lim [Mon, 7 Aug 2023 01:00:52 +0000 (10:00 +0900)]
e_comp_wl_shell: remove e_focus_mouse_down
e_focus_mouse_down() is alread called before this function call.
So calling e_focus_mouse_down() is unnecessary.
Change-Id: I28ffad8faf8fdddc94fd1a6fa5e33cc31f8e8a51
SooChan Lim [Mon, 7 Aug 2023 00:22:29 +0000 (09:22 +0900)]
e_client: move e_focus_event_mouse_down() at e_client_mouse_down
It shows the before and after call flow for e_focus_event_mouse_down.
BEFOER : _e_comp_wl_evas_cb_mouse_down() -> e_focus_event_mouse_down()
AFTER : _e_comp_object_cb_mouse_down() -> e_client_mouse_down() -> e_focus_event_mouse_down()
Other e_focus_mouse apis(e_focus_mouse_up/move) is called through
e_client_mouse apis(e_client_mosue_up/move), so e_focus_event_mouse_down()
is also changed to be called through e_client_mouse_down().
Change-Id: I189967b67d0a3dd373418990476daac97ec4a803
SooChan Lim [Sun, 6 Aug 2023 23:48:59 +0000 (08:48 +0900)]
e_focus: remove the unused focus_event functions
These do nothing.
Change-Id: Iac2005de8dd70f797461708fc6aa2de0638c3dc6
Jihoon Kim [Fri, 4 Aug 2023 10:15:03 +0000 (19:15 +0900)]
Revert "e_input: process input event asynchronously"
This reverts commit
c7ab667d22b0e061e5ce4a20d7050caca5046461.
Change-Id: I52583ae84ad9a72b705686c7a8931f4a743d1154
Seunghun Lee [Fri, 4 Aug 2023 06:07:49 +0000 (15:07 +0900)]
Use wl_signal_emit_mutable()
The wl_signal_emit_mutable() is safer than wl_signal_emit().
Change-Id: Iac108e20d435dd5b72fa85534e06f15b5d355dba
duna.oh [Fri, 4 Aug 2023 03:02:58 +0000 (12:02 +0900)]
e_input: do not add 'normal' Mouse Move events when sending 'relative' Move
Change-Id: I57cbfd27f8b9c04dc618cd486583f71f2f010ffa
duna.oh [Wed, 2 Aug 2023 07:04:40 +0000 (16:04 +0900)]
e_comp_wl_input: use cursor_position_hint to warp the pointer upon unlock
There was a bug when locked_pointer destroys, pointer is warped by
cursor_position_hint and warped again by mouse_move_preventer.
Since cursor_position_hint and region is in surface-coordinate,
checking of inside region should be in the same coordinate.
Change-Id: I247840e9b48cad96e251a778e861e593b79c60a1
duna.oh [Tue, 1 Aug 2023 23:47:59 +0000 (08:47 +0900)]
e_comp_wl_input: now use the function to check the region of pointer_constraint
Change-Id: I301f7feaeb9389efd83d93ab66ddfb7c8cb91f38
duna.oh [Tue, 1 Aug 2023 13:59:15 +0000 (22:59 +0900)]
e_comp_wl_input: get pixman_region from wl_region of pointer_constraint
After commit '406e1d', wl_region is set to pixman_region instead of Eina_Tiler.
Change-Id: I360157d370348b25f980c41e43f559b2f4d911f2
Seunghun Lee [Fri, 4 Aug 2023 06:31:57 +0000 (15:31 +0900)]
e_client: Silence unused-variable warnings
This removes unused variables and a function after
6d5d2833.
Change-Id: Iceb2d501175c3b7c0a4598771844c4ff5b9b4e67
SooChan Lim [Fri, 4 Aug 2023 09:02:18 +0000 (18:02 +0900)]
e_client: remove the just_do_it argument
The just_do_it is always 1 or True, so It is useless.
Change-Id: Ib7a66f2c00d600c9a7e775c15c221542859bb820
SooChan Lim [Mon, 24 Jul 2023 04:34:57 +0000 (13:34 +0900)]
e_zone: move e_client_visibility_zone_calculation to e_zoen_visibility_calculation
The main role of this fucntion calcuates the visibility of the given zone. This is not
for a client, for a zone. Therefore, the function is decalared at the zone.c file and
remove the e_client_visibility_zone function at client.c file.
Change-Id: I2bd894f0acc85da529b9254fa958892522a8fd79
SooChan Lim [Mon, 24 Jul 2023 02:19:56 +0000 (11:19 +0900)]
e_client: make a _e_client_visibility_end_notify function
Change-Id: Ibd44539f6717df4fce135178cab45e3ed3de9aa3
SooChan Lim [Mon, 24 Jul 2023 00:48:02 +0000 (09:48 +0900)]
e_client: remove the E_CLIENT_HOOK_CAL_VISIBILITY_DISPLAY_OFF
This hook is deprecated. There is no use for it.
Change-Id: I1fd544eb1831365de5ed6ef07a904ca00757ebed
SooChan Lim [Fri, 21 Jul 2023 08:13:13 +0000 (17:13 +0900)]
e_client: make a e_client_visibility_change_notify function
This function sends the visibiilty_change event and
calls the visibiilty_change hook.
Change-Id: Ie0d4d0d72ce038c9b99195200d1fec663bf64697
SooChan Lim [Fri, 21 Jul 2023 05:46:52 +0000 (14:46 +0900)]
e_client: use e_zone_is_displaying() function
intead of is_display_off variable.
Change-Id: I5c1d227b9601fb25c227f2a3350ae220317600a9
SooChan Lim [Fri, 21 Jul 2023 01:47:56 +0000 (10:47 +0900)]
e_client: remove the usage of ec->zone at e_client_visibility_zone_calcualte
The zone variable at e_client will be deprecated.
Change-Id: I3d9500b76bcbb2a6d14112991315c1ee22483b13
SooChan Lim [Thu, 3 Aug 2023 00:12:58 +0000 (09:12 +0900)]
e_client: remove two e_client_pointer_warp_to_center apis
These functions is not used.
EINTERN int e_client_pointer_warp_to_center_now(E_Client *ec);
EINTERN int e_client_pointer_warp_to_center(E_Client *ec);
Change-Id: I2c05b29d37ade78d6f7b1357c7fcf7f393242482
Junseok Kim [Thu, 3 Aug 2023 08:52:39 +0000 (17:52 +0900)]
e_comp_wl_data: Add null check of drag_icon_ec
Change-Id: I278d780beea68cca779f2934d0651038ecfeaa3b
Junseok Kim [Thu, 3 Aug 2023 11:26:50 +0000 (20:26 +0900)]
e_client: refactor e_client_revert_focus function
Change-Id: I3f2f35e37cf96c2486e4d4a4c47cd5cf8ce220a4
Junseok Kim [Wed, 2 Aug 2023 09:21:16 +0000 (18:21 +0900)]
e_client: refactor e_client_focus_calculate function
Change-Id: I5c04b0c0c8418eab7b0b409fd5d268437479b32d
Junseok Kim [Wed, 2 Aug 2023 09:20:56 +0000 (18:20 +0900)]
e_client: refactor focus_can_take function
Change-Id: Ic7af3d36865265b8614df726fb22a927ed3bad39
Junseok Kim [Tue, 1 Aug 2023 06:54:51 +0000 (15:54 +0900)]
e_client: refactor check_obscured_by_children_group
Change-Id: Icb5edb65d5b2bea73b392f198fcd3bc5cc2b06a7
Junseok Kim [Tue, 1 Aug 2023 06:49:46 +0000 (15:49 +0900)]
e_client: refactor transient_for_group_make
Change-Id: Iab4ee57372279156222741b2e5a6e45363fa5f56
Junkyeong Kim [Wed, 2 Aug 2023 07:10:51 +0000 (16:10 +0900)]
e_service_kvm: Implement kvm secondary selection
If kvm_service secondary_selection set,
e20 send wl_selection_data to secondary_selection like cbhm.
Change-Id: Ie7fe9f86eed41fb61c43a401d63dd127e5866fb2
Changyeon Lee [Thu, 6 Jul 2023 09:38:32 +0000 (18:38 +0900)]
e_comp_object: fix the comp object is shown even if ec is iconic
There is a bug that the comp object is shown when
client is set by iconic during showing animation.
1. client A is showing and begin animating of comp object
2. cw->animating is increased
3. e_client_iconify and _e_comp_intercept_hide is called
4. defer_hide is set
5. _e_comp_object_done_defer is called with "e,action,show,done"
6. the comp object is never hidden
for fixing this bug, call evas_object_hide when
_e_comp_object_done_defer is called with "e,action,show,done"
and defer_hide is set.
Change-Id: I7fdee04e208288ef06b4aaacb445a41ffd6e4d79
Seunghun Lee [Thu, 3 Aug 2023 07:18:43 +0000 (16:18 +0900)]
e_policy_wl: Do nothing with a subsurface for fake
This fixes abort() in ds_subsurface_from_resource().
Change-Id: I779ec93fa92ebce1352437992663da154559c103
Seunghun Lee [Thu, 3 Aug 2023 00:53:48 +0000 (09:53 +0900)]
e_client: Remove unnecessary check
There's no point in checking whether given E_Client is deleted during
the e_client_surface_tree_foreach().
This should be checked by a caller if it's needed.
Change-Id: Id54140b1a915938526375c6b3f150e0c1ab08699
Seunghun Lee [Wed, 2 Aug 2023 05:02:59 +0000 (14:02 +0900)]
Export APIs for use by E modeuls
This patch exports following APIs for use by E modules.
* Eina_Bool e_client_is_video(E_Client *ec);
* void e_client_surface_tree_foreach(E_Client *ec, E_Client_Surface_Tree_Foreach func, void *data);
As a side note, with the combination of these APIs, E modules can
traverse a surface tree and count the number of E_Client which is for
video contents.
Change-Id: I1e1114387204a25dd50369587f7ff34d61923fd7
Inhong Han [Tue, 1 Aug 2023 10:53:58 +0000 (19:53 +0900)]
e_input: Modified not to create duplicate E_Device information
Change-Id: I4d35538fb20186553f5820147c1aeedede7920df
Changyeon Lee [Tue, 1 Aug 2023 07:29:38 +0000 (16:29 +0900)]
e_comp_wl_capture: fix transform buffer format when source buffer is shm
if source buffer is shm, tbm_surface of td is null.
Change-Id: I149146e62e3ee784486108cc1d0966fa8968ceb0