mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2025-12-20 04:40:07 +01:00
clients: a reference implementation of UI client how to use ivi-hmi-controller.
- introduces ivi-shell-user-interface.c
This is launched from hmi-controller by launch_hmi_client_process and
invoke a
client process.
The basic flow is as followed,
1/ process invoked
2/ read configuration from weston.ini.
3/ draw png file to surface according to configuration of weston.ini
4/ all parts of UI are ready. request "UI_ready" to draw UI.
5/ Enter event loop
6/ If a surface receives touch/pointer event, followings are invoked
according
to type of event and surface
6-1/ If a surface to launch ivi_application receive touch up, it execs
ivi-application configured in weston.ini.
6-2/ If a surface to switch layout mode receive touch up, it sends a
request,
ivi_hmi_controller_switch_mode, to hmi-controller.
6-3/ If a surface to show workspace having launchers, it sends a
request,
ivi_hmi_controller_home, to hmi-controller.
6-4/ If touch down events happens in workspace,
ivi_hmi_controller_workspace_control is sent to slide workspace.
When control finished, event:
ivi_hmi_controller_workspace_end_control
is received.
Signed-off-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>
Acked-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
parent
4f6853b271
commit
923bc14097
3 changed files with 1332 additions and 2 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -61,6 +61,7 @@ weston-view
|
|||
weston-keyboard
|
||||
libtoytoolkit.a
|
||||
weston-desktop-shell
|
||||
weston-ivi-shell-user-interface
|
||||
weston-info
|
||||
weston-screensaver
|
||||
weston-screenshooter
|
||||
|
|
|
|||
23
Makefile.am
23
Makefile.am
|
|
@ -353,6 +353,11 @@ libexec_PROGRAMS += \
|
|||
weston-keyboard \
|
||||
weston-simple-im
|
||||
|
||||
if ENABLE_IVI_SHELL
|
||||
libexec_PROGRAMS += \
|
||||
weston-ivi-shell-user-interface
|
||||
endif
|
||||
|
||||
demo_clients = \
|
||||
weston-flower \
|
||||
weston-image \
|
||||
|
|
@ -592,6 +597,17 @@ nodist_weston_desktop_shell_SOURCES = \
|
|||
weston_desktop_shell_LDADD = libtoytoolkit.la
|
||||
weston_desktop_shell_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
|
||||
|
||||
if ENABLE_IVI_SHELL
|
||||
weston_ivi_shell_user_interface_SOURCES = clients/ivi-shell-user-interface.c
|
||||
nodist_weston_ivi_shell_user_interface_SOURCES = \
|
||||
protocol/ivi-hmi-controller-client-protocol.h \
|
||||
protocol/ivi-hmi-controller-protocol.c \
|
||||
protocol/ivi-application-client-protocol.h \
|
||||
protocol/ivi-application-protocol.c
|
||||
weston_ivi_shell_user_interface_LDADD = libtoytoolkit.la
|
||||
weston_ivi_shell_user_interface_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
|
||||
endif
|
||||
|
||||
if BUILD_FULL_GL_CLIENTS
|
||||
demo_clients += weston-gears
|
||||
weston_gears_SOURCES = clients/gears.c
|
||||
|
|
@ -638,8 +654,11 @@ BUILT_SOURCES += \
|
|||
protocol/fullscreen-shell-protocol.c \
|
||||
protocol/fullscreen-shell-client-protocol.h \
|
||||
protocol/xdg-shell-protocol.c \
|
||||
protocol/xdg-shell-client-protocol.h
|
||||
|
||||
protocol/xdg-shell-client-protocol.h \
|
||||
protocol/ivi-hmi-controller-protocol.c \
|
||||
protocol/ivi-hmi-controller-client-protocol.h \
|
||||
protocol/ivi-application-protocol.c \
|
||||
protocol/ivi-application-client-protocol.h
|
||||
|
||||
westondatadir = $(datadir)/weston
|
||||
dist_westondata_DATA = \
|
||||
|
|
|
|||
1310
clients/ivi-shell-user-interface.c
Normal file
1310
clients/ivi-shell-user-interface.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue