Seunghun Lee [Fri, 30 Oct 2020 03:08:10 +0000 (12:08 +0900)]
subsurface: fix not being able to update stack by place_below_parent.
This problem was caused by the following patch I made for the reason that
described in the commit message.
===
commit
3d028b1c348ab53170b4f6e70ebe0794de14ff8d
Author: Seunghun Lee <shiin.lee@samsung.com>
Date: Thu Oct 22 13:41:18 2020 +0900
subsurface: Do not update stacking order of entire sub-surface tree.
===
The stacking order of sub-surface should be actually updated when state
of its immediate parent is applied according to the wl_subsurface
description.
However, 'tizen_policy.subsurface_place_below_parent' seems not to be
designed like that. So, just let 'tizen_policy.subsurface_place_below_parent'
update the stacking order immediately.
Otherwise I think this protocol can't support backward comatibility.
Clients of wayland server must be assuming that changing stacking order by
this protocol will be applied regardless of state of its parent.
Change-Id: I11a7644d16431f612a5674851a40964a48d97bbf
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
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
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
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
SooChan Lim [Thu, 29 Oct 2020 03:26:40 +0000 (12:26 +0900)]
e_client: use e_client_mapped_set() function
Change-Id: I473c8bf1c97de00bbe67ed82f6e13af985158914
SooChan Lim [Thu, 29 Oct 2020 03:19:04 +0000 (12:19 +0900)]
e_client: add e_client_mapped_set() function
Change-Id: Iecdcff771d1be8fba9f1605ae65dc0f8d521f2f5
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
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
SooChan Lim [Thu, 29 Oct 2020 00:44:09 +0000 (09:44 +0900)]
e_client: add e_client_mapped_get() function.
Change-Id: I01604ba714dc2726ccc389a6e011ab213cc13318
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
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
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
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
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
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
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
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>
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>
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>
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>
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>
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
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
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
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
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
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
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
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
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
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
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
Seunghun Lee [Tue, 6 Oct 2020 05:39:10 +0000 (14:39 +0900)]
video: Remove unused variable.
Change-Id: Ide0dbe776f9f904e9dcb490675caef7183180594
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
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
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
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
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
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
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
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
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
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>
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>
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
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
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
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>
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>
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>
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
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>
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
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>
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>
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
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
jeon [Wed, 16 Sep 2020 03:31:08 +0000 (12:31 +0900)]
e_devicemgr: remove unused values
Change-Id: Ibffc8f905ebcfc2ae510f555ab3182edb74160cf
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
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>
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>
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>
jeon [Wed, 9 Sep 2020 10:28:14 +0000 (19:28 +0900)]
e_input: use discrete value for wheel axis
Change-Id: I71b138292cf6c515b82ee932ce8057fe66a5715d
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>
Doyoun Kang [Wed, 9 Sep 2020 01:52:53 +0000 (10:52 +0900)]
e_desk: fixed desk zoom effect
Change-Id: I2deb7b1913c3656e732b6a456f6340416c937404
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
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
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>
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>
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
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
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
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>
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>
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>
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
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
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
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
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>
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
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
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>
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>
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>
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
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
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
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
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
Changyeon Lee [Thu, 13 Aug 2020 10:47:24 +0000 (19:47 +0900)]
e_hwc_windows: remove checking tdm_set
Change-Id: I89a9db93a6babfe0a9224dcf077c32b91b13e361
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
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
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
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
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
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
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
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