platform/core/uifw/libds-tizen.git
21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

21 months 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

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

Change-Id: I01c89e5adaa5180a116cc61fedce055bb90290bd

21 months 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

21 months agobackend/tdm: Split commit function into small functions 49/278149/1
Seunghun Lee [Fri, 4 Mar 2022 01:44:57 +0000 (10:44 +0900)]
backend/tdm: Split commit function into small functions

No functional changes. It improves readability.

Change-Id: Ib762d10a2ad085da18b2c21e00cbb66f2193d345

21 months agooutput: Rename function more explicitly 48/278148/1
Seunghun Lee [Thu, 3 Mar 2022 10:03:50 +0000 (19:03 +0900)]
output: Rename function more explicitly

Change-Id: I97122db26edd0163f5a70dc5eafaace4df1d4127

21 months agobackend/tdm: Get buffer only if it's necessary 47/278147/1
Seunghun Lee [Thu, 3 Mar 2022 10:01:28 +0000 (19:01 +0900)]
backend/tdm: Get buffer only if it's necessary

Change-Id: I740870ecdf85e855fc583141bccc3a73dd8e4fec

21 months agoexamples: Use output mode instead of arbitrary size 46/278146/1
Seunghun Lee [Thu, 3 Mar 2022 09:03:25 +0000 (18:03 +0900)]
examples: Use output mode instead of arbitrary size

Change-Id: I46b576bccbd469ed386dc4d284a7a71311e557af

21 months agobackend/tdm: Update output mode 45/278145/1
Seunghun Lee [Thu, 3 Mar 2022 09:02:49 +0000 (18:02 +0900)]
backend/tdm: Update output mode

Change-Id: I1c23428392249f74376dc40aae5da89011165b17

21 months agoAnnotate a refresh variable 44/278144/1
Seunghun Lee [Thu, 3 Mar 2022 09:01:14 +0000 (18:01 +0900)]
Annotate a refresh variable

Change-Id: I6019b86ea994d8fc4073eaf0cdba318489f844a5

21 months agoadd CODEOWNERS 43/278143/1
SooChan Lim [Sun, 6 Mar 2022 23:28:59 +0000 (08:28 +0900)]
add CODEOWNERS

which allow the members to be addded as reviewers when the PR is
uploaded.

Change-Id: I2baae3daff64061cf4436b91b22c64f42ced740a

21 months agoPut the extern "C" 42/278142/1
SooChan Lim [Sun, 6 Mar 2022 23:10:09 +0000 (08:10 +0900)]
Put the extern "C"

Without this extern "C", C++ program which uses libds does not recognize
the symbols in libds header files.

Change-Id: I2b9904c6dd9f50eab4c15f66ce3b6d9328b213b2

21 months agochange the version into 0.1.2 41/278141/1
SooChan Lim [Sun, 6 Mar 2022 23:09:00 +0000 (08:09 +0900)]
change the version into 0.1.2

Change-Id: I747595f287cf73a548e03e569c6a18f413837d1b

21 months agoMove all source code to src directory 40/278140/1
Seunghun Lee [Thu, 3 Mar 2022 03:11:03 +0000 (12:11 +0900)]
Move all source code to src directory

Change-Id: I55fd4d95d633a2a6d557d7409bbd6aba6b4b8d03

21 months agoexamples: Use pixman helper 39/278139/1
Seunghun Lee [Wed, 2 Mar 2022 09:14:12 +0000 (18:14 +0900)]
examples: Use pixman helper

Change-Id: I22a63f7af7c9b054d2be52f1e6dbbe92291ee96d

21 months agoAdd tdm backend server and client as an example 38/278138/1
Seunghun Lee [Wed, 2 Mar 2022 09:09:39 +0000 (18:09 +0900)]
Add tdm backend server and client as an example

Change-Id: If5305c3ee0ae11d8e0c9d2aed581e4142a2e4c2a

21 months agobackend/tdm: Extract buffer code into functions 37/278137/1
Seunghun Lee [Wed, 2 Mar 2022 02:43:09 +0000 (11:43 +0900)]
backend/tdm: Extract buffer code into functions

Change-Id: I28a2f6bec27f85f80bcf91f1ce3cad7d4296d940

21 months agoAdd build options of backends 36/278136/1
Seunghun Lee [Wed, 2 Mar 2022 02:36:44 +0000 (11:36 +0900)]
Add build options of backends

Change-Id: I344dd28196280c91f4c3fa064bc60f5a439b3fa2

21 months agoAdd missing cleanup 35/278135/1
Seunghun Lee [Wed, 2 Mar 2022 02:08:12 +0000 (11:08 +0900)]
Add missing cleanup

Change-Id: I4b035f0c5614025355b9d5f213f28424bfdad1a4

21 months agoAdd tinyds on tdm (wip) 34/278134/1
Seunghun Lee [Thu, 24 Feb 2022 08:36:44 +0000 (17:36 +0900)]
Add tinyds on tdm (wip)

Change-Id: I058c8c05db6e6460caf50ad6eee59af2e9d13ff4

21 months agoFlesh out ds_buffer 33/278133/1
Seunghun Lee [Thu, 24 Feb 2022 08:36:08 +0000 (17:36 +0900)]
Flesh out ds_buffer

Change-Id: I3c8bb8706b3a1bfdb05eeb31eb9715fd96933ed5

21 months agoMove ds_backend implementation 32/278132/1
Seunghun Lee [Thu, 24 Feb 2022 06:59:36 +0000 (15:59 +0900)]
Move ds_backend implementation

no functional changes

Change-Id: If598451fc62155396478358b3c617c14112c8449

21 months agoAdd an example of tdm backend 31/278131/1
Seunghun Lee [Thu, 24 Feb 2022 06:01:35 +0000 (15:01 +0900)]
Add an example of tdm backend

Change-Id: I836ba2b5b88d3799c7b095051e255779d653fa10

21 months agoFlesh out tdm backend 30/278130/1
Seunghun Lee [Thu, 24 Feb 2022 06:01:07 +0000 (15:01 +0900)]
Flesh out tdm backend

Change-Id: Idf59ff423465f1f44102058ff017c12b5f54f042

21 months agoAdd tbm allocator 29/278129/1
Seunghun Lee [Thu, 24 Feb 2022 05:58:44 +0000 (14:58 +0900)]
Add tbm allocator

Change-Id: If58f8810ce84cd6ac6fe5cb36127fce6f2e3e655

21 months agoFirst draft for tdm backend 28/278128/1
Seunghun Lee [Wed, 23 Feb 2022 04:39:35 +0000 (13:39 +0900)]
First draft for tdm backend

Change-Id: I2f0deeeb9990495907f9e805e6e43401fb28e008

21 months agoRemove _t suffix from struct 27/278127/1
Seunghun Lee [Wed, 2 Mar 2022 02:03:37 +0000 (11:03 +0900)]
Remove _t suffix from struct

Change-Id: I36406c49b9be1cf2d0c0a79288a16bccd3c23286

21 months agoInitial libds 26/278126/1
Seunghun Lee [Mon, 21 Feb 2022 04:58:09 +0000 (13:58 +0900)]
Initial libds

Change-Id: I1ce11f5a018ea4adf7817cda3a5f0cec3d2787ad

21 months agoInitial commit 25/278125/1
임수찬/Tizen Platform Lab(SR)/삼성전자 [Thu, 19 May 2022 04:40:51 +0000 (13:40 +0900)]
Initial commit

Change-Id: I80ef1a95978dba596bc1be9091f5906918d7f709

22 months agoInitial empty repository master
Tizen Infrastructure [Thu, 7 Jul 2022 06:05:18 +0000 (06:05 +0000)]
Initial empty repository