platform/upstream/enlightenment.git
3 years agosubsurface: fix unreachable code. 92/246492/2
Seunghun Lee [Fri, 30 Oct 2020 04:13:37 +0000 (13:13 +0900)]
subsurface: fix unreachable code.

this problem caused by mistake in previous commit.

Change-Id: I8e8d7dbe42c96817df853b8d8d290efa90cf63f0

3 years agosubsurface: fix mistake caused by previous patch. 90/246490/1
Seunghun Lee [Fri, 30 Oct 2020 02:19:54 +0000 (11:19 +0900)]
subsurface: fix mistake caused by previous patch.

It has to raise a protocol error to sub-surface, not its sibling surface.

Change-Id: I6bbe55801807fd1a35eb45d17ff9910e87086c14

3 years agoe_policy_visibility: check above's rot.pending_show flag in _e_vis_ec_above_visible_type 09/246409/2
Doyoun Kang [Thu, 29 Oct 2020 06:00:14 +0000 (15:00 +0900)]
e_policy_visibility: check above's rot.pending_show flag in _e_vis_ec_above_visible_type

Change-Id: I61fdf81684bb6caa6754a7b85e33364753d34b0d

3 years agoe_comp_wl_tizen_hwc: add ec to the log 31/246431/3 submit/tizen/20201102.223648
SooChan Lim [Thu, 29 Oct 2020 07:40:45 +0000 (16:40 +0900)]
e_comp_wl_tizen_hwc: add ec to the log

Change-Id: I71cb1af5061e460e9a66283b216185bfb332113e

3 years agoe_client: use e_client_mapped_set() function 99/246399/2
SooChan Lim [Thu, 29 Oct 2020 03:26:40 +0000 (12:26 +0900)]
e_client: use e_client_mapped_set() function

Change-Id: I473c8bf1c97de00bbe67ed82f6e13af985158914

3 years agoe_client: add e_client_mapped_set() function 98/246398/2
SooChan Lim [Thu, 29 Oct 2020 03:19:04 +0000 (12:19 +0900)]
e_client: add e_client_mapped_set() function

Change-Id: Iecdcff771d1be8fba9f1605ae65dc0f8d521f2f5

3 years agoe_client: use e_client_first_mapped_get() function instead of ec->first_mapped 97/246397/2
SooChan Lim [Thu, 29 Oct 2020 03:14:22 +0000 (12:14 +0900)]
e_client: use e_client_first_mapped_get() function instead of ec->first_mapped

Change-Id: I1ad41755ef726e3bb99501a4b26689df4252328e

3 years agoe_client: use e_client_mapped_get() instead of cdata->mapped. 90/246390/3
SooChan Lim [Thu, 29 Oct 2020 00:54:00 +0000 (09:54 +0900)]
e_client: use e_client_mapped_get() instead of cdata->mapped.

use e_client_mapped_get() api to avoid the direct access of ec->cdata->mapped

Change-Id: If3def60bcd4e6bedd371b6c5cc53885cf61652cd

3 years agoe_client: add e_client_mapped_get() function. 89/246389/1
SooChan Lim [Thu, 29 Oct 2020 00:44:09 +0000 (09:44 +0900)]
e_client: add e_client_mapped_get() function.

Change-Id: I01604ba714dc2726ccc389a6e011ab213cc13318

3 years agoe_comp_wl_shell: do not check if cdata is null 71/246371/1 submit/tizen/20201103.004241
SooChan Lim [Thu, 29 Oct 2020 00:54:21 +0000 (09:54 +0900)]
e_comp_wl_shell: do not check if cdata is null

Change-Id: I49014c62752ef010f646f44eaccbacf08231ea9b

3 years agoe_comp_wl: change the variable name of E_Comp_Wl_Data type from cdata to wl_cdata 60/244760/4
SooChan Lim [Thu, 24 Sep 2020 01:07:45 +0000 (10:07 +0900)]
e_comp_wl: change the variable name of E_Comp_Wl_Data type from cdata to wl_cdata

E20 is going to use the naming rule for E_Comp_Wl_Data and E_Comp_Client_Wl_Data below.
The local var_name for E_Comp_Wl_Data is wl_cdata.
The local var_name for E_Comp_Client_Wl_Data is cdata.

Change-Id: I8a7051d9829670ea5bac4252c64a2859586160a2

3 years agoe_client: use e_client_cdata_get instead of using ec->comp_data. 59/244759/5
SooChan Lim [Thu, 24 Sep 2020 00:00:44 +0000 (09:00 +0900)]
e_client: use e_client_cdata_get instead of using ec->comp_data.

E20 can gets the E_Comp_Wl_Client_Data of E_Client by e_client_cdata_get function.

Change-Id: Ib4b825871ad82251384dc2d44b9a16b5b6e2a498

3 years agoe_client: add e_client_cdata_get function 58/244758/3
SooChan Lim [Wed, 23 Sep 2020 23:57:11 +0000 (08:57 +0900)]
e_client: add e_client_cdata_get function

The e_client provides e_client_cdata_get() function.
A user can get the ec->comp_data with this function.

Change-Id: I2c5206d4b2d311d283303478a66016cc1cacb7ca

3 years agoe_pixmap: use E_Comp_Wl_Client_Data instead of E_Comp_Client_Data. 57/244757/3
SooChan Lim [Wed, 23 Sep 2020 23:52:42 +0000 (08:52 +0900)]
e_pixmap: use E_Comp_Wl_Client_Data instead of E_Comp_Client_Data.

E_Comp_Client_Data will be deprecated.

Change-Id: Ia9b1b25114fbae8cb4c52b5c94109f66dc5f7871

3 years agoe_client: use E_Comp_Wl_Client_Data instead of E_Comp_Client_Data. 56/244756/3
SooChan Lim [Wed, 23 Sep 2020 23:47:26 +0000 (08:47 +0900)]
e_client: use E_Comp_Wl_Client_Data instead of E_Comp_Client_Data.

E_Comp_Client_Data will be deprecated.

Change-Id: I6a9193edef91cc4731dd1a6784ff07d485538ed7

3 years agoe_comp: E_Comp_Wl_Client_Data is used instead of E_Comp_Client_Data. 55/244755/3
SooChan Lim [Wed, 23 Sep 2020 23:43:47 +0000 (08:43 +0900)]
e_comp: E_Comp_Wl_Client_Data is used instead of E_Comp_Client_Data.

E_Comp_Client_Data will be deprecated. E_Comp_Client_Data is the same definition as E_Comp_Wl_Client_Data.
Use E_Comp_Wl_Client_Data intead of this.

Change-Id: I330f131efc1982fa8b65add043e32a32166bb42e

3 years agoe_output: set output's dpms state to off if silent boot mode 08/245408/2
Junkyeong Kim [Thu, 8 Oct 2020 08:06:20 +0000 (17:06 +0900)]
e_output: set output's dpms state to off if silent boot mode

Change-Id: Ib178fc8631b5763c0b31460f5c93a7951e59015d
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agovideo: do not use pp if tdm pp does not support csc or rotation 47/245347/2
Junkyeong Kim [Wed, 7 Oct 2020 11:09:42 +0000 (20:09 +0900)]
video: do not use pp if tdm pp does not support csc or rotation

Change-Id: I29e80bfc7ee8b81e29820abe05fee3fc45abf33b
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_policy_wl: check E_Appinfo is already exist when appinfo_register_pid 37/246337/2 accepted/tizen/unified/20201029.124823 submit/tizen/20201028.110311
Junseok, Kim [Wed, 28 Oct 2020 09:21:09 +0000 (18:21 +0900)]
e_policy_wl: check E_Appinfo is already exist when appinfo_register_pid

Change-Id: I6db38984b178a11fc84a3bb798d09d03175c507b
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_appinfo: Delete E_Appinfo at compositor unbind instead of tzpol, tzlaunch_appinfo... 42/246242/4
Junseok, Kim [Tue, 27 Oct 2020 07:35:38 +0000 (16:35 +0900)]
e_appinfo: Delete E_Appinfo at compositor unbind instead of tzpol, tzlaunch_appinfo unbind.

The tizen_policy and tizen_launch_appinfo unbind can called by client when the client launching.
Since the E_Appinfo is removed at this time and re-created later, the base_output_resolution could not work properly.
For fix this issue, delete E_Appinfo when the compositor unbind callback called.

And added the E_Appinfo_Owner for recognize the E_Appinfo is created by client or server.
The E_Appinfo that created by client, will be destroyed at deregister_pid/appid request callback.
The others that created by server, will be destroyed at compositor unbind.

Change-Id: Id97ab328bc7a8a7ff97455d33f8b72c720b3b56b
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_appinfo: remove duplicated E_Appinfo when pid/appid set 41/246241/3
Junseok, Kim [Tue, 27 Oct 2020 07:34:26 +0000 (16:34 +0900)]
e_appinfo: remove duplicated E_Appinfo when pid/appid set

Change-Id: I5b2f2e20dcf566a54e4f25532ededdf8cbb19e8e
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_hwc_windows: support TDM_HWC_COMMIT_INTERVAL_VBLANK 36/246036/5
Changyeon Lee [Tue, 27 Oct 2020 07:56:33 +0000 (16:56 +0900)]
e_hwc_windows: support TDM_HWC_COMMIT_INTERVAL_VBLANK

if tdm_backend set TDM_HWC_COMMIT_INTERVAL_VBLANK, enlightenment call
tdm_hwc_commit per vblank.

Change-Id: I34e8689aab1f463797c6eb2b9ee733f17ebc8c11

3 years agoe_comp_wl_tbm: use capturable buffer at capture to file 47/245547/10
Changyeon Lee [Mon, 12 Oct 2020 06:42:16 +0000 (15:42 +0900)]
e_comp_wl_tbm: use capturable buffer at capture to file

Change-Id: I13b28b64196d58fe066e6ed82dbdd3c78e72172b

3 years agoe_comp_wl_tbm: add module func set/unset 46/245546/9
Changyeon Lee [Mon, 12 Oct 2020 06:41:24 +0000 (15:41 +0900)]
e_comp_wl_tbm: add module func set/unset

add capturable_buffer_get func and
e_comp_wl_tbm_capturable_buffer_get api

Change-Id: I5b95351b514858e44d807513bbfe5f99a9ff2890

3 years agoe_hwc_windows: don't commit after dpms is set OFF 45/245545/5
Changyeon Lee [Thu, 8 Oct 2020 05:23:41 +0000 (14:23 +0900)]
e_hwc_windows: don't commit after dpms is set OFF

Change-Id: I83605aa4d979e73090f9c406947b88b30383950b

3 years agosubsurface: Add a function to link sub-surface to its parent. 07/246207/3 accepted/tizen/unified/20201028.123857 submit/tizen/20201028.025427
Seunghun Lee [Tue, 27 Oct 2020 02:27:16 +0000 (11:27 +0900)]
subsurface: Add a function to link sub-surface to its parent.

no functional change.

Change-Id: Ic683c270587463be3640ff93a278f43daa7c572a

3 years agovideo_buffer: Do not call memcpy() with the size greater than dest. 64/246164/3
Seunghun Lee [Mon, 26 Oct 2020 06:36:43 +0000 (15:36 +0900)]
video_buffer: Do not call memcpy() with the size greater than dest.

Calling memcpy() with the size greater than dest may lead to a segfault,
since this causes a buffer overrun.
The pitch size of src is not guaranteed to have the same size as dest.
So it should use min value.

Change-Id: I1565783a416ba9a6367b4a34b75c759a514f8572

3 years agosubsurface: Remove some unnecessary internal API for sub-surface. 63/246163/3
Seunghun Lee [Thu, 22 Oct 2020 09:01:47 +0000 (18:01 +0900)]
subsurface: Remove some unnecessary internal API for sub-surface.

If stacking order of sub-surfaces changes, there is no choice but to
update stacking order of composite objects associated with sub-surfaces.
So stacking order of composite objects can be updated when order is
applied. By doing this, internal API for re-stacking composite objects
and below_obj can be removed.

Change-Id: I26a305078ad2fd708e7dcba0ef154077a7829876

3 years agosubsurface: Do not update stacking order of entire sub-surface tree. 62/246162/3
Seunghun Lee [Thu, 22 Oct 2020 04:41:18 +0000 (13:41 +0900)]
subsurface: Do not update stacking order of entire sub-surface tree.

Accoding to the description of wl_subsurface, stacking order of the
parent and its sub-surfaces is applied when the parent surface's
wl_surface state is applied, regardless of the sub-surface's mode.

However enlightenment updates stacking order of the topmost parent and
its sub-surfaces when any wl_surface(in the tree) state was applied.
This is the point that is different with the description.
This patch corrects it.

Here is a possible problem without this patch.
Let's say there are surfaces which make up the tree of sub-surfaces:

                       0
                     /   \
              1(desync)   2
                 / \     / \
                3   4   5   6

And let's say client writes wayland protocol like this:

wl_subsurface_place_below(4, 3)
wl_subsurface_place_below(2, 1)
wl_surface_commit(1)

wl_display_dispatch(wl_display)

It should only place surface 4 under the surface 3, but should not place
surface 2 under the surface 1 because surface 0's state isn't applied
yet. Without this patch, this code will place surface 2 under the
surface 1 as well.

Change-Id: Icacf0ea171ac898a66c7afa33727be93934544b3

3 years agoe_client: Checks if it's valid operation for sub-surface. 61/246161/3
Seunghun Lee [Tue, 20 Oct 2020 09:26:56 +0000 (18:26 +0900)]
e_client: Checks if it's valid operation for sub-surface.

For now wl_surface and wl_subsurface are all mapped to e_client.
e_client_stack_above/below and e_client_raise/lower are for changing
stacking order of e_client as its name says.
In this reason, the functions related to stacking order in e_client
are responsible for checking if it's valid operation for sub-surface
and updating stacking order of sub-surfaces.

Change-Id: I29a3524856ac4cc0151cbaf1221e9bc003e2216a

3 years agosubsurface: Handles restack event only for topmost parent of sub-surface. 60/246160/3
Seunghun Lee [Mon, 19 Oct 2020 11:15:23 +0000 (20:15 +0900)]
subsurface: Handles restack event only for topmost parent of sub-surface.

This patch removes a handler of restack event in e_comp_wl, and adds it
for topmost parent of sub-surface.
Because it's not necessary to handle restack event for sub-surface.
The reason is as follow.

1. Sub-surface can be re-stacked only by a request from wl_client. In
   other words, it shouldn't be re-stacked by compositor policy.
2. A topmost parent of sub-surface can be re-stacked only by compositor
   policy.

For these reason, it's sufficient for sub-surface implementation to add
a handler of restack event for topmost parent.

Change-Id: I6874425fd864c83039911dcf4ece75e5d2c8a79b

3 years agovideo: Do not free an instance in a handler of removing E_Client. 77/245677/2
Seunghun Lee [Wed, 14 Oct 2020 04:55:48 +0000 (13:55 +0900)]
video: Do not free an instance in a handler of removing E_Client.

Do not free an instance associated with tizen_video_object in a handler
of removing E_Client. The instance should be removed with wl_resource.

Change-Id: Ie34c7aa9bdc40f813829cdf8dcf39b0035aed5b8

3 years agovideo: Remove unused variable. 76/245676/2
Seunghun Lee [Tue, 6 Oct 2020 05:39:10 +0000 (14:39 +0900)]
video: Remove unused variable.

Change-Id: Ide0dbe776f9f904e9dcb490675caef7183180594

3 years agovideo: Rename functions and variables more detail. 75/245675/2
Seunghun Lee [Tue, 6 Oct 2020 05:07:35 +0000 (14:07 +0900)]
video: Rename functions and variables more detail.

no functional changes

Change-Id: I07032ce4c104af53a08346ef520e010bc1c76c4c

3 years agosubsurface: fix not inserting subsurface to pending state first. 86/244586/4
Seunghun Lee [Tue, 22 Sep 2020 05:08:38 +0000 (14:08 +0900)]
subsurface: fix not inserting subsurface to pending state first.

The z-order is double-buffered. So, subsurface has to be inserted to
pending list first, not to active list.

Change-Id: I16e855c63172311f680f66c72c575e29bd2127f6

3 years agosubsurface: Raise a protocol error for a bad parent. 85/244585/4
Seunghun Lee [Tue, 22 Sep 2020 04:52:01 +0000 (13:52 +0900)]
subsurface: Raise a protocol error for a bad parent.

This case should be failed noisily.

Change-Id: Id9567bdbaefa8c28378d4a7c67d895b91c7b0d5d

3 years agosubsurface: Do not raise a protocol error for a reference surface as parent. 84/244584/4
Seunghun Lee [Tue, 22 Sep 2020 04:32:11 +0000 (13:32 +0900)]
subsurface: Do not raise a protocol error for a reference surface as parent.

According to a documentation of wl_subsurface, a parent surface can be a
reference surface for wl_subsurface.place_(above/below) interface.

Change-Id: I790b6a39cf64c413d8fc17b857c07ff55b646cd0

3 years agosubsurface: Raise a protocol error about wl_subsurface.place_(above/below). 83/244583/4
Seunghun Lee [Tue, 22 Sep 2020 02:59:22 +0000 (11:59 +0900)]
subsurface: Raise a protocol error about wl_subsurface.place_(above/below).

Check for bad sibling and raise the required error.

Change-Id: Id5c066f0cd6434353793ed800bbe216ae6d10075

3 years agovideo: Destroy hwc interface explicitly when rendering is failed. 82/244582/4
Seunghun Lee [Fri, 11 Sep 2020 08:33:01 +0000 (17:33 +0900)]
video: Destroy hwc interface explicitly when rendering is failed.

It's better to destroy interface explicitly at where it is created.
Therefore there is no need to return boolean value and leave an
extra description for how behavior will be changed according to
return value.

Change-Id: I14b5672301aa81f20c49371eed015387de06f866

3 years agoe_client: add feature - show_pending 71/245971/1
Doyoun Kang [Wed, 21 Oct 2020 04:58:36 +0000 (13:58 +0900)]
e_client: add feature - show_pending

E supports show_pending feature.
If an ec set show_pending, then e doesn't show it's frame, doesn't calculate visiblity
and doesn't send visibility change event until unsetting show_pending.

- e_client_show_pending_set
- e_client_show_pending_unset

FYI,
if an ec which is running show_pending requests unmap, then e set ec's visibility to
UNOBSCURED. By this, its visibility can be changed to FULLY-OBSCURED by calculating
visibility.

Change-Id: I3fd89b706ac2d93c01248e988d271ac77f03ecb6

3 years agoe_service_quickpanel: remove code not to free qp_clients list when quickpanel service... 03/245803/2 submit/tizen/20201016.045653
Doyoun Kang [Fri, 16 Oct 2020 02:13:28 +0000 (11:13 +0900)]
e_service_quickpanel: remove code not to free qp_clients list when quickpanel service is destroyed

The quickpanel client didn't get state change events (such as visible state of quickpanel service)
after relauching the quickpanel service.
This was because qp_clients list was deleted when the quickpanel service is destroyed.

FYI, The qp_clients list can be deleted when the qp_client is destroyed.

Change-Id: I772e28c76330fff8045822627cc5e42f930a30eb

3 years agoe_policy_wl: send the unreigster event when tzsh_service is destroyed 91/245791/4
Doyoun Kang [Thu, 15 Oct 2020 23:41:46 +0000 (08:41 +0900)]
e_policy_wl: send the unreigster event when tzsh_service is destroyed

There was a bug that sents a wrong event (service_register) when a tzsh(tizen-ws-shell)
service window was destroyed.
We fix this to send a service_unregister event.

Change-Id: I2d2efe9b63805f50dcb0d49046955d4dc6782f88

3 years agoe_service_softkey: add null check for allocated pointer 56/245756/2 submit/tizen/20201015.093949
Junseok, Kim [Thu, 15 Oct 2020 10:00:26 +0000 (19:00 +0900)]
e_service_softkey: add null check for allocated pointer

Change-Id: If845d13d4e447e39f0a46c41a8e037db3c413ebd
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_service_softkey: pending visible request if there is no softkey service 10/245710/5
Junseok, Kim [Wed, 14 Oct 2020 12:39:45 +0000 (21:39 +0900)]
e_service_softkey: pending visible request if there is no softkey service

when the softkey service is not launched yet, hide request from client can ignored.
for fix this issue, this patch pending visible request if there is no softkey service.
and restore requset after softkey service launch.

Change-Id: I38c9cd3aa86ffe3638c68d60907fb318d726c884
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_comp_object: update comp_object when it is shown 36/245336/2
Changyeon Lee [Wed, 7 Oct 2020 07:16:06 +0000 (16:16 +0900)]
e_comp_object: update comp_object when it is shown

if comp object is shown in idle enterer before(E_CLIENT_HOOK_EVAL_FETCH),
it is rendered in idle callback without native surface and
compositor shows an empty frame if other objects aren't shown
because job callback of e_comp called at the next loop.
it causes a visual defect when windows are switched.

Change-Id: I336f5bb0ec941fbd23407a1c7488de25c96a0766

3 years agoe_hwc: add ecore event when hwc property is changed 17/245217/2
Changyeon Lee [Mon, 5 Oct 2020 11:53:05 +0000 (20:53 +0900)]
e_hwc: add ecore event when hwc property is changed

if hwc property is changed in callback of vconf,
idle enterer callback is called late.

Change-Id: Ie8890fd0d240eaa62054998593a01d662c0d17e3

3 years agoe_hwc_windows: add e_hwc_sync_callback_add/del 53/244753/6
Changyeon Lee [Wed, 23 Sep 2020 11:18:54 +0000 (20:18 +0900)]
e_hwc_windows: add e_hwc_sync_callback_add/del

Change-Id: Id04883574406ddc642b2e068479202ffccbb5958

3 years agoe_info_server: fix to include mcheck.h for mtrace()/muntrace() 37/244737/1 tizen_6.0_backup_201110 accepted/tizen/6.0/unified/20201030.105001 accepted/tizen/6.0/unified/hotfix/20201103.000631 accepted/tizen/unified/20200924.072541 submit/tizen/20200923.234521 submit/tizen_6.0/20201029.205501 submit/tizen_6.0_hotfix/20201102.192901 submit/tizen_6.0_hotfix/20201103.115101 tizen_6.0.m2_release
Sung-Jin Park [Wed, 23 Sep 2020 23:30:54 +0000 (08:30 +0900)]
e_info_server: fix to include mcheck.h for mtrace()/muntrace()

Change-Id: I69ea9594e14221508749879b505b39b079008c1b
Signed-off-by: Sung-Jin Park <sj76.park@samsung.com>
3 years agoe_info_server: add NULL check of return value from evas_object_data_get() 36/244736/1
Sung-Jin Park [Wed, 23 Sep 2020 22:44:27 +0000 (07:44 +0900)]
e_info_server: add NULL check of return value from evas_object_data_get()

Change-Id: I271bbb5385823670c26a9375a608497eca1ffb98
Signed-off-by: Sung-Jin Park <sj76.park@samsung.com>
3 years agoe_info_server/client: add mtrace option 01/244601/3
Sung-Jin Park [Tue, 22 Sep 2020 08:12:55 +0000 (17:12 +0900)]
e_info_server/client: add mtrace option

Change-Id: Ie642ca21c31c7f16bd8cab423133bc26186933c5
Signed-off-by: Sung-Jin Park <sj76.park@samsung.com>
3 years agoe_policy: set ec's lock_client_location to 0 while handling user geometry 17/244517/2 accepted/tizen/unified/20200922.230457 submit/tizen/20200922.110837
Doyoun Kang [Mon, 21 Sep 2020 07:28:19 +0000 (16:28 +0900)]
e_policy: set ec's lock_client_location to 0 while handling user geometry

There was a bug that the window didn't move when user geometry flag set, unset and set.
This was because the lock_client_location set to TRUE.
So, we fix code to set lock_client_location to FALSE when the user geometry flag is set.

Change-Id: I609f7dd9cbdfde764915bf9a59d39a8a91e1a314

3 years agoe_info_server: check ec NULL before use 25/244425/2 accepted/tizen/unified/20200922.090900 submit/tizen/20200922.031556
Junkyeong Kim [Fri, 18 Sep 2020 09:20:23 +0000 (18:20 +0900)]
e_info_server: check ec NULL before use

Change-Id: I637abea2c4e1d3c731bdc2febca9b7f860487bf0
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_hwc_windows: fix leak commit_data_list of windows 52/244552/1
Changyeon Lee [Mon, 21 Sep 2020 12:12:05 +0000 (21:12 +0900)]
e_hwc_windows: fix leak commit_data_list of windows

Change-Id: Ib0765f0a714b0bc8285bda9c7ace14cffacb5716

3 years agoe_test_helper: add e_dbus_conn_shutdown for pair with init 16/244516/1
Junseok, Kim [Mon, 21 Sep 2020 07:25:47 +0000 (16:25 +0900)]
e_test_helper: add e_dbus_conn_shutdown for pair with init

Change-Id: Icf780eb0a36e215867c3576dadc797be245a8c2d
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_info_server: remove duplicated eldbus_shutdown 14/244514/1
Junseok, Kim [Mon, 21 Sep 2020 07:22:38 +0000 (16:22 +0900)]
e_info_server: remove duplicated eldbus_shutdown

eldbus already shutdown as e_dbus_conn_shutdown() so remove it.

Change-Id: Idc31bf39262ad1b90a1c22c1b43b0902dfceaf1c
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_desk: do not apply zoom to window which set zoom_skip property 45/244345/2 accepted/tizen/unified/20200918.073729 submit/tizen/20200917.223622
Doyoun Kang [Thu, 17 Sep 2020 11:03:36 +0000 (20:03 +0900)]
e_desk: do not apply zoom to window which set zoom_skip property

There was a bug that the window which set a zook_skip property was applied the desk zoom.
This patch fixes it

Change-Id: I69494095a9b864358326daad36f251a8f5585669

3 years agoe_policy: set ec's lock_client_size to 0 while handling user geometry 42/244342/1
Doyoun Kang [Thu, 17 Sep 2020 11:00:59 +0000 (20:00 +0900)]
e_policy: set ec's lock_client_size to 0 while handling user geometry

There was a bug that the window didn't resize when user geometry flag set, unset and set.
This was because the lock_client_size set to TRUE.
So, we fix code to set lock_client_size to FALSE when the user geometry flag is set.

Change-Id: I29f58f81547ceb42b9a30c359f6c9e3436031109

3 years agoe_devicemgr: remove unused values 14/244214/1 accepted/tizen/unified/20200916.212707 submit/tizen/20200916.081844
jeon [Wed, 16 Sep 2020 03:31:08 +0000 (12:31 +0900)]
e_devicemgr: remove unused values

Change-Id: Ibffc8f905ebcfc2ae510f555ab3182edb74160cf

3 years agoe_input: add a option e_wheel_click_angle to increase wheel values 46/244146/2
jeon [Wed, 16 Sep 2020 03:19:13 +0000 (12:19 +0900)]
e_input: add a option e_wheel_click_angle to increase wheel values

Change-Id: Ie23c0cb766b29c475a74140783cb22199c34d704

3 years agoe_service_quickpanel: don't doing force render if ec is already visible 13/244013/1
Junseok, Kim [Mon, 14 Sep 2020 05:31:14 +0000 (14:31 +0900)]
e_service_quickpanel: don't doing force render if ec is already visible

during the quickpanel is moving, the buffer_change callback called many time.
for reduce burden of force render, skip force render if ec is already visible.

Change-Id: Ic48746ab8408095fb9624ac72bc9c15515813650
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoenable gcov 90/243890/1 accepted/tizen/unified/20200914.131420 submit/tizen/20200911.075444
Junkyeong Kim [Fri, 11 Sep 2020 03:11:53 +0000 (12:11 +0900)]
enable gcov

execute __gcov_flush() function by e_info_client.
have to change USE_GCOV define to '1' in spec file to make gcov gcno files.

Change-Id: Idef9c6f76150c56eed98c999b361cd554ac75919
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_comp_object: check null before use 14/243814/2
Junkyeong Kim [Thu, 10 Sep 2020 08:01:02 +0000 (17:01 +0900)]
e_comp_object: check null before use

Change-Id: I77409194d759103a142e121fb4a86cc7c318dd30
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_input: use discrete value for wheel axis 25/243725/1 accepted/tizen/unified/20200911.143443 submit/tizen/20200910.014219
jeon [Wed, 9 Sep 2020 10:28:14 +0000 (19:28 +0900)]
e_input: use discrete value for wheel axis

Change-Id: I71b138292cf6c515b82ee932ce8057fe66a5715d

3 years agoe_policy_visibility: 24bit quickpanel window is included as activity when activity_check 25/243625/2
Junseok, Kim [Tue, 8 Sep 2020 13:00:30 +0000 (22:00 +0900)]
e_policy_visibility: 24bit quickpanel window is included as activity when activity_check

Suppose there're normal window, 24bit quickpanel and higher layers window.
if the higher window hide, the normal window doing deiconify approve even if it's obscured by 24bit quickpanel window.
It's caused by quickpanel window rule out by special_check
for fix this issue, 24bit quickpanel is not special window for include visibility check of deiconify approve.

Change-Id: I7df994dc7caf165f1d192a398862d9a8e2e6ac32
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_desk: fixed desk zoom effect 43/243643/2
Doyoun Kang [Wed, 9 Sep 2020 01:52:53 +0000 (10:52 +0900)]
e_desk: fixed desk zoom effect

Change-Id: I2deb7b1913c3656e732b6a456f6340416c937404

3 years agoe_hwc_window: reference hwc_window of cursor when display info is set 60/243560/1 accepted/tizen/unified/20200908.073754 submit/tizen/20200908.071647
Changyeon Lee [Tue, 8 Sep 2020 04:41:26 +0000 (13:41 +0900)]
e_hwc_window: reference hwc_window of cursor when display info is set

Change-Id: Ia86caf5aa1a21936058b811314750a74139eeb45

3 years agoe_hwc_window: clear display and commit buffer ref before hwc_window is freed 55/243555/2
Changyeon Lee [Tue, 8 Sep 2020 04:43:00 +0000 (13:43 +0900)]
e_hwc_window: clear display and commit buffer ref before hwc_window is freed

Change-Id: Ib43bee72604e9609e1ae7fc706afdda501240725

3 years agoe_policy_wl: remove unused tzsh_tvsrv 77/237977/2 submit/tizen/20200908.015033
Junseok, Kim [Fri, 17 Apr 2020 09:09:48 +0000 (18:09 +0900)]
e_policy_wl: remove unused tzsh_tvsrv

Change-Id: I9d441d402f773eb1b48a62e9a9c5351226a21d9c
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_policy_wl: remove unused tzsh_service_call 76/237976/4
Junseok, Kim [Fri, 17 Apr 2020 05:35:46 +0000 (14:35 +0900)]
e_policy_wl: remove unused tzsh_service_call

Change-Id: Ia40e292583c37fa643896df6f0ec5b9ffdaf79ef
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_comp_object: convert damage according to evas_map coordinate 34/243434/3 accepted/tizen/unified/20200908.021114 submit/tizen/20200907.115522 submit/tizen/20200907.215450
Changyeon Lee [Mon, 7 Sep 2020 09:58:18 +0000 (18:58 +0900)]
e_comp_object: convert damage according to evas_map coordinate

for example size of evas_object is 100x100 and evas_object is mapped by 200x200 size,
enlgithenment add damage coordinate(50x50+0+0) base on 100x100 size.
it seems that current efl add damage (50x50+0+0) to gl with eglSetDamageRegionKHR.
but damage of gl coordinate should be (100x100+0+0).
so this patch convert damage according to evas_map coordinate.

Change-Id: I53d3f4323125a95b627e120e29cb1a0361fdb372

3 years agoe_policy_visibility: Do not delete a job during executing jobs in a list. 20/243020/2 accepted/tizen/unified/20200903.151707 submit/tizen/20200903.051822
Seunghun Lee [Wed, 2 Sep 2020 21:07:20 +0000 (06:07 +0900)]
e_policy_visibility: Do not delete a job during executing jobs in a list.

Deleting a E_Vis_Client could be happened while job has been executing by
iterating list of job. In that situation, deleting a job and evaluating
job list had list of job corrupted.
So this patch marks a job deleted and lets it be deleted during job execution.

Change-Id: I95059b9f61073a95212de2ca5c31b9127b8a0dcd

3 years agoRevert "e_devicemgr_inputgen: remove memory leak" 96/242996/1 submit/tizen/20200902.112453
jeon [Wed, 2 Sep 2020 09:56:26 +0000 (18:56 +0900)]
Revert "e_devicemgr_inputgen: remove memory leak"

This reverts commit 408fb1ee6e02c8ad67c6144f87a94dc32dd1d8f6.

Change-Id: I14c0bcc35e66bbb561b6ab2943b94ac098818d96

3 years agoe_info_server: add null checking before use 31/242931/1 accepted/tizen/unified/20200902.145522 submit/tizen/20200902.060217
Junkyeong Kim [Wed, 2 Sep 2020 04:50:41 +0000 (13:50 +0900)]
e_info_server: add null checking before use

Change-Id: I483b858f48a2ce1062263775a07cb1cfcfe3cb88
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_client: use previous get type value 30/242930/1
Junkyeong Kim [Wed, 2 Sep 2020 04:21:15 +0000 (13:21 +0900)]
e_client: use previous get type value

Change-Id: I2d76e37c7b0003c3eaff29f11e4601f5621f4cde
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
3 years agoe_policy_stack: fix svace issue 00/242800/1 accepted/tizen/unified/20200901.160716 submit/tizen/20200901.021435
Junseok, Kim [Tue, 1 Sep 2020 02:10:21 +0000 (11:10 +0900)]
e_policy_stack: fix svace issue

Change-Id: Ia258532790081743084ca31ee2203bc167aef745
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoviewport: do cache changes according to sub-surface sync mode. 90/242190/7
Seunghun Lee [Tue, 18 Aug 2020 14:10:38 +0000 (23:10 +0900)]
viewport: do cache changes according to sub-surface sync mode.

Now that sub-surface issues SUBSURFACE_COMMIT_TO_CACHE event,
viewport can cache changes requested by client.
The cached state will be applied to current state on the next commit.

Change-Id: Id521b1cd61af4c5c5ba94a13db4e8f04828d1458

3 years agosubsurface: Add a hook point for SUBSURFACE_COMMIT_TO_CACHE. 89/242189/4
Seunghun Lee [Thu, 13 Aug 2020 20:24:59 +0000 (05:24 +0900)]
subsurface: Add a hook point for SUBSURFACE_COMMIT_TO_CACHE.

This patch introduces a hook point for SUBSURFACE_COMMIT_TO_CACHE.
A function given to e_comp_wl_hook_add() with this hook point will be
called when changes of subsurface is committed to cache.
It will give a chance for others to cache its changes by itself.

An implementation of tizen_viewport as an extension of wayland protocol
for tizen will use this hook point for caching its changes in a
future patch.

NOTE:
Modules which listen to this hook event should apply its cached state to
current state first when wl_surface.commit occurs. Yet when there is no
cached state at that moment, it should apply pending state.

COMMIT TO CACHE
pending -> cache

wl_surface.commit
cache ? cache -> current : pending -> current

Change-Id: I35f908881d8ff06a40d90b4d78b381d31b259ef1

3 years agosubsurface: Do not create below bg rectangle for argb window. 02/242702/1
Seunghun Lee [Mon, 31 Aug 2020 11:37:17 +0000 (20:37 +0900)]
subsurface: Do not create below bg rectangle for argb window.

This fixes a bug creating and destroying below bg rectangle repeatedly.

Change-Id: Ibd310e88daaeb230872812a63b3d762ef4326a36

3 years agoe_info: add select window option in dump_buffers 06/242506/3 accepted/tizen/unified/20200828.121346 submit/tizen/20200828.082550
Changyeon Lee [Thu, 27 Aug 2020 08:22:28 +0000 (17:22 +0900)]
e_info: add select window option in dump_buffers

-w [Win_Id] : dump sepecific window
-w server   : dump only server
-w client   : dump only client

Change-Id: I8e54ebe09b74dff8e45e61a623892fc8913d9c25

3 years agoe_policy_wl: add privilege check of all tzsh services 92/242592/3
Junseok, Kim [Fri, 28 Aug 2020 06:26:36 +0000 (15:26 +0900)]
e_policy_wl: add privilege check of all tzsh services

from now on, all of tzsh_service needs privilege.
(default: internal/default/platform)

Change-Id: I03bc29034c900b5148f37d4b8c940854054da7d1
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_keyrouter: retrun false in an intercept hook if only an one hook returns false 59/242459/2
jeon [Thu, 27 Aug 2020 05:48:56 +0000 (14:48 +0900)]
e_keyrouter: retrun false in an intercept hook if only an one hook returns false

Change-Id: Idc9843e852c58eb4523e20924cc70c3d6cce298d

3 years agoe_hwc_window: do not set device state if desk geometry of ec is changed 67/242467/1
Changyeon Lee [Tue, 25 Aug 2020 11:30:44 +0000 (20:30 +0900)]
e_hwc_window: do not set device state if desk geometry of ec is changed

Change-Id: I19f84c6f69a05d3fbcabcd8b569c5a85e9cc98a4

3 years agoe_policy_stack: adjust transient_for always on top hint 94/241894/5 accepted/tizen/unified/20200827.105807 submit/tizen/20200825.123908
Junseok, Kim [Wed, 19 Aug 2020 13:27:04 +0000 (22:27 +0900)]
e_policy_stack: adjust transient_for always on top hint

if use wm.policy.win.transient_for.always_on_top aux hint,
the ec's stack will be fixed topmost of transients.

Change-Id: If532356abcd2efab3df3eeaafa207e1af733c28e
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_policy_wl: support aux_hint for transient_for always on top 93/241893/3
Junseok, Kim [Wed, 19 Aug 2020 13:26:37 +0000 (22:26 +0900)]
e_policy_wl: support aux_hint for transient_for always on top

Change-Id: I341f5b7937e945d2192e8e1bf5ea24ef305a798e
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_module: initialize buffer before use it 29/242229/2 accepted/tizen/unified/20200826.133042 submit/tizen/20200825.082113
Junseok, Kim [Tue, 25 Aug 2020 05:29:27 +0000 (14:29 +0900)]
e_module: initialize buffer before use it

Change-Id: I3358a9ef31e9b33a3cf9606c9cb022ef929daf52
Signed-off-by: Junseok, Kim <juns.kim@samsung.com>
3 years agoe_hwc_windows: support presentation_time in case of use pp 18/242218/2
Changyeon Lee [Fri, 21 Aug 2020 10:34:54 +0000 (19:34 +0900)]
e_hwc_windows: support presentation_time in case of use pp

take presentation_time of hwc_window or target_buffer in
commit pp_buffer

Change-Id: Ib9e0f29d3a6364a9e7fcb7fb81af61cdd387b1b1

3 years agoe_info: add -hwc_wins commit 05/241305/6
Changyeon Lee [Wed, 19 Aug 2020 04:52:12 +0000 (13:52 +0900)]
e_info: add -hwc_wins commit

print commit infomation of hwc windows

Change-Id: I9382767b378335cfe0f2e20129a9d73a7218f52a

3 years agoe_hwc_windows: support multiple hwc_commit_data 04/241304/6
Changyeon Lee [Wed, 19 Aug 2020 04:49:20 +0000 (13:49 +0900)]
e_hwc_windows: support multiple hwc_commit_data

e_hwc and e_hwc_window has list of commit_data

Change-Id: Icee275fcb791a9d46e993432841550f823a3d873

3 years agoe_hwc_windows: refactoring external output mirror/presentation mode 82/241182/4
Changyeon Lee [Thu, 13 Aug 2020 11:58:22 +0000 (20:58 +0900)]
e_hwc_windows: refactoring external output mirror/presentation mode

1. use pp_queue of target_hwc_window
2. unified tdm_pp of zoom and external output mode
3. set hwc_window to pp_hwc_window if need to use tdm_pp

Change-Id: I3077206a235cceca294abc8f7207f0e3a844fff0

3 years agoe_hwc_windows: refactoring e_hwc_windows_zoom_set/unset 81/241181/3
Changyeon Lee [Thu, 13 Aug 2020 11:34:41 +0000 (20:34 +0900)]
e_hwc_windows: refactoring e_hwc_windows_zoom_set/unset

1. use E_Hwc_Window_Queue and pp_queue of target_window
2. set pp_hwc_window or target_window buffer to pp_buffer of hwc
   after  hwc_windows are updated
3. set pp_buffer of hwc to tdm_pp_commit and pp destination buffer is
   enqueued to pp_queue when pp_commit_handler is called
4. target_window set buffer of pp_queue to tdm client_target_buffer

Change-Id: Ic85bfd3cf58c6371f9297c9fe1385edd3dcd2380

3 years agoe_hwc_windows: remove checking tdm_set 80/241180/2
Changyeon Lee [Thu, 13 Aug 2020 10:47:24 +0000 (19:47 +0900)]
e_hwc_windows: remove checking tdm_set

Change-Id: I89a9db93a6babfe0a9224dcf077c32b91b13e361

3 years agoe_hwc_windows: add pp_queue to E_Hwc_Window_Target 79/241179/2
Changyeon Lee [Thu, 13 Aug 2020 10:26:35 +0000 (19:26 +0900)]
e_hwc_windows: add pp_queue to E_Hwc_Window_Target

if queue of pp is set to E_Hwc_Widnow_Target,
E_Hwc_Window_Target set buffer of pp_queue to tdm

Change-Id: I4c46bd1ee9e5bebb29ba5157a5223cdcfd8b9556

3 years agoe_hwc_window_queue: add e_hwc_window_queue_get api 78/241178/2
Changyeon Lee [Thu, 13 Aug 2020 10:13:18 +0000 (19:13 +0900)]
e_hwc_window_queue: add e_hwc_window_queue_get api

Change-Id: I8743918a5550692db987e0be603fc913b1d1a7a9

3 years agoe_hwc_window: change _e_hwc_window_buffer_set to EINTERN api 77/241177/2
Changyeon Lee [Thu, 13 Aug 2020 10:07:48 +0000 (19:07 +0900)]
e_hwc_window: change _e_hwc_window_buffer_set to EINTERN api

Change-Id: If8a1f7e828c46563da5f10a6e8308b1f09e50738

3 years agoe_comp_wl_remote: add override when saving image in action change hook 23/242123/2
Changyeon Lee [Mon, 24 Aug 2020 08:34:02 +0000 (17:34 +0900)]
e_comp_wl_remote: add override when saving image in action change hook

client can be visible state when action state is changed to DEACTIVATE,
so client can have front buffer by hw reserved memory.

Change-Id: I6221075659a2ab29fe19d8ba071d0602001fa3ca

3 years agoe_info_client: use ELDBUS_TIMEOUT_INFINITE in dump_buffers 14/242114/2
Changyeon Lee [Mon, 24 Aug 2020 06:48:09 +0000 (15:48 +0900)]
e_info_client: use ELDBUS_TIMEOUT_INFINITE in dump_buffers

Change-Id: I94591fdfc89b685ecfa8aeda4b11e307cbd60e0c

3 years agoe_comp_wl: remove a frame resource from cached frame list. 03/242003/3
Seunghun Lee [Fri, 21 Aug 2020 18:29:13 +0000 (03:29 +0900)]
e_comp_wl: remove a frame resource from cached frame list.

this fixes a crash caused by trying to an invalid frame resource which
is destroyed, but dangling from cached frame list.

Change-Id: I3cf097c4b493fec3090a06dfa7f766b934ac2873

3 years agosubsurface: use eina_safety to be loud on invalid parameters. 96/241396/4
Seunghun Lee [Wed, 19 Aug 2020 08:20:25 +0000 (17:20 +0900)]
subsurface: use eina_safety to be loud on invalid parameters.

it should use eina_safety_checks when it comes to the variable that must
not be null. this will make noise and let us know about the misuse.

Change-Id: Ia3eb72eb249e4757e1ef651f0bb5c9acf6b1727f

3 years agosubsurface: add comments about the reason invoking transform_core_update() 29/241229/3
Seunghun Lee [Thu, 23 Jul 2020 09:17:37 +0000 (18:17 +0900)]
subsurface: add comments about the reason invoking transform_core_update()

Change-Id: I6dd0596bd47e4b7892374532efadff1a2615f975

3 years agosubsurface: cleanup for the below_obj of topmost. 28/241228/3
Seunghun Lee [Thu, 23 Jul 2020 06:41:24 +0000 (15:41 +0900)]
subsurface: cleanup for the below_obj of topmost.

do not call recursivley for the clarification. since this function is
obviously for topmost surface, there is no need to use recursive call.

no functional changes

Change-Id: Ibc34b7c324d344b5433220deda7cdae0b0b9da8b