aboutsummaryrefslogtreecommitdiffstats
path: root/src/app.cpp
AgeCommit message (Collapse)AuthorFilesLines
2018-06-12Bug fix: Add mutex lockYuta Doi1-0/+9
Change-Id: Iaa47eb9577167d57f56657660d278ad420306c62 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-12Bug fix: Refer removed surface id in vector of pending_end_drawYuta Doi1-1/+3
Change-Id: I76d86bb19388334dd640fbe07e8d307dec9b61cc Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-12Bug fix: Calling enqueue_flushdraw is later than emit_syncdrawYuta Doi1-3/+3
Change-Id: Idd632363727d7e1f4584d114e958c8689558ec10 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-08Bug fix: convert nullptr to stringYuta Doi1-1/+9
Change-Id: I418de2403730998a6437476e878cd03f4c40cb0d Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-05Bug fix: refer the released memory of role nameYuta Doi1-9/+7
Change-Id: I67aa440a37f8955da2d7daaf1f6ace95016b763d Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-01Modify request_surface for XDG appYuta Doi1-3/+6
Change-Id: I91ac5d09f985e2dda1b0ed6274f01106c87807be Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-01Modify API of PolicyManagerYuta Doi1-166/+184
and change the process for stopping timer Change-Id: Id7f9ba1c25adc188b01d8407f7043ea22da113d9 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-29PolicyManager uses sd_event loop for the process of check policyYuta Doi1-13/+6
Change-Id: I1e7f7c2085ec30e09a53a67c0ad9c51b2bf53578 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-28The surfaces are managed by using the roles instead of the drawing namesYuta Doi1-45/+33
Change-Id: I7373a54f2df334ac223b51a6cb9a643a88e7c33c Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-25Add new eventKazumasa Mitsunari1-1/+20
Add "screen_updated" event. This means new application is visible from the user. key ... "id" value ... application_id Change-Id: I548ba30f882d126d538b44281afa36625a1325e4 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-05-25Delete label "role" for the API activateSurface and deactivateSurfaceYuta Doi1-38/+31
Change-Id: Ia59c0f3ad9d44e0836520abc50419d0be006acdf Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-24VideoPlayer is moved to BG layer when becoming invisibleYuta Doi1-0/+4
Change-Id: Ifff08a2ea793365a303363b4985cdbeb31fbdf24 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-22getCarInfo() can get lightstatus.brake statusYuta Doi1-0/+5
getCarInfo() can get also the lightstatus brake as follows: - lightstatus brake : true/false The details are described in doc/ApplicationGuide.md in project apps/agl-service-windowmanager-2017. Change-Id: I29b2c5b4fe129407c3b304b2fa981cbd3f4b6847 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-21Add lightstatus brake ON/OFF eventYuta Doi1-0/+41
Change-Id: Id2c61fc6e102394f5ba08effe0cfac448b337176 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-21Waiting for the surface of new app is created before setting the sizeYuta Doi1-0/+6
Change-Id: I7e60330739388b5b5dc339076f432e6ca77f12b4 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-18Add API which can get information about the car stateYuta Doi1-5/+32
getCarInfo() can get the car state informations as follows: - parking brake state : true/false - accelerator pedal position : 0-127.5 - car state : "stop"/"run" The details are described in doc/ApplicationGuide.md in project apps/agl-service-windowmanager-2017. Change-Id: I2a4a06ceeedbd2d3b1188a7fb442e1272e46897b Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-17App (ResourceManager) class has the current car infoYuta Doi1-5/+37
and LowCanClient does not check whether CAN signal value is changed Change-Id: I41dfd0772f8fb4db70c4b5c0caa35791600abc54 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-14Add policy of switchng accel pedal status to dummy stmYuta Doi1-0/+7
Change-Id: Iea389d3899f2d01430400374ed0ab0f2fe882ec8 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-11The role "video" can be shown in split area for ALSYuta Doi1-13/+18
and the role "restriction" can use the areas other than "restriction.split.sub" Change-Id: I5aab163409cf5284b876dc9e44102ee620344472 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-10Fix switching visibility when deactivatingYuta Doi1-0/+2
commit_change for ivi-wm was not called when deactibating, therefore added it. Change-Id: I4558ddaace0f63c6ecbc652d8af29074454decac Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-10Replace json_object_from_file to inputJsonFilieYuta Doi1-3/+3
and remove unnecessary header Change-Id: Ia4200a9742d62933328d0518731710413caa1a5c Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-10Modify for restriction roleYuta Doi1-2/+5
- Add policy for restriction to dummy stm. - Add the function which inputs json file because json_object_from_file can not allows up to only 4KB file. - Bug fix in json files. - Delete unexpected characters. - Delete description because it does not follow the format of json array. Change-Id: I2f8fba1d1001cf244e2531fe3a1a738d5a48091b Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-09Add conversion map role2appYuta Doi1-14/+7
Change-Id: I1e194ecc9fb90ccb4c24e114ac1513ed19f0c0a3 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-05-09Add parking brake ON/OFF eventYuta Doi1-3/+39
Change-Id: I3b9face35972a275918ac4f95f4a97df035ee924 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-04-27Add PolicyManager, related classes and some config filesYuta Doi1-365/+537
- PolicyManager Decide next layout by using occured event and current state based on policy table. This PolicyManger is reference and the OEMs can replace it. - LayoutManager Change the current layout to the layout which decided by PolicyManager. NOTE: The functions of this class had been included in App class. The part of function of this class remain there yet. - LowCanClient Receive the CAN signal from low level CAN service. - app.db Define the applications name and its role. This file will be deleted when the names and roles can be given by other module. - layout.cb Define the layouts and areas which are included by the layout. - role.db Define the roles of the applications. Change-Id: I2f84bdf5e68355e022f516cee9a1db88efe58825 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-03-19Change reply timingKazumasa Mitsunari1-24/+32
Some events were emitted in a function before it replies. This patch changes * The function checks parameter then reply error if it is incorrect. * After checking parameters, the function continues to process. The exeption is the syncronous functions such as requestSurface. Change-Id: I168eba3e2b70d53615a4221bcbbba6bc6096c1db Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-03-19Send visible event after commit changeKazumasa Mitsunari1-1/+1
Visible event was emitted before commit change of ivi-controller. This patch changes the event emitted after commit change. Bug-AGL: SPEC-1332 Change-Id: Ib8a6d3a513c1fe4a28111b2ad256122289fc5cc0 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-03-09Enable fallback, then display applicationsflounder_5.99.1flounder/5.99.15.99.1Kazumasa Mitsunari1-3/+16
This patch enables the app to show if it is not registered in layers.json. The original installed app was not shown because the role of app is not registered in WM as default. [Patch set2] Add the same process into requestSurface for RunXDG Bug-AGL : SPEC-1331 Change-Id: Ie99b971023a95a1924795b1ffc7311a630940b1d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-02-09Add APIs which can get information about the display and the surface areaYuta Doi1-11/+127
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. Bug-AGL: SPEC-1087 Change-Id: I9e6d64ff04e0845b83c69db374d06af17a6d6b66 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-01-24Change the protocol from ivi-controller to ivi-wmYuta Doi1-63/+16
This patch is for master branch only. For using wayland-ivi-extension version 2.x, the wayland protocol in WindowManager is changed from ivi-controller to ivi-wm. NOTE: If using this patch, the modification for AGL/meta-agl which described in SPEC-1244 is necessary. Bug-AGL: SPEC-1244 Change-Id: I5489db202dfeec8f4626aee53bd1f86c145b95d9 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-01-11Fix screen flickerKazumasa Mitsunari1-2/+0
If the app is on background layer for CES hack such like Navigation, when the user push "Home" shortcut botton quickly many times, the app on background layer appears with flickering. So fix the issue. Bug-AGL: SPEC-1247 Change-Id: I777607a99914f0141886e817cb6a5e486f1105f0 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-12-27Merge "Fix build error in gcc 7.2"Jan-Simon Moeller1-1/+0
2017-12-25Enable an application re-launchKazumasa Mitsunari1-1/+2
When an application dies after requestSurface, the application can't be launched because Window Manager doesn't know the application is dead and doesn't clean up its database. In other case, when Mixer app dies due to pulse audio crash just before Window Manager handles surface memory, the connection between weston and Window Manager is dead. So add following * Add context setting with window manager clients. Terminate the context and clean up WM database if a client application is dead. * Add layout_commit() after add surfaces to layer. [PatchSet 2] * Add layout_commit() after add surfaces to layer in api_request_surface Bug-AGL: SPEC-1086 Change-Id: I6ecae2606ac644e49a3383ba849390f8c235f187 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-12-22Fix build error in gcc 7.2Changhyeok Bae1-1/+0
error "Never include <bits/signum.h> directly; use <signal.h> instead." Bug-AGL: SPEC-1181 Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
2017-12-22Enable to show Video and WebBrowserTadao Tanikawa1-0/+2
Adding new applications (Video player and Web browser) to be managed by window manager properly. Releated introducing Video player, old name, 'MediaPlayer' for apps/mediaplayer has been renamed 'Music'. Old name,'MediaPlayer' keeps alive in layers.json for backward compatibility. Change-Id: I2b5e267f4015a4ed128ff5b55ba709faf1914b61 Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2017-12-21Clean up source codeKazumasa Mitsunari1-7/+31
To reduce the files and redundant code, * Remove afb_binding_api.* files and generate-binding-glue.py. * Merge them into other source codes. Change-Id: Ib61350ee6a42d73efc3fa29fa0c4868145a88e2e Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-12-14Add background layer for CES DEMOYuta Doi1-1/+57
MediaPlayer and Radio can not sound when their surface have visibility=0. And Navigation can not be displayed correctly when the application is switched from visibility=0 to 1. Because when visibility=0, weston event can not be catched. So when the applications is not displayed, they have visibility=1 and are moved to background layer. Change-Id: Idf236e703a1e74cf564a1b213e6e15fcfa42a29e Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-12-12Support XDG applicationTadao Tanikawa1-0/+30
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: I33dd3b056c736ef374e2251e818541ddd699877b Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2017-12-11Revert "Add APIs which can get information of display and area"Tadao Tanikawa1-96/+10
This reverts commit 6aaba1066fe89f324d4bae67497f4035fe997d5f. To fix double posts to Gerrit Review and repository directly. Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2017-12-11Add APIs which can get information of display and areaYuta Doi1-10/+96
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. Change-Id: I41eec6251527862ef25d1b84cd37d736d3f9c8aa Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-10Remove and replace the commentsYuta Doi1-3/+1
Remove the unnecessary comments and replace ascii-art comments with doxygen format. Change-Id: Id1abf56db58070a83f403a1f8280bc9888e7de09 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-10Add the fail-safe process for the configuration fileYuta Doi1-3/+7
If the configuration file "layers.json" can not be opened, windowmanager uses a default layer configuration. Change-Id: I1b20f385c5e748a90be5e930a1775a6b3a4f39a5 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-01Fix copyright to TOYOTAeel_4.99.2eel/4.99.24.99.2Kazumasa Mitsunari1-1/+1
Change-Id: I8ac0463a8efa215477593a96a45f08e38dc46e36 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-01Change namespace name to generic nameKazumasa Mitsunari1-2/+2
The name of namespace "genivi" was used. This is not generic, so changed it to "compositor". Conflicts: src/app.cpp Change-Id: Ie088e5d404e1981f7bc149abbc20e900bea8ec2d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-01Modify the waiting loop of the ivi configuration listenerYuta Doi1-9/+61
When layout is NOT normal, wait for the listener. Change-Id: Iedbb5de7a997c82613a0e1947d91ee2527f28436 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-01Add debug message macros controlled by environment variableYuta Doi1-26/+29
Add a HMI_DEBUG macro to print debug messages. It is controlled by the USE_HMI_DEBUG environment variable. Change-Id: I3bc5bf2f3b0e9f5ee06f340053f29ad36e7d9dbb Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2017-11-01Modify event notification from broadcast to subscribe modelKazumasa Mitsunari1-10/+13
The event notification was implemented using a broadcast model, change it to a subscription model. Bug-AGL: SPEC-987 Change-Id: I344a3a73320eb81c3f670736b032f07400bb8f64 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-11-01Add drawing_area parameter to APIKazumasa Mitsunari1-49/+41
Add drawing_area parameter in activateSurface API and syncDraw event. This is needed for the following feature - To request writting area - To inform application of writting area I assume that "normal.full" is a full size area in application area, and "split.[main|sub]" is an upper/lower half size area in application area. For example, when Navigation app receives syncDraw event which the label is Navigation, and the area name is "normal.full", it means Navigation will be displayed as a full size(in application area). When Navigation app receives syncDraw event which the label is same, and the area name is "split.main", it means Navigation will be displayed as an upper half size(in application area). Application must return endDraw after changing its design according to the size, when the application receives syncDraw event. Layout is defined in layers.json file. Current layout is set to full screen. Bug-AGL: SPEC-987 Change-Id: I5efed3dda88275e18dc1d951b98bdfcfc79ee46b Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-10-26Change the sequence how signals are emittedKazumasa Mitsunari1-1/+1
According to https://wiki.automotivelinux.org/_media/agl-hmi-fw_windowmanager_spec_v0.1.0.pdf, the visible event is emitted first Bug-AGL : SPEC-987 Change-Id: I5b5fa669b31b9a5283ccc91702064207a85d838c Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2017-10-09Add agl-service-windowmanager-2017zheng_wenlong1-0/+733
Add a new binding agl-service-windowmanager-2017. A image about this see JIRA SPEC-915. [PatchSet2] Use aglwgt make package. [PatchSet3] Modify to wait until wayland compositor starts up. Bug-AGL: SPEC-925 Change-Id: I8729bb71b5e91d5b009a5bab77232d92605c43ea Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>