summaryrefslogtreecommitdiffstats
path: root/src/json_helper.hpp
AgeCommit message (Collapse)AuthorFilesLines
2018-10-24Refactor : Hide wayland operations from Window ManagerKazumasa Mitsunari1-3/+0
Window Manager now uses abstract client, area for layer/surface management, then hide wayland operation into LayerControl class. LayerControl class uses ilmControl library instead of wayland protocol. This patch reduces the binary size of binding by 30% than before. Currently, the following debug methods are not available. * debug_status * debug_layers * debug_surfaces * list_drawing_names Bug-AGL: SPEC-1817 Change-Id: I7313787f3c4a286ceee3c23783e5c0e713388dac Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-10-15Migrate hmi-debug into utilKazumasa Mitsunari1-4/+4
Migrate hmi-debug into util for * simplicity * remove warnings error `-Wunused-function` Change-Id: I7d061849429e5d50cc7d19d2051c7f5d0f0ef169 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-15Readd Policy Manager as pluginYuta Doi1-0/+1
This patch reverts commit c6f9a9b8468b3746a3dec7ee2a0b7d84ec9fb44a and update it. Policy Manager decides next layout by inputed event and current state based on the policy table. And Policy Manager is plugin for Window Manager. Therefore the OEMs can replace it. This patch provides Policy Manager I/F as reference implementation and does not have policy table. Therefore Policy Manager updates each layers to draw the applications in requested area in accordance with just like activate/deactivate request. [APIs of Policy Manager class] - int initialize(void) Initialize Policy Manger. in: none out: 0(success), -1(error) - void registerCallback(CallbackTable callback_table) Register callback functions. in: the pointers of callback handlers out: none "CallbackTable" type is as follows: typedef struct { Handler onStateTransitioned; Handler onError; } CallbackTable; "Handler" type is as follows: using Handler = std::function<void(json_object *)>; - int setInputEventData(json_object *json_in) Set input event data for the policy table. in: input event data as json_object out: 0(success), -1(error) - int executeStateTransition(void) Execute state transition by using set input event data. in: none out: 0(success), -1(error) - void undoState(void) Undo state only once per once state transition. in: none out: none [Callbacks of Policy Manager class] - void onStateTransitioned(json_object *json_out) When state transition succeeds, this callback is called. The argument json_out has the state after transition. - void onError(json_object *json_out) When state transition fails, this callback is called. The argument json_out has the error information like message, inputed event datas and etc.. Bug-AGL: SPEC-1537 Change-Id: Ib8c71f2e544cb90b6763d07fad56dc1c453e9a97 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-07-19Revert "Add PolicyManager as plugin"Jan-Simon Moeller1-1/+0
This reverts commit 99b6f4d2fcd421d3a760a88a67e511fb6fc98068. Change-Id: I8725ca05a3e3fa0ea9e1db935e9e7d5b85a9affd
2018-07-12Add PolicyManager as pluginYuta Doi1-0/+1
PolicyManager decides next layout by using occured event and current state based on the policy table. And PolicyManager is plugin for WindowManager. Therefore the OEMs can replace it. This patch provides PolicyManager I/F as reference implementation and does not have policy table. Therefore PolicyManager updates each layers to draw the applications in normal.full area in accordance with just like activate/deactivate request. [APIs of PolicyManager class] - int initialize(void) Initialize PolicyManger. input: none output: 0(success), -1(error) - void registerCallback(CallbackTable callback_table) Register callback functions. input: the pointers of callback handlers output: none "CallbackTable" type is as follows: typedef struct { Handler onStateTransitioned; Handler onError; } CallbackTable; "Handler" type is as follows: using Handler = std::function<void(json_object *)>; - int setInputEventData(json_object *json_in) Set input event data for the policy table. input: input event data as json_object output: 0(success), -1(error) - int executeStateTransition(void) Execute state transition by using set input event data. input: none output: 0(success), -1(error) - void undoState(void) Undo state only once per once state transition. input: none output: none [Callbacks of PolicyManager class] - void onStateTransitioned(json_object *json_out) When state transition succeeds, this callback is called. The argument json_out has the state after transition. - void onError(json_object *json_out) When state transition fails, this callback is called. The argument json_out has the error information like message, inputed event datas and etc.. Bug-AGL: SPEC-1537 Change-Id: I44b771d4145078bf3ea05e26165bb9c1a03b10c3 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-07-09Add configuration file for each area sizesYuta Doi1-0/+1
Add areas.db which has each area sizes. less-than-0 values refer to (MAX + 1 - $VALUE) and MAX is either screen width or height. layers.json had each area sizes until now, so removed the sizes from it. Change-Id: I5cf283581daaca41e2b9e3ee6e947478bff1189c Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-07-09Convert the roles from old one to newYuta Doi1-0/+6
Update the role name (drawing_name) and WindowManager converts the role from old one to new. We plan to delete the old roles by GG. Therefore the applications can use old olds until GG, After GG, old roles can not be used. If the applications use it, WindowManager regards the applications as the role "fallback". Therefore the applications may not be displayed in the intended layout. For the role "fallback", please refer to JIRA SPEC-1331. Bug-AGL: SPEC-1566 Change-Id: I6ca703183e3cab72ac460094ef14dc3675a98cb6 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-06-25Clean: remove useless headersKazumasa Mitsunari1-2/+1
* Shorten build time * Remove unnecessary dependencies Change-Id: I960b2a21124cabc62ef73436fb5a7ab5191c4e0d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-05-31Format source codesKazumasa Mitsunari1-1/+1
* Format source codes * Change indent spaces to 4 from 3 * Remove trailing spaces in config.xml Change-Id: I745ba6c7cc4dcf4177add81666351c3c01de7d44 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-01-24Change the protocol from ivi-controller to ivi-wmYuta Doi1-1/+1
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>
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-10-09Add agl-service-windowmanager-2017zheng_wenlong1-0/+30
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>