summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>2014-03-11 10:18:30 +0900
committerNobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>2014-05-20 12:33:53 +0900
commit8b3136d75457aa2d312033eeb5342886b2f3c06d (patch)
tree9a17240488f2bf24bdd6ab9db41ea7540fb1172f
parentddc9b91383754454eb4761952718b252a66ec7c4 (diff)
downloadweston-8b3136d75457aa2d312033eeb5342886b2f3c06d.tar.gz
protocol: ivi hmi controller protocol to set up IVI style UI
This protocol realizes following features, - UI ready - changing modes; tiling, side by side, full_screen, and random - Give control a surface; workspace to be controlled by using ivi layout APIs - Display/undisplay a surface; home contains sevaral workspaces to launch application Signed-off-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>
-rw-r--r--protocol/Makefile.am3
-rw-r--r--protocol/ivi-hmi-controller.xml96
2 files changed, 98 insertions, 1 deletions
diff --git a/protocol/Makefile.am b/protocol/Makefile.am
index 9913f16d..140aef51 100644
--- a/protocol/Makefile.am
+++ b/protocol/Makefile.am
@@ -9,7 +9,8 @@ protocol_sources = \
wayland-test.xml \
xdg-shell.xml \
scaler.xml \
- ivi-application.xml
+ ivi-application.xml \
+ ivi-hmi-controller.xml
if HAVE_XMLLINT
.PHONY: validate
diff --git a/protocol/ivi-hmi-controller.xml b/protocol/ivi-hmi-controller.xml
new file mode 100644
index 00000000..fd5ce2b1
--- /dev/null
+++ b/protocol/ivi-hmi-controller.xml
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<protocol name="ivi_hmi_controller">
+
+ <copyright>
+ Copyright (C) 2013 DENSO CORPORATION
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
+ </copyright>
+
+ <interface name="ivi_hmi_controller" version="1">
+ <description summary="set up and control IVI style UI"/>
+
+ <request name="UI_ready">
+ <description summary="inform the ready for drawing desktop." />
+ </request>
+
+ <request name="workspace_control">
+ <description summary="start controlling a surface by server">
+ Reference protocol to control a surface by server.
+ To control a surface by server, it gives seat to the server
+ to e.g. control Home screen. Home screen has several workspaces
+ to group launchers of wayland application. These workspaces
+ are drawn on a horizontally long surface to be controlled
+ by motion of input device. E.g. A motion from right to left
+ happens, the viewport of surface is controlled in the ivi-shell
+ by using ivi-layout. client can recognizes the end of controlling
+ by event "workspace_end_control".
+ </description>
+ <arg name="seat" type="object" interface="wl_seat"/>
+ <arg name="serial" type="uint"/>
+ </request>
+
+ <enum name="layout_mode">
+ <entry name="tiling" value="0"/>
+ <entry name="side_by_side" value="1"/>
+ <entry name="full_screen" value="2"/>
+ <entry name="random" value="3" />
+ </enum>
+
+ <request name="switch_mode">
+ <description summary="request mode switch of application layout">
+ hmi-controller loaded to ivi-shall implements 4 types of layout
+ as a reference; tiling, side by side, full_screen, and random.
+ </description>
+ <arg name="layout_mode" type="uint"/>
+ </request>
+
+ <enum name="home">
+ <entry name="off" value="0"/>
+ <entry name="on" value="1"/>
+ </enum>
+
+ <request name="home">
+ <description summary="request displaying/undisplaying home screen">
+ home screen is a reference implementation of launcher to launch
+ wayland applications. The home screen has several workspaces to
+ group wayland applications. By defining the following keys in
+ weston.ini, user can add launcher icon to launch a wayland application
+ to a workspace.
+ [ivi-launcher]
+ workspace-id=0
+ : id of workspace to add a launcher
+ icon-id=4001
+ : ivi id of ivi_surface to draw a icon
+ icon=/home/user/review/build-ivi-shell/data/icon_ivi_flower.png
+ : path to icon image
+ path=/home/user/review/build-ivi-shell/weston-dnd
+ : path to wayland application
+ </description>
+ <arg name="home" type="uint"/>
+ </request>
+
+ <event name="workspace_end_control">
+ <description summary="notify controlling workspace end"/>
+ <arg name="is_controlled" type="int"/>
+ </event>
+
+ </interface>
+
+</protocol>