aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2018-08-31Update windowmanagerKazumasa Mitsunari2-11/+7
Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-31Update wm_layerKazumasa Mitsunari4-600/+653
* Set Area when layoutChange * Implement hasRole Change-Id: I684f3bce700d0bb6f4d4a6ef1a3e5242856c192b Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-31Update wm_clientKazumasa Mitsunari2-0/+12
Change-Id: I76854f8a452c582d9bb3f795f6e779106304ad7a Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-31Fix build errorKazumasa Mitsunari3-8/+11
Change-Id: Ifa4052b2d076a3b05bf937a6e2aaf2a7d79ebc13 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-30temporary changeKazumasa Mitsunari4-11/+123
Change-Id: I48618fd00e607176c95b4e3950fca7dbb058a3b1 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-30Hide variable into privateKazumasa Mitsunari1-23/+19
Change-Id: I372504c030cd69f6f6e667e2370860020431b900 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-28Remove lookup_id and lookup_nameKazumasa Mitsunari2-18/+7
No need to wrap object Change-Id: I2cb403aabd6d55d7b06024e1535c26c48fe74ac7 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Update windowmanagerKazumasa Mitsunari1-38/+59
Change-Id: I2b50eb89aefb4a1f5abd3c26055f4cd8961ec21d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Update wm_client and applistKazumasa Mitsunari4-21/+39
Change-Id: I76a58f431b894f2db1a8864f620c48311807befc Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Update wm_layerKazumasa Mitsunari4-90/+72
Change-Id: Ia8277ba20a97a0a5b3617ae14a447e0e962afafd Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Implement setup/getAreaKazumasa Mitsunari2-2/+44
Move from layers.cpp Change-Id: I3fba732b09272b45d1cb7ca7f9457777dd53fdad Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Update wm_layerKazumasa Mitsunari4-32/+304
Change-Id: Id4b9fe2ec6603e8ab0ad5cfa9b0af6dce3b1d149 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-27Fix mistake of comparisonKazumasa Mitsunari1-1/+1
Change-Id: Ifab9782c204c523df33bfb2d82939f30243672f7 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Append role to settingKazumasa Mitsunari1-0/+1
Change-Id: I0c51005a03625a9e42b87b96b0b74fb57cb20f0d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Add loadLayerSettingKazumasa Mitsunari3-2/+55
Change-Id: I08be64a3b0194175db4b3b7ef259254c10ad038b Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Add loadAreaDbKazumasa Mitsunari2-2/+79
Change-Id: Iccbb3730395832b1f0d3301f3866337211cf5907 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Start to rework using ilmControlKazumasa Mitsunari12-370/+210
Change-Id: Icfffea4c0587828f4dd863e9000e8aadb135c048 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Remove struct unieque_fdKazumasa Mitsunari2-28/+0
Any code doesn't use it anymore. Change-Id: I64a3d518d12d33e399261678f715aa466d6df6a3 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Fix util function HMI_*Kazumasa Mitsunari10-159/+162
To reduce coding, change HMI_* Change-Id: Ib28b6a3c2756253e665498e459f5e1e165095941 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Remove hmi-debug.hKazumasa Mitsunari12-143/+127
To reduce warning message, integrates hmi-debug into util. Change-Id: Ibb83db196be8c0d6ff0a8d503978b3bef7b1e870 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Move declaration to source codeKazumasa Mitsunari2-1/+2
Change-Id: I41e93a5bfe7d926b44201f08cf21fdd11b387bf5 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Rename class name LayerManager to LayerControlKazumasa Mitsunari5-28/+41
Change-Id: I60315e2a71af60b2a8e7576bc4313983330b5b3d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-22Forgot adding new filesKazumasa Mitsunari4-0/+324
Change-Id: I9f05c8ac369890403710214522c2faa3deb129fb Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20Add initialize of Layout ManagerKazumasa Mitsunari4-57/+12
Layout Manager is not suitable in this case... but this name is set be architecture... Change-Id: Ia1612f243dcae2af229357cc982918b2b5ea7d7d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20Omit std::string to stringKazumasa Mitsunari1-41/+44
Change-Id: I2da511300922859383c9eb30222813cdb0a910e1 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20Add setRoleKazumasa Mitsunari7-21/+269
Change-Id: I6ddf6e1b3b3667493c5a0dd68047d1b72c8b0da9 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20get callback of surface_stats_receivedKazumasa Mitsunari5-3/+51
Change-Id: I2318752ba00f58c197ba42166c2ab91ea4c15bce Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20Add new classKazumasa Mitsunari1-0/+48
Change-Id: I6bebfb030879b1bb2c7521bcd1d23d18d8174b36 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-20Proposal: New layer settingsKazumasa Mitsunari2-2/+26
Change-Id: I860f8dea4eee340fd8ab3dba3bbaee1661c584bf Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-15Readd Policy Manager as pluginYuta Doi8-410/+520
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-08-09Fix multiple erase of surface informationYuta Doi1-2/+0
When application is killed and the surface is destroyed, the surface informations is erased twice. Therefore remove the one eracing process. Change-Id: I707febf5b5003058bcf847f635c16fb0d68e01d0 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-08-03Fix mistakeKazumasa Mitsunari2-2/+2
Currently, the code is not usable currently. Change-Id: I2de1c0f04df411f085faacc1ab71203ba9b5e0b1 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-02Merge changes from topic '15921'Jan-Simon Moeller4-9/+16
* changes: Fix WM attach layers to different screen. Fix source rectangle changes every state change
2018-08-02Fix WM attach layers to different screen.Kazumasa Mitsunari1-3/+3
If setting 2 display from 1 Soc, Window Manager attaches layers to different screen since corresponding to upgrade of wayland-ivi-extension. Fix the issue. Bug-AGL: SPEC-1577 Change-Id: Ib6eb4a19dc892348271762f236cc0650a83a8f70 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-08-02Improve output of multiple screen resolutionTadao Tanikawa7-9/+141
To improve output on various monitor with various resolution, the following items are introduced. * Abandon scaling by Weston/IVI-SHELL This is cause of huge memory consumption on AGL CES2018 Demo because all contents are designed and rendered with FullHD resolution. * Add parameter of 'scale' to WM API (getDisplayInfo) WM calculate scale factor from screen resolution from wayland compositor and parameter of layout from WM's configuration, area.db. Bug-AGL: SPEC-1568, SPEC-1569, SPEC-1611 Change-Id: I5eac2da0106228c296550135c5200b2653864fdf Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2018-08-02Revert "Enable scaling to fit various screen resolutions"Tadao Tanikawa9-212/+22
Abandon scaling support by AGL window manager 2017 Bug-AGL: SPEC-1611 This reverts commit 8ab10aaafc6fb3dc7bbad755dce9b4bdaa41f287. Change-Id: Id6afb263a6dc30929b922e469d906e2e5190f7b0
2018-08-02Fix source rectangle changes every state changeKazumasa Mitsunari4-6/+13
Window Manager changes source rectangle size every state change. This patch changes it to set source rectangle first when the surface is created. Related commit: https://gerrit.automotivelinux.org/gerrit/#/c/15595/ Bug-AGL: SPEC-1584 Change-Id: Ia7429956053cfa18e6e82060f84f3b6fe755c0b1 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-27Fix crashed application can re-launchKazumasa Mitsunari5-112/+98
WM can't reset the state when application crashes, after the below commit. This patch fix the crashed application can re-launch. Related commit: https://gerrit.automotivelinux.org/gerrit/#/c/14871/ Bug-AGL: SPEC-1471 Change-Id: I46019b30cc8e9a341b4b681a0288f053b3ac1b30 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-26Fix memory release problemflounder_5.99.2flounder/5.99.25.99.2Kazumasa Mitsunari1-1/+0
Do not release json_object after event push. The json_array which was freed is retained to the json-object that is released in afb_event_push. Related page: https://json-c.github.io/json-c/json-c-0.10/doc/html/json__object_8h.html#a04448b1c63173e1bfe49965835732075 Bug-AGL: SPEC-1616 Change-Id: Ic6de6425d7a18b289eb3e9d37d297dcfb3383f21 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-24Fix the race condition of HomeScreenKazumasa Mitsunari1-1/+9
HomeScreen and launcher have race condition. This patch fixes if the homescreen requests to be shown, WM doesn't change launcher(and others) invisible. This is quick hack. System UI's role is homescreen now. We can't change system UI from setting and so on currently. Bug-AGL: SPEC-1407 Change-Id: Ie70e0fd635fae03de7b731f3d73fb1863e3c6ad4 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-24Remove useless functionsKazumasa Mitsunari2-23/+0
These functions are not used anymore because of upgrade of wayland-ivi-extension * layer_configuration * layer_orientation * layer_screen Change-Id: I794fa13a3203b929c8fc49d6fb96b14004aa0fcc Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-24Fix XDG application shrinksKazumasa Mitsunari2-12/+7
WM set surface source size output_size(1080X1920) in case of using runXDG. Then, XDG surface shrinks because dest size(1080X1488) is set and the surface is scaled. On the other hand, XDG application's source size is w = 0, h = 0 on startup from ivi-wm, so WM has to set source size in somewhere. So this patch fixes WM set XDG surface source size. This is short term solution because WM set source rectangle size every state changes. Bug-AGL: SPEC-1584 Change-Id: I128db0b7feaba6b51e13c467e91d5aff6adaf0a7 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-20Fix timerTadao Tanikawa1-3/+9
In 32bit environment, timer would be overflow. This causes that HomeScreen doesn't show on 32bit environment. Bug-AGL: SPEC-1471 Change-Id: I427da3a6e6ea76af05cee45a13b51754728a0cc5 Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
2018-07-19Revert "Add PolicyManager as plugin"Jan-Simon Moeller17-2756/+395
This reverts commit 99b6f4d2fcd421d3a760a88a67e511fb6fc98068. Change-Id: I8725ca05a3e3fa0ea9e1db935e9e7d5b85a9affd
2018-07-19Revert "Add policy table generated by ZIPC for EXAMPLE"Jan-Simon Moeller35-5899/+0
This reverts commit 67f414f67ee22ddf40003d1be3fa1d0cb13deb8f. Change-Id: I8489ed8e7789590ae585807108c64539a0ab3cf2
2018-07-12Add policy table generated by ZIPC for EXAMPLEYuta Doi35-0/+5899
To PolicyManager, add the source code of policy table which is generated by ZIPC for EXAMPLE. If use this example, please comment out line 84 and uncomment line 85 in CMakeLists.txt as follows: #set(USE_STM_NAME stub) set(USE_STM_NAME zipc) If try to show split layout, please rename from roles.db.split to roles.db in src/policy_manager/db/. Bug-AGL: SPEC-1537 Change-Id: I4b35f148313e0c5a12c59ed1c2f8eb6fbcf3ea6b Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>
2018-07-12Add PolicyManager as pluginYuta Doi17-395/+2756
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-11Enable scaling to fit various screen resolutionsKazumasa Mitsunari9-22/+212
Since the AGL HomeScreen of CES2018 assumes that the screen resolution is 1080x1920px, the graphics of it partially corrupted with others. To fix this issue, now the AGL window manager automatically scales size according to "scaling" value in setting.json By default(even if "scaling" is not set), this scaling keeps 'fullscreen' aspect rate in area.db("aspect_fit") User can select 3 options. - "aspect_fit" : Scale aspect rate of 'fullscreen' in area.db.(default) - "display_fit": Force to scale to display size. - "none" or others : Set size just as area.db Bug-AGL: SPEC-1568 Bug-AGL: SPEC-1569 Change-Id: Ia08c0ebb2d71ae8f89a90088e181381c3ba3562d Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-10Forbid negative value for area sizeKazumasa Mitsunari2-39/+26
It is not intuitive to set negative value as size. So forbit negative value. Change-Id: I49480653284158b6d1bfcb22a71d9882ed958518 Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
2018-07-09Rename event names to lower camel caseYuta Doi1-3/+3
Change-Id: I973610e2b47ebd842291d568bd88578150efcef5 Signed-off-by: Yuta Doi <yuta-d@witz-inc.co.jp>