platform/core/uifw/libds-tizen.git
2 years agoadd mock client/compositor 90/278390/1
SooChan Lim [Sun, 10 Jul 2022 04:46:59 +0000 (13:46 +0900)]
add mock client/compositor

This is the mock classes for testing request/event interaction between
client and server.

Change-Id: Ide1366d47f3cae83944520c8459a62bf4d737a1f

2 years agoimpelement libds-tizen-indicator 89/278389/1
SooChan Lim [Thu, 7 Jul 2022 10:28:26 +0000 (19:28 +0900)]
impelement libds-tizen-indicator

This is the server implementation for tizen_indicator protocol.

Change-Id: I97efef30d5f9e5c540d51b92bcac43808b53951a

2 years agodevicemgr: implement pointer_warp 47/278247/1 accepted/tizen/unified/20220720.034120 submit/tizen/20220720.024540
duna.oh [Mon, 11 Jul 2022 16:26:50 +0000 (01:26 +0900)]
devicemgr: implement pointer_warp

Change-Id: Ia3054efdedc15b04b93f4b3e089fa1491c87f981

2 years agoadd libds-tizen-allocator-tbm tests 46/278246/1
SooChan Lim [Thu, 7 Jul 2022 23:11:23 +0000 (08:11 +0900)]
add libds-tizen-allocator-tbm tests

Change-Id: I305f0b527ff2b2408f7ce5017cfa8f5107d057fb

2 years agoadd .clang-format file 45/278245/1
SooChan Lim [Thu, 7 Jul 2022 23:09:51 +0000 (08:09 +0900)]
add .clang-format file

Change-Id: I988a24843b381135d65b53cb78bd8dfc4d11ce0a

2 years agoadd gtest files 44/278244/1
SooChan Lim [Thu, 7 Jul 2022 23:08:36 +0000 (08:08 +0900)]
add gtest files

Change-Id: I2d2c87aee0a1c842467d04d907f249ce4bd6b57b

2 years agoremove the test files. 43/278243/1
SooChan Lim [Thu, 7 Jul 2022 10:57:35 +0000 (19:57 +0900)]
remove the test files.

This test files are useless.

Change-Id: I0528e80430c947e1dfcf92f8b71860188d9d0ec5

2 years agokeyrouter: Replace get_keyroutes() with notify_key() 42/278242/1
Seunghun Lee [Wed, 6 Jul 2022 01:54:44 +0000 (10:54 +0900)]
keyrouter: Replace get_keyroutes() with notify_key()

Instead of returning key routes list to the compositor, it will deal
with keyboard key events on the behalf of the compositor according to
keyrouter extension protocol.

Change-Id: I6b7085402c6bb5cad0160f356c327af1467f9726

2 years agoadd missing files 41/278241/1
SooChan Lim [Wed, 6 Jul 2022 05:10:33 +0000 (14:10 +0900)]
add missing files

Change-Id: Ifd75994c3ae705441947e2b225adfb08bacc0466

2 years agofix the typo 40/278240/1
SooChan Lim [Mon, 4 Jul 2022 10:33:18 +0000 (19:33 +0900)]
fix the typo

Change-Id: Ie2407006a7d008b8a1c5d32413cf9a64669693e5

2 years agochange file names and folder names 39/278239/1
SooChan Lim [Mon, 4 Jul 2022 10:23:19 +0000 (19:23 +0900)]
change file names and folder names

use the underbar instead of a hyphen when you name files and folders.

Change-Id: I72c903fef3f5e2dc4fbc4df09524b7215c211685

2 years agochange the name of base_deps into deps_base 38/278238/1
SooChan Lim [Thu, 30 Jun 2022 00:48:07 +0000 (09:48 +0900)]
change the name of base_deps into deps_base

Change-Id: Ifb6fe3f03cc1d8d9e86341f54c000f7f03f9f1ef

2 years agoremove xkbcommon from base_dep 37/278237/1
SooChan Lim [Thu, 30 Jun 2022 00:47:07 +0000 (09:47 +0900)]
remove xkbcommon from base_dep

Change-Id: I43f6bea638488d1c066a984ee1623285405e8f58

2 years agochange the var name 36/278236/1
SooChan Lim [Thu, 30 Jun 2022 00:40:29 +0000 (09:40 +0900)]
change the var name

Change-Id: I9b4cdb7b7d86f4abb05c1e5840aaf9be94d690f1

2 years agoDonot make libds-tizen package 35/278235/1
SooChan Lim [Thu, 30 Jun 2022 00:39:21 +0000 (09:39 +0900)]
Donot make libds-tizen package

Remove libds-tizen/libds-tizen-devel packages and libds-tizen library

Change-Id: Id66b15da9fe591eb7dc249c7e9faa78205458aae

2 years agoseperate security to util 34/278234/1
SooChan Lim [Thu, 30 Jun 2022 00:29:41 +0000 (09:29 +0900)]
seperate security to util

keyrouter and input-device only depends on security.
dpms does not need to depends on security.

Change-Id: I84f319dce5d7fb8f8a4c7e1c0d92ce871aeb7986

2 years agomake libds-tizen-tbm-server 33/278233/1
SooChan Lim [Wed, 29 Jun 2022 10:16:14 +0000 (19:16 +0900)]
make libds-tizen-tbm-server

change the build script for libds-tizen-tbm-server

Change-Id: I3bfa4f72ea9298d847f72d1246d0d04f575f162c

2 years agomake libds-tizen-dpms 32/278232/1
SooChan Lim [Wed, 29 Jun 2022 09:50:51 +0000 (18:50 +0900)]
make libds-tizen-dpms

change the build script for libds-tizen-dpms

Change-Id: I8b0c2827ff715962302807875aee119b04ac8029

2 years agoadd comments at spec file 31/278231/1
SooChan Lim [Wed, 29 Jun 2022 09:45:23 +0000 (18:45 +0900)]
add comments at spec file

Change-Id: Ib6548d595ccc18899ac1be40b485070ff987e951

2 years agomake libds-tizen-allocator-tbm 30/278230/1
SooChan Lim [Wed, 29 Jun 2022 09:27:21 +0000 (18:27 +0900)]
make libds-tizen-allocator-tbm

change the build script for libds-tizen-allocator-tbm

Change-Id: I7dd36d43879e2708f4ead2545849954355f721d2

2 years agomake libds-tizen-backend-tdm 29/278229/1
SooChan Lim [Wed, 29 Jun 2022 08:36:40 +0000 (17:36 +0900)]
make libds-tizen-backend-tdm

change the build script and change tdm.h to tdm_internal.h for libds-tizen-backend-tdm.

Change-Id: I7c1db1ae8acdb81bd1ce4fc01edd121782ef1f2d

2 years agodevicemgr: use seat_destroy listener in seat_handle_destoy() func. 28/278228/1
duna.oh [Wed, 29 Jun 2022 01:46:54 +0000 (10:46 +0900)]
devicemgr: use seat_destroy listener in seat_handle_destoy() func.

Change-Id: If5556f8ec94836470981691efa5d9d40742f23fa

2 years agodevicemgr: implement input generator (pointer & touch) 27/278227/1
duna.oh [Tue, 28 Jun 2022 04:59:10 +0000 (13:59 +0900)]
devicemgr: implement input generator (pointer & touch)

Change-Id: Ia27ed1fd2baa29db0df19ee2b3e18cb7d020cad7

2 years agokeyrouter: Refactor out ds_tizen_keyrouter 26/278226/1
Seunghun Lee [Fri, 10 Jun 2022 05:42:22 +0000 (14:42 +0900)]
keyrouter: Refactor out ds_tizen_keyrouter

Change-Id: I35add1ab1c81c8589789708b8ef38f4693cc1ee2

2 years agokeyrouter: Drop unnecessary NULL check for wl_container_of() 25/278225/1
Seunghun Lee [Fri, 10 Jun 2022 05:55:24 +0000 (14:55 +0900)]
keyrouter: Drop unnecessary NULL check for wl_container_of()

If wl_container_of() returned null, it's not something that we treat
as an exception case, but is something that we'd better fail
immediately. The result of wl_container_of() is never null.

Change-Id: I1812a2f148888cbd64441a2a39916c13f2f68a27

2 years agokeyrouter: Rename keyrouter_grab for shorter name 24/278224/1
Seunghun Lee [Fri, 10 Jun 2022 02:07:32 +0000 (11:07 +0900)]
keyrouter: Rename keyrouter_grab for shorter name

Change-Id: I30b62158ede60976ac760d39bafb894f274acf21

2 years agokeyrouter: Rename keyrouter_client to client for shorter name 23/278223/1
Seunghun Lee [Fri, 10 Jun 2022 01:52:34 +0000 (10:52 +0900)]
keyrouter: Rename keyrouter_client to client for shorter name

Change-Id: Ic4e1397f3fee212d4dff9e3d433384b964e0a47a

2 years agokeyrouter: Use macro for a string of privilege 22/278222/1
Seunghun Lee [Fri, 10 Jun 2022 01:46:04 +0000 (10:46 +0900)]
keyrouter: Use macro for a string of privilege

Change-Id: I586bada8424050ee660c59fc17b56b474e3ab637

2 years agokeyrouter: Rename grabbed for more suitable name 21/278221/1
Seunghun Lee [Fri, 10 Jun 2022 01:42:34 +0000 (10:42 +0900)]
keyrouter: Rename grabbed for more suitable name

The variable 'grabbed' was only used to check to see if the associated
client has been privileged. So, it's better to rename 'grabbed' to
'privileged'. Plus, it should be determined when checking privilege.

Change-Id: Ibc3956b6ab6e21bf8fd3d58d9a1c4fbcce1aec67

2 years agokeyrouter: Remove unused included headers 20/278220/1
Seunghun Lee [Fri, 10 Jun 2022 01:15:19 +0000 (10:15 +0900)]
keyrouter: Remove unused included headers

Change-Id: I3ef89c2a8ce9266e093445538ef9c4b23ec4d1f1

2 years agokeyrouter: Use macro for keyrouter version 19/278219/1
Seunghun Lee [Fri, 10 Jun 2022 01:14:06 +0000 (10:14 +0900)]
keyrouter: Use macro for keyrouter version

Change-Id: Ifb199c1e5cf7e64d5e9f7cc7c4687093639c0cfc

2 years agoexample: Add tinyds-tdm-hwc 18/278218/1
Changyeon Lee [Thu, 16 Jun 2022 02:53:26 +0000 (11:53 +0900)]
example: Add tinyds-tdm-hwc

example ds_tdm_output_hwc

Change-Id: I5a6f9f0a6055eaf52f0d6456896d5e65c4a746ee

2 years agobackend/tdm: Add ds_tdm_output_hwc 17/278217/1
Changyeon Lee [Thu, 16 Jun 2022 02:52:13 +0000 (11:52 +0900)]
backend/tdm: Add ds_tdm_output_hwc

ds_tdm_output_hwc composites surface or buffer if hardware layer of output
can use direct scan-out(bypass compositing at output buffer).

ds_tdm_output_hwc has is consists of ds_tdm_output_hwc_window.
for using hardware compositing, display-server should set compositing
infomation of ds_tdm_output_hwc_window

it would be nice to ds_tdm_output_hwc can display all ds_tdm_output_hwc_window
by direct scan-out but it has restrictions.
output has limited number of hardware layer and hardware layer has
hw restrictions(buffer size, transform, format, etc).
if ds_tdm_output_hwc_window can not be display by direct scan-out,
display-server should composite it at output buffer.

ds_tdm_output_hwc_window is updated at output when ds_output_hwc_validate and
ds_output_commit is called because ds_tdm_output_hwc is component of ds_output.

Change-Id: If78e862e4acbcc1ae465fe8315fc478f888657b3

2 years agoinput-devicemgr: add input-devicemgr in build scripts 16/278216/1
duna.oh [Wed, 8 Jun 2022 08:07:24 +0000 (17:07 +0900)]
input-devicemgr: add input-devicemgr in build scripts

Change-Id: I5fde58ecbf1187b561349f593521a25961535b7e

2 years agokeyrouter: Add missing assignment 15/278215/1
Seunghun Lee [Wed, 8 Jun 2022 07:53:16 +0000 (16:53 +0900)]
keyrouter: Add missing assignment

The member variable 'keyrouter' of ds_tizen_keyrouter_client is referred
throughout the file, but it's never been assigned.

Change-Id: I7db736c88c89026433da5c1621f249593b402125

2 years agokeyrouter: Fix illegally finishing tizen_security 14/278214/1
Seunghun Lee [Wed, 8 Jun 2022 07:43:12 +0000 (16:43 +0900)]
keyrouter: Fix illegally finishing tizen_security

Do not finish tizen_security if the initialization's been failed.

Change-Id: Iee1a6eb973a8513c97aaf27a5b40e2d60c8f1f32

2 years agokeyrouter: Properly test for allocation failure 13/278213/1
Seunghun Lee [Wed, 8 Jun 2022 07:25:42 +0000 (16:25 +0900)]
keyrouter: Properly test for allocation failure

Instead of testing the return of the function just called, it was
testing something already checked earlier.

Change-Id: Ibaa7884360afaa195d843bc90588e3af85caf0d0

2 years agorearrange the directories of git repository 12/278212/1
SooChan Lim [Wed, 8 Jun 2022 01:33:48 +0000 (10:33 +0900)]
rearrange the directories of git repository

and fix some build break.

Change-Id: I723cb9e5f13f05f5761d668737f6e2c9c84f9cac

2 years agoremove libds stuffs 11/278211/1
SooChan Lim [Sat, 4 Jun 2022 01:36:16 +0000 (10:36 +0900)]
remove libds stuffs

It remains libds-tizen sources here and it depends on libds

Change-Id: I63661dd7ff67db7e1cbb218798908006de2a7c81

2 years agokeyrouter: Fix wrong validity check 10/278210/1
Seunghun Lee [Tue, 7 Jun 2022 23:30:48 +0000 (08:30 +0900)]
keyrouter: Fix wrong validity check

Change-Id: I4339bc6ffb8c111679e00276fdfdd1f3500ffb1e

2 years agodevicemgr: implement libds-tizen-input-devicemgr 09/278209/1
duna.oh [Tue, 7 Jun 2022 10:38:39 +0000 (19:38 +0900)]
devicemgr: implement libds-tizen-input-devicemgr

Change-Id: I3e0451c47fea0c5dac467d45143d594f36161907

2 years agodpms: set ds_tizen_dpms enum value by tizen dpms protocol enum value 08/278208/1
Junkyeong Kim [Tue, 7 Jun 2022 04:35:51 +0000 (13:35 +0900)]
dpms: set ds_tizen_dpms enum value by tizen dpms protocol enum value

Change-Id: I1f02952b83bfcedfa60cfb045d710b0edb354492
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoclient: add simple-dpms 07/278207/1
Junkyeong Kim [Tue, 7 Jun 2022 04:34:43 +0000 (13:34 +0900)]
client: add simple-dpms

Change-Id: Idf32c869b660f568ab6514d542396c40f32dc6c6
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agoexample: add tinyds-tdm-dpms 06/278206/1
Junkyeong Kim [Tue, 7 Jun 2022 04:31:32 +0000 (13:31 +0900)]
example: add tinyds-tdm-dpms

Change-Id: I6845876ee8240eba2d8569bdef5c799bd56ee0ce
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agodpms: fix build error 05/278205/1
Junkyeong Kim [Tue, 7 Jun 2022 04:29:44 +0000 (13:29 +0900)]
dpms: fix build error

Change-Id: I1190b3d14494921bc657ba8d6dd37bc42fd215f9
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agokeyrouter: Return an appropriate value 04/278204/1
Seunghun Lee [Fri, 3 Jun 2022 09:12:29 +0000 (18:12 +0900)]
keyrouter: Return an appropriate value

The return value of keyrouter_grab_check_grabbed() is boolean. So let's
make it right.

Change-Id: Ic3c5b7fc16cb571633bd8a299cb12a2c3fee1797

2 years agokeyrouter: Fix wrong return value 03/278203/1
Seunghun Lee [Fri, 3 Jun 2022 09:05:12 +0000 (18:05 +0900)]
keyrouter: Fix wrong return value

According to implementation of pepper keyrouter which is a reference of
libds keyrouter, keyrouter_grab_check_grabbed() is supposed to return
true if a list of MODE_EXCLUSIVE is not empty.

This error seems to have been introduced by mistake during the
migration from pepper.

Change-Id: Ibc0d35bb4b7ba2c6381c248ddc0c861c83f6c8c1

2 years agosecurity: Enable cynara to be built 02/278202/1
Seunghun Lee [Thu, 2 Jun 2022 05:22:55 +0000 (14:22 +0900)]
security: Enable cynara to be built

This patch also removes conditional compilation for cynara. This should
be considered again if it gets needed.

Change-Id: I7f7447a0f9a0c51b39bd454180b543f9d2b420e2

2 years agotizen-util: Include an appropriate header 01/278201/1
Seunghun Lee [Thu, 2 Jun 2022 04:53:14 +0000 (13:53 +0900)]
tizen-util: Include an appropriate header

Change-Id: I7794e38a4ad2b02116a5a7fe3b02bcf339bbd3a9

2 years agosecurity: Refactor implementation for cynara 00/278200/1
Seunghun Lee [Thu, 2 Jun 2022 04:50:54 +0000 (13:50 +0900)]
security: Refactor implementation for cynara

No functional changes

Change-Id: If95362c31dae167d7d11eef1b1b2847747e0636a

2 years agosecurity: Remove meaningless double check 99/278199/1
Seunghun Lee [Thu, 2 Jun 2022 04:14:29 +0000 (13:14 +0900)]
security: Remove meaningless double check

In the function tizen_security_check_privilege(), it double-checks
a g_cynara to see if it exists and then return different value if it
doesn't exist which is contradictory.

Let's just return false if initializing the cynara has been failed
or not been initialized.

Change-Id: I24755e5b86c5e1f4bf5cf6333a4d4686a880e942

2 years agoadd review-bot as a reviewer 98/278198/1
SooChan Lim [Fri, 27 May 2022 02:39:45 +0000 (11:39 +0900)]
add review-bot as a reviewer

Change-Id: Id353d4198b4dfd5a06daf33b2580110161aa405a

2 years agoclient: add simple-shm-shell sample 97/278197/1
SooChan Lim [Thu, 19 May 2022 01:38:44 +0000 (10:38 +0900)]
client: add simple-shm-shell sample

This is a simple wayland-client which use wl_shm and wl_shell interface.

Change-Id: I3d27d37d56097ab84e46d7c59fc52329b5c9605e

2 years agoshell: implement wl_shell_interface 96/278196/1
SooChan Lim [Mon, 16 May 2022 08:39:29 +0000 (17:39 +0900)]
shell: implement wl_shell_interface

ds_shell and ds_shell_surface are resources which implement the
wl_shell_interface and wl_shell_surface_interface.

Change-Id: I551324b8f14a3aa77c920cece19e15a12e8d9981

2 years agofix the build warning 95/278195/1
SooChan Lim [Wed, 18 May 2022 05:32:31 +0000 (14:32 +0900)]
fix the build warning

Change-Id: I43f5101b85b807abef226169940d4cba5955caa9

2 years agokeyrouter: change the prefix of the internal functions 94/278194/1
SooChan Lim [Thu, 19 May 2022 10:34:06 +0000 (19:34 +0900)]
keyrouter: change the prefix of the internal functions

remove the tizen prefix.

Change-Id: I060071ea4593d2dca366965b9ad9e94dc9d0c98f

2 years agolibinput: get event time from libinput_event 93/278193/1
duna.oh [Thu, 19 May 2022 01:03:25 +0000 (10:03 +0900)]
libinput: get event time from libinput_event

Change-Id: I51c5ef5ca3d3a7b1bd27172617e484303205c46c

2 years agoexample: add an executable 'tinyds-tdm-libinput' and handle ds_seat 92/278192/1
duna.oh [Wed, 18 May 2022 09:39:54 +0000 (18:39 +0900)]
example: add an executable 'tinyds-tdm-libinput' and handle ds_seat

Change-Id: I965563b0f783c2f0ef685d9db34236e985edf9eb

2 years agoseat: fix the typo. should handle a proper device type 91/278191/1
duna.oh [Wed, 18 May 2022 09:37:26 +0000 (18:37 +0900)]
seat: fix the typo. should handle a proper device type

Change-Id: Ifd7196e8f2a803973e1083b3baba7cff07428b20

2 years agotinyds: Handle ds_seat 90/278190/1
Seunghun Lee [Wed, 4 May 2022 06:34:19 +0000 (15:34 +0900)]
tinyds: Handle ds_seat

tinyds now handles ds_seat, but only for pointer.

Change-Id: I2b48841e8dcbbe0845d5cb2facd46b78b48eafd7

2 years agoAdd ds_seat 89/278189/1
Seunghun Lee [Wed, 20 Apr 2022 01:11:12 +0000 (10:11 +0900)]
Add ds_seat

ds_seat abstracts wl_seat protocol of server implementation.

Change-Id: Ic3dcf2c9c374af762c2fbeccbe0f2174b9b1be3d

2 years agods_dpms: Init ds_dpms 88/278188/1
Junkyeong Kim [Wed, 11 May 2022 07:30:21 +0000 (16:30 +0900)]
ds_dpms: Init ds_dpms

Ds_dpms is wayland-server implemantation of tizen_dpms protocol.

Change-Id: I774a743de26bd8c516ae0991daf28c3e20f50ec5
Signed-off-by: Junkyeong Kim <jk0430.kim@samsung.com>
2 years agobackend/libinput: Support libinput backend 87/278187/1
duna.oh [Thu, 12 May 2022 06:52:31 +0000 (15:52 +0900)]
backend/libinput: Support libinput backend

add struct ds_libinput_backend, ds_libinput_input_device, etc.
add an executable 'libinput-backend' to test libinput events

Change-Id: I7134f91f14f7a1bbd65f1216c63a4c3b59cd15ee

2 years agoimplement the libds-tizen-keyrouter 86/278186/1
SooChan Lim [Wed, 11 May 2022 07:48:55 +0000 (16:48 +0900)]
implement the libds-tizen-keyrouter

libds-tizen-keyrouter supports the tizen_keyrouter extension.
This is the first impelemtaion for it. It can be added the additional
apis onward.

Change-Id: I9c819b03e38c5a1d7f8abb0257040502608e9131

2 years agoadd security api which uses cynara 85/278185/1
SooChan Lim [Wed, 11 May 2022 07:45:58 +0000 (16:45 +0900)]
add security api which uses cynara

The keyrouter and devicemgr has to check the privilege when display
server gets the requests from these extensions. For this, security api
support the previlege check with cynara.

Change-Id: I6086e60e9d611de219b05856da6668bd7510cdc4

2 years agods_output: Add ds_output_set_custom_mode 84/278184/1
Seunghun Lee [Wed, 4 May 2022 06:37:27 +0000 (15:37 +0900)]
ds_output: Add ds_output_set_custom_mode

Change-Id: Ie55a79f11a1450bae3ff6d83bb735c854459f050

2 years agotinyds: Fix passing wrong arg to wl_container_of 83/278183/1
Seunghun Lee [Wed, 4 May 2022 06:31:58 +0000 (15:31 +0900)]
tinyds: Fix passing wrong arg to wl_container_of

This led segfault illegally accessing wrong pointer.

Change-Id: I28e64be8c0d0abd5ee8e164353a5c038a2c7ce52

2 years agotinyds-tdm: Fix build break 82/278182/1
Seunghun Lee [Tue, 26 Apr 2022 00:22:06 +0000 (09:22 +0900)]
tinyds-tdm: Fix build break

Change-Id: I75ab91d3d8195592b3aa661297cd8fa8f80d73f7

2 years agobackend/wayland: Implement start() interface of ds_backend 81/278181/1
Seunghun Lee [Fri, 22 Apr 2022 00:17:57 +0000 (09:17 +0900)]
backend/wayland: Implement start() interface of ds_backend

The wayland backend defers creating new outputs until a user calls
ds_backend_start() even though a user requests creation of output before
ds_backend_start().

The wayland backend now emits a signal of new_output if a user calls
ds_backend_start(), which is for the behavior of ds_backend_start() to
be consistent regardless of the actual running backend.

Change-Id: I8d102ee90773c65634e7e360990abf995a156c29

2 years agotinyds: Use WAYLAND_DISPLAY and WAYLAND_SOCKET for wl backend 80/278180/1
Seunghun Lee [Mon, 25 Apr 2022 07:06:21 +0000 (16:06 +0900)]
tinyds: Use WAYLAND_DISPLAY and WAYLAND_SOCKET for wl backend

Instead of assuming the name of wayland display server by iterating
arbitrary number of names, it uses values of WAYLAND_DISPLAY and
WAYLAND_SOCKET environments.

The library of wayland-client uses these values when trying to connect
to wayland server.

Change-Id: Ieea1e2e55755ec10b6743568abf274e6a64aaf28

2 years agobackend/wayland: Remove writable flag from event source 79/278179/1
Seunghun Lee [Thu, 21 Apr 2022 07:56:48 +0000 (16:56 +0900)]
backend/wayland: Remove writable flag from event source

Instead of having a writable flag on event source, it just marks
wayland event source as needing a post-dispatch check. The event loop
will call dispatch function again after all dispatching is done, with
mask = 0.

Change-Id: Iefdff50e2fa06d244f1ca3bffd0faa70da6ef364

2 years agoexamples/tinyds: Handle ds_pointer 78/278178/1
Seunghun Lee [Thu, 21 Apr 2022 05:05:11 +0000 (14:05 +0900)]
examples/tinyds: Handle ds_pointer

This adds listeners of ds_pointer and prints logs.

Change-Id: I10372862b9111e2cf01f88753e16a5036ffe8406

2 years agoexamples/tinyds: Enhance readability 77/278177/1
Seunghun Lee [Wed, 20 Apr 2022 11:16:37 +0000 (20:16 +0900)]
examples/tinyds: Enhance readability

No functional changes

- Use a first argument of function as a prefix of function name.
- Rename some of function name more clearly.
- Remove forward declaration of event handlers.

Change-Id: Id6c6dc54b638817caf47d4ba50692149e7ac9c7e

2 years agoexamples/tinyds: Clean up all views when finish server 76/278176/1
Seunghun Lee [Wed, 20 Apr 2022 11:11:59 +0000 (20:11 +0900)]
examples/tinyds: Clean up all views when finish server

Even though all view would have been cleaned up by an destroy event of
xdg_surface, this is just to clean up views explicitly just in case.

No functional changes.

Change-Id: I3a91adb68d665b334c56f607975734a7e95dbcfd

2 years agoexamples/tinyds: Clarify single output support 75/278175/1
Seunghun Lee [Wed, 20 Apr 2022 10:54:19 +0000 (19:54 +0900)]
examples/tinyds: Clarify single output support

tinyds doesn't support multiple outputs for now, so don't pretend to
support multiple outputs.

Change-Id: Ic28b275423e5618677f34373ad677ad387a7f754

2 years agoexamples/tinyds: Remove redundant referencing ds_buffer 74/278174/1
Seunghun Lee [Wed, 20 Apr 2022 09:10:04 +0000 (18:10 +0900)]
examples/tinyds: Remove redundant referencing ds_buffer

ds_buffer is supposed to be referenced by ds_output while using it, so
tinyds doesn't have any reasons to reference a ds_buffer for the output.

Change-Id: Ic1183d1517fb89711e0a53d3c3271ea2a1f598e9

2 years agoAdd ds_touch 73/278173/1
Duna Oh [Wed, 20 Apr 2022 11:57:38 +0000 (20:57 +0900)]
Add ds_touch

Change-Id: I62c506d260eebdb5c4802ceaf54adc530255905d

2 years agoxdg_shell: Destroy ds_xdg_surfaces when cleaning up client 72/278172/1
Seunghun Lee [Wed, 20 Apr 2022 06:45:55 +0000 (15:45 +0900)]
xdg_shell: Destroy ds_xdg_surfaces when cleaning up client

This patch fixes memory corruption caused by removing
ds_xdg_surfaces's link in destroy_xdg_surface().

When wl_client is destroyed, ds_xdg_shell_client can be destroyed
before its own ds_xdg_surfaces. This led to memory corruption because of
illegal access to a freed memory when trying to remove list of
ds_xdg_surface.link.

Change-Id: I40fa5c1121c86f0674d7df81643e9805594e9dae

2 years agoexamples/tinyds: Handle ds_keyboard 71/278171/1
Seunghun Lee [Wed, 20 Apr 2022 02:29:17 +0000 (11:29 +0900)]
examples/tinyds: Handle ds_keyboard

tinyds now handles ds_keyboard, and it may be terminated by pressing
Alt + Ctrl + Shift + BackSapce.

Change-Id: I6333e2b239f3d7b28e62ca3997180e1428c9c4f7

2 years agopackaging: Add missing file mistakenly unpacked 70/278170/1
Seunghun Lee [Mon, 18 Apr 2022 04:27:17 +0000 (13:27 +0900)]
packaging:  Add missing file mistakenly unpacked

Change-Id: I4e9709f7677e717951c466a1092a76d2ca207673

2 years agoEnable user to get keyboard modifiers 69/278169/1
Seunghun Lee [Mon, 18 Apr 2022 01:37:06 +0000 (10:37 +0900)]
Enable user to get keyboard modifiers

input-device-test take modifiers into account when handling key.

Change-Id: Ic72c3636c55dd9c43ddd14959ac442bd6cceaeed

2 years agoexamples: Rename pointer-test to input-device-test 68/278168/1
Seunghun Lee [Mon, 18 Apr 2022 01:35:14 +0000 (10:35 +0900)]
examples: Rename pointer-test to input-device-test

This patch also adds code for ds_keyboard in input-device-test.

Change-Id: I39b92b87aff0f0f701afc1d4ac4e8674f3217715

2 years agobackend/wayland: Support ds_keyboard 67/278167/1
Seunghun Lee [Mon, 18 Apr 2022 01:33:19 +0000 (10:33 +0900)]
backend/wayland: Support ds_keyboard

Change-Id: Ifadcdd2649fd8c7d3d912b107c2d531801cb189e

2 years agoAdd ds_keyboard 66/278166/1
Seunghun Lee [Mon, 18 Apr 2022 01:29:23 +0000 (10:29 +0900)]
Add ds_keyboard

A ds_keyboard is for abstracting phisical keyboard device.

Change-Id: I97b3b02d37abd3adefb9da0b899a54bb58919784

2 years agoAdd missing header for alloca 65/278165/1
Seunghun Lee [Fri, 15 Apr 2022 07:11:57 +0000 (16:11 +0900)]
Add missing header for alloca

Change-Id: If2bcc98ec8ea551ac860d67bddb158817bc20187

2 years agoAdd ds_input_device, and ds_pointer. 64/278164/1
Seunghun Lee [Thu, 7 Apr 2022 01:46:48 +0000 (10:46 +0900)]
Add ds_input_device, and ds_pointer.

This patch is just the beginning of ds_input_device.

Currently, a ds_input_device is created only on the wayland backend, and
it only supports a ds_pointer.
Other devices like keyboard and touch, and other backends like libinput
will be supported in future patches.

Change-Id: I9efce1bea5fd362d5bcee86d92a81076b0be48bc

2 years agoUpdate CODEOWNERS 63/278163/1
임수찬/Tizen Platform Lab(SR)/삼성전자 [Mon, 11 Apr 2022 00:27:52 +0000 (09:27 +0900)]
Update CODEOWNERS

Change-Id: I8806c08d307bf3e117c623991b0960b7046477a4

2 years agoUpdate CODEOWNERS 62/278162/1
임수찬/Tizen Platform Lab(SR)/삼성전자 [Mon, 11 Apr 2022 00:27:40 +0000 (09:27 +0900)]
Update CODEOWNERS

Change-Id: I5a2b3c8ba058912115ad56e0366dc54341d19e9b

2 years agoadd ws_members as reviewers 61/278161/1
SooChan Lim [Wed, 30 Mar 2022 10:57:41 +0000 (19:57 +0900)]
add ws_members as reviewers

Change-Id: If915ead2bd39e85ed26a75fc83e7514024aca4bd

2 years agoadd extern 'C' at tbm_server.h 60/278160/1
SooChan Lim [Wed, 30 Mar 2022 07:44:45 +0000 (16:44 +0900)]
add extern 'C' at tbm_server.h

Change-Id: I18ffdda44282b470ea96edef8cd572cbe7688bce

2 years agoAdd ds_tbm_server 59/278159/1
Seunghun Lee [Mon, 28 Mar 2022 11:03:20 +0000 (20:03 +0900)]
Add ds_tbm_server

ds_tbm_server initializes wayland_tbm to allow wl_client to use
tbm_surface as a wl_buffer.

Change-Id: I5fcf1f37bd9f410f7d400ac3a918c159dbb07fbc

2 years agoFix typo on a word of header guard 58/278158/1
Seunghun Lee [Thu, 17 Mar 2022 10:52:29 +0000 (19:52 +0900)]
Fix typo on a word of header guard

Change-Id: I780a95bc06fda2a2e71630741e949da011457069

2 years agoAdd an example of using ds_tdm_buffer_queue 57/278157/1
Seunghun Lee [Thu, 17 Mar 2022 07:40:37 +0000 (16:40 +0900)]
Add an example of using ds_tdm_buffer_queue

Dependeing on the declaration of USE_TDM_BUFFER_QUEUE macro, tinyds-tdm
may be run with ds_tbm_buffer_queue.

Change-Id: I0e9617a6d9a18c00685fc0e25ac2a531f400e948

2 years agolibds-tizen: Add ds_tdm_buffer_queue 56/278156/1
Seunghun Lee [Wed, 16 Mar 2022 04:18:21 +0000 (13:18 +0900)]
libds-tizen: Add ds_tdm_buffer_queue

A ds_tdm_buffer_queue is a buffer queue that is able to be acquired from
ds_tdm_output.

A ds_tdm_buffer_queue provides a handle of native queue to a user and
the user may pass it to a renderer. The renderer then should think of
native queue as tbm_surface_queue_h. With the tbm_surface_queue_h, the
renderer may dequeue a surface from it and draw on the dequeued buffer.
After finish drawing on the buffer, the renderer should enqueue it to
the tbm_surface_queue_h.

As soon as the renderer enqueues buffer to the tbm_surface_queue_h, the
user can recieve a notification that the buffer can be acquired from the
ds_tbm_buffer_queue using ds_tdm_buffer_queue_add_acquirable_listener().
Then user may acquire a buffer from the ds_tdm_buffer_queue and attach
it to a ds_output.

Note that although the renderer may enqueue a buffer on different thread
from the thread working on libds, but libds will call a callback
function which is registered using
ds_tdm_buffer_queue_add_acquirable_listener() on the thread working on
libds.

Change-Id: Ib50d2f11cdb27c0aa34b6beeecc73f012032c685

2 years agoAdd directories for tizen features 55/278155/1
Seunghun Lee [Wed, 16 Mar 2022 02:43:49 +0000 (11:43 +0900)]
Add directories for tizen features

Change-Id: Ie629354a2c689293b678cc9cc4d22227a5068a94

2 years agoBuild 'include' subdir after 'src' 54/278154/1
Seunghun Lee [Tue, 8 Mar 2022 07:21:28 +0000 (16:21 +0900)]
Build 'include' subdir after 'src'

A variable 'features' referred from 'include' subdir is set during build
of 'src'.

Change-Id: Idd3db7a8384b6450fddb8173d9ec8cf4c358a42f

2 years agooutput: Add ds_output_enable/disable APIs 53/278153/1
Seunghun Lee [Fri, 4 Mar 2022 07:27:16 +0000 (16:27 +0900)]
output: Add ds_output_enable/disable APIs

Change-Id: Idd7c1c7770b136bf240adbe34214101558aa31fe

2 years agoRemove too noisy logs 52/278152/1
Seunghun Lee [Fri, 4 Mar 2022 05:49:34 +0000 (14:49 +0900)]
Remove too noisy logs

Change-Id: I4144747488e21d8116e28bbb6b699a79812513ff

2 years agoFix formatting 51/278151/1
Seunghun Lee [Fri, 4 Mar 2022 05:25:20 +0000 (14:25 +0900)]
Fix formatting

Change-Id: I01c89e5adaa5180a116cc61fedce055bb90290bd

2 years agobackend/tdm: Remove prefix tdm from static functions 50/278150/1
Seunghun Lee [Fri, 4 Mar 2022 01:49:50 +0000 (10:49 +0900)]
backend/tdm: Remove prefix tdm from static functions

It's to avoid confusion with tdm api.
For static functions, the names chosen aren't as important.

Change-Id: I917a027f0c94c67c18d3b7823bc216eed0080b60