Reboot: 1 Tizen Framework Hyun Ho, Kang Engineer Samsung Electronics Copyright 2017 Samsung. All Rights Reserved.
Hello! My name is Hyun Ho, Kang. I m working for Samsung Electronics I m one of the Tizen application framework team 2 hhstark.kang@samsung.com
Welcome 3 Let s talk about Tizen widget framework s past, present and future.
Overview 1 Tizen widget s basic architecture 2 New architecture based on wayland 4 3 How to utilize widget framework 4 Conclusion
Tizen widget s 5 basic architecture
Features 1. Can have multiple instance windows 6
Features 2. Draw widget UI 7
Multiple instance windows 1 process for 1 instance instance 1 process 1 window 1 8 instance 2 window 2 process 2 viewer
Multiple instance windows 1 process for 1 instance - advantages process 1 Crash instance 1 2 Each window do not influence other window 1 window 2 9 process 2 viewer
Multiple instance windows 1 process for 1 instance - disadvantages Inefficient resource use instance 1 window 1 10 process 1 Can not share resource instance 2 process 2 window 2 viewer
Multiple instance windows 1 process for multiple instances instance 1 window 1 11 instance 2 window 2 process viewer
Multiple instance windows 1 process for multiple instances - advantages Efficient resource use instance 1 window 1 12 Can share resource instance 2 window 2 process viewer
Multiple instance windows 1 process for multiple instances - disadvantages Each window influence other Crash instance 1 instance 2 window 1 window 2 13 process viewer
Multiple instance windows Pros. 1 process for 1 instance Pros. 1 process for multiple instances Each window do not influence other Easy implementation Efficient resource use Easy to share resources between same widget s instances 14 Cons. Inefficient resource use Hard to share resources between same widget s instances Cons. One instance s malfunction could affect same widget s other instances Need new lifecycle for instance
Multiple instance windows Pros. 1 process for 1 instance Pros. 1 process for multiple instances Each window do not influence other Easy implementation Efficient resource use Easy to share resources between same widget s instances 15 Cons. Inefficient resource use Hard to share resources between same widget s instances Cons. One instance s malfunction could affect same widget s other instances Need new lifecycle for instance
Draw widget UI Send message instance 1 Message window 1 16 instance 2 window 2 process viewer
Draw widget UI Efficient memory use Send message - advantage instance 1 Message window 1 17 instance 2 window 2 process viewer
Draw widget UI Limited UI Hard to extend Send message - disadvantage instance 1 Message window 1 18 instance 2 window 2 process viewer
Draw widget UI Send window buffer instance 1 window Window buffer window 1 19 instance 2 window 2 window process viewer
Draw widget UI Send window buffer - advantages Can have same UI as normal app instance 1 window 20 instance 2 window process
Draw widget UI Send window buffer - disadvantages instance 1 window Inefficient resource use window 1 21 process viewer
Draw widget UI Send message Send window buffer Pros. Efficient memory use Cons. Limited UI Hard to Extend Pros. Can have same UI as normal app Easy to extend Cons. Inefficient resource use 22
Draw widget UI Send message Send window buffer Pros. Efficient memory use Cons. Limited UI Hard to Extend Pros. Can have same UI as normal app Easy to extend Cons. Inefficient resource use 23
New architecture 24 based on wayland
2.X framework instance 1 instance 2 Display server daemon window 1 window 2 25 process Application management daemon viewer
3.0 framework instance 1 instance 2 Display server window 1 window 2 26 process Application management daemon viewer
Display server for widget Session compositor (Display server) Embedded compositor ( viewer) Pros - Can use wayland core protocol - Don t have to modify session compositor Cons - s can not have multi viewer 27 instance instance process 1 process 1
Display server for widget Multiple viewer scenario ex) Home + Lock screen 28
Candidate process Display server for widget Application management daemon Libraries Libraries Libraries instance 29 Session compositor (Display server) Env Env Env Candidate Process Candidate Candidate Process Process process
Display server for widget Can not use candidate process Application management daemon Libraries Libraries Libraries instance 30 Session compositor (Display server) Env Env Env Candidate Process Candidate Candidate Process Process process
Display server for widget Viewer Viewer Session compositor (Display server) Pros - Can have multi viewer 31 instance instance Cons - Need new wayland core protocol - Have to modify session compositor process 1 process 1
Tizen remote surface Create flow wl_surface 3. Sends surface ID Viewer 1. Enable Sharing 2. Notify surface ID 4. Register callback for surface ID 32 wl_surface Tizen remote surface Display Server
Tizen remote surface Update flow wl_surface 1. Commit buffer 2. Update event & buffer Viewer 3. Rendering & commit buffer 33 wl_surface Tizen remote surface wl_surface Display Server
Screen connector Application Layer Apps Viewer Apps F/W Layer appcore-widget widget-viewer 34 screen-connector tizen-remote-surface Application Utility Library
How to utilize 35 widget framework
Watch & Always On Display 36
Watch & Always On Display Application Layer Watch Apps Viewer Apps F/W Layer appcore-watch watch-control 37 screen-connector tizen-remote-surface Application Utility Library
Live update task manger 38
Conclusion 39
Summary 1 TIizen widget s basic architecture 2 New architecture based on wayland 3 How to utilize widget framework 40 And Now Tizen UI app can have multiple viewer We are also preparing C# API for widget
Ready to connect, get involved! review.tizen.org - platform/core/appfw/screen-connector - platform/core/appfw/widget-viewer 41 - platform/core/appfw/widget-service - platform/core/appfw/appcore-widget dev@lists.tizen.org
Q&A EMAIL 42 hhstark.kang@samsung.com
THANK YOU 43