summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-02-05Improve integration of callsyncguppy_7.0.0guppy_6.99.5guppy/7.0.0guppy/6.99.57.0.06.99.5José Bollo1-46/+37
Avoid concurrency with the thread managing the event loop by using condition variables. Also, improve safety of link to event loop: instead of using the default one that depends on the current thread and that might be shared with other items, use an explicit new one running in a dedicated thread. Change-Id: I3d6fd2fd52a97dae42228657a09b8b0a15b96edf Signed-off-by: José Bollo <jose.bollo@iot.bzh> (cherry picked from commit e88fb8522d335b9a7fb723ae5656dc9b2e7850c7)
2018-08-20Introduce simple APIguppy_6.99.4guppy_6.99.3guppy_6.99.2guppy_6.99.1guppy_6.90.0guppy/6.99.4guppy/6.99.3guppy/6.99.2guppy/6.99.1guppy/6.90.0flounder_5.99.6flounder_5.99.5flounder/5.99.6flounder/5.99.56.99.46.99.36.99.26.99.16.90.05.99.65.99.5Kazumasa Mitsunari2-60/+372
Originally, API of libwindowmanager uses json_object type as parameters. This causes useless coding and mistakes such as double free with json_object_put accidentally. So this patch introduces simple API not using json_object as parameters. Bug-AGL: SPEC-1582 Bug-AGL: SPEC-1565 Change-Id: Id0a8e74739f0c73d294843c5ce154d0a36dd9279 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-02Add new parameter 'scale' for multiple resolutionflounder_5.99.4flounder_5.99.3flounder/5.99.4flounder/5.99.35.99.45.99.3Tadao Tanikawa1-1/+11
To support rendering which fits screen resolution, new parameter 'scale' is added to API, getDisplayInfo If window manager doesn't support multi-resolution, scale is set 1.0 for backward compatibility. Bug-AGL: SPEC-1611 Change-Id: I1050dd6b3ac919ce5f495ca8ea0bf13c7240b501 Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2018-07-13Bug fix: Enable screenUpdated and error eventflounder_5.99.2flounder/5.99.25.99.2Kazumasa Mitsunari1-2/+4
This patch fixes the bug that application can't get the screenUpdated and error events. Bug-AGL: SPEC-1532 Change-Id: I260179916ea487faf761c40efc473ae415707050 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-09Rename event names to lower camel caseYuta Doi1-3/+3
Change-Id: I8c506bc85941bcae59835f7a5dc443cadab044fe Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-07-09Rename APIsYuta Doi2-12/+26
rename WindowManager APIs as follows: - activateSurface -> activateWindow - deactivateSurface -> deactivateWindow The "surface" means information of display material frame buffer anaged by Graphics Subsystem (Weston). And the "window" means the right to draw on display. The "surface" is physical information and used inside WindowManager. So we think it is not good for "surface" to be included in API name. These APIs provide the function which is to activate/deactivate the right to draw for the applications. So we change to "activateWindow/deactivateWindow". We plan to delete the old API by GG. Therefore the applications can use old APIs until GG, but the warning "-Wdeprecated-declarations" is occured when compile. After GG, old APIs can not be used. If use it, the error is occured when compile. Bug-AGL: SPEC-1565 Change-Id: I8a4aa5b8b43e1d90fe28964a41257b1947ab5174 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-29Revert "Change Visible and InVisible event to broadcast"Kazumasa Mitsunari1-2/+0
This reverts commit 026af4256b9b69ffd52972d6da0cb394dff2b0e6. The events should be only sent to each application, so revert this commits. Use "screen_updated" instead. Bug-AGL: SPEC-1532 Change-Id: I42ba2812a0b8b9f04614f6668c5b925f55111659 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-06-29Add screen_updated and error eventKazumasa Mitsunari2-1/+9
Add events screen_updated * emitted when the displayed application changed. error * emitted when a error happens after request is accepted. Related commit: https://gerrit.automotivelinux.org/gerrit/#/c/14761/ Change-Id: I3c91c053668490fe68e45121a34e1fae5cd403fc Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-12-20Change Visible and InVisible event to broadcastflounder_5.99.1flounder/5.99.15.99.1zheng_wenlong1-0/+2
Visible/Invisibile event which is sent to application from window manager, becomes boardcasted in order that HomeScreen needs to know which application becomes visibile. Bug-AGL: SPEC-1214 Change-Id: Id168789f4eca9eea61fc8b671a9aeab2224694bf Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
2017-12-20Add APIs which can get information about the display and the surface areaYuta Doi2-1/+200
getDisplayInfo() can get the display information as follows: - width[pixel] - height[pixel] - width[mm] - height[mm] NOTE: It uses wl_output::geometry() for getting physical width[mm] and height[mm] of the display, but the value is different with measured value. value from wl_output::geometry(): width:320 height:520 measured value : width:193 height:343 getAreaInfo() can get the information of area drawn by the application as follows: - x-coordinate - y-coordinate - width - height The details are described in doc/ApplicationGuide.md in project apps/agl-service-windowmanager-2017. Bug-AGL: SPEC-1087 Change-Id: Icee00af4ab210b056cc67c2868ef2c594da1dbe1 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-12-19Fix the bug in error caseKazumasa Mitsunari1-10/+1
If window manager server returns fail(afb_req_fail) in requestSurface, the illegal memory access to json object happens. So fix not to access to the json object after using it in afb_wsj1_call_j. Change-Id: I1f422851b6476187f104dcc27d05ba13094b52d6 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-12-12Support XDG applicationTadao Tanikawa2-0/+53
To run XDG application on AGL HomeScreen/WindowManager, a new binding API of WindowManager is added. This api is used only by AGL XDG-Launcher and all xdg applications should be packed as wgt compatible to AGL Application framework. Bug-AGL: SPEC-1096 Change-Id: Iea43c65ce03a352773c47e125490990f32dc9695 Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2017-12-04Remove exit code when the websocket connection is disconnectedKazumasa Mitsunari1-1/+0
When the websocket connection to Window Manager is disconnected due to some reason, libwindowmanager calls exit(1). Remove this not to kill applications suddenly. Change-Id: Ibab1600de0e6ea52ec7858fedcdff5a26cde4ab3 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-13Remove the setenveel_4.99.3eel/4.99.34.99.3Yuta Doi1-11/+1
The setenv process which sets surface_id to QT_IVI_SURFACE_ID depends on Qt, so it is removed. The setenv process was moved to qlibwindowmanager. Change-Id: I8ed6d25beb6638836fd7d54e5bf722ed14a246bc Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-13Add debug message macros controlled by environment variableYuta Doi2-20/+101
Add a HMI_DEBUG macro to print debug messages. It is controlled by the USE_HMI_DEBUG environment variable. Change-Id: I0cdf0069f67f561156c0f78ff322984733091002 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-10Remove unnecessary debug logKazumasa Mitsunari1-1/+0
Change-Id: I4cf29c7258958c8b0663a0d8ff8d3dd257867e4d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-10Remove unnecessary comments and variableYuta Doi1-5/+2
Remove the comments and variable which are unnecessary and unused already. Change-Id: Id376c1d4a3b6968fed7050662fa5d42b7026bb34 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-08Change requestSurface() to return surface_idYuta Doi1-1/+1
libwindowmanager set surface_id to QT_IVI_SURFACE_ID for now, but the process will be removed in the future because it depends on Qt. So requestSurface() is changed to return surface_id. If requestSurface() occurs errors, negative value is returned. It is necessary to use return value of requestSurface() for the applications. Change-Id: Ice2a5fe152a3957f0132e0358ebd8a535bdfa7ce Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-02Use a version for the libraryKazumasa Mitsunari1-0/+1
To prevent bitbake package_qa issue, adding version is necessary. So I added a version number of 0.1.0. Bug-AGL : SPEC-1000 Change-Id: Ic7a22fe04cdab3d323ca75f9292a09ec29fd6d07 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-02Replace json_object_object_get() with json_object_object_get_ex()Yuta Doi1-14/+38
json_object_object_get() is deprecated so it causes compile warning. Change-Id: Id43c3e098a58bd9a1a20e9fb55bc194babd6f48d Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-02Replace 'constexpr' with 'const char*'Yuta Doi2-4/+8
'constexpr' causes the warning [-Wwrite-strings]. So replace 'constexpr' with 'const char*'. Change-Id: I03e2c7b53e4db6cb5b804c66cb88ae15e2387eb8 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-01Modify the enum starting pointKazumasa Mitsunari1-1/+1
The windowmanager server treats the event list as a vector, thus it numbers the events starting from 0. Likewise we need to change the eventlist to start from 0 in this library. Related commit : https://gerrit.automotivelinux.org/gerrit/#/c/11481/ Bug-AGL: SPEC-987 Change-Id: I72a36033191b0a43fc8ab6923e2897715d02bcbd Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-01Change parameter from char* to json_objectKazumasa Mitsunari2-47/+80
For future extensibility, change the argument parameter to json_object Bug-AGL: SPEC-990 Conflicts: src/libwindowmanager.cpp Change-Id: I7015fe26d22489f250b67907870d2863d1e8158b Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-10-26Add library splitted from agl-service-windowmanagerKazumasa Mitsunari3-0/+626
Related commit : https://gerrit.automotivelinux.org/gerrit/#/c/11451/ [Patch Sets 2] - Remove doc/* because these documents are integtrated to agl-service-windowmanager-2017. https://gerrit.automotivelinux.org/gerrit/#/c/11507/1 - Modify the function comments to doxygen format. Bug-AGL : SPEC-993 Change-Id: Id82ee513e06f0c12eba044b8d42d8dde68063168 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>