SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
The Art of
Tizen UI Theme Technology
in Various Profiles
Daniel Juyung Seo
Samsung Electronics
2
Who Am I
● Daniel Juyung Seo
● Senior Engineer at Samsung Electronics
● juyung.seo@samsung.com
● a.k.a SeoZ
● Tizen Core UIFW EFL Developer
● Enlightenment/EFL Open Source Committer
3
What is this talk about?
● Making frameworks and applications scalable in UI perspective.
● Enlightenment Foundation Libraries
4
Audience Introductions
● What is your expertise?
● Application Development
● Platform Development
● Design
● Marketing
Introduction
6
Tizen – Mobile/Wearable
● 2.2.1 SDK
● Test Devices
● RD-PQ, RD-210
● 1.0.0 beta2 Wearable SDK
7
Tizen – Camera, Gear 2
● NX300, NX300M, and etc. ● Gear 2, Gear 2 Neo
8
Various Tizen Profiles
● Mobile, IVI, Wearable, TV, Camera, PC, …
● Scalability is important.
9
What is Scalability?
● Supporting different
● resolutions, screen sizes, devices, and profiles.
Tizen Core
UI Framework
11
Tizen Architecture
Applications
Web Framework
Core Framework
Kernel
Native Framework
Linux Kernel & Device Drivers
W3C/HTML5 Device API WRT Social/Content Locations Etc.
Web Applications Native Applications Core Applications
App FW Graphics & UI Multimedia Web Messaging Location
Security System Base Connectivity Telephony PIM
12
Tizen Application Development Model
● Web Applications : HTML5 + CSS + JavaScript + jQuery
● Native Applications : C++
● Core Applications : C or C++
● But wait, they have something in common
● The Core Framework!
Platforms  Areas Mobile Gear 2 NX300
Core O O O
Web O O X
Native O X X
13
Does anyone know about EFL?
● Many applications are written in EFL on NX300 and Gear 2.
● EFL not ELF
● EFL may not be an ELF... but it's as pretty as one. :)
NO! YES!
14
What is EFL?
● Toolkit
● A set of libraries that provide a wide range of functionality
● http://www.enlightenment.org/
● Enlightenment Foundation Libraries
● Created to support E17 development
● Targeted at embedded since day 1
● Also effective on desktops
● Always focused on staying lean while providing fanciness
● The heart of the graphics component of Tizen
15
Core Framework and EFL
Applications
Web Framework
Core Framework
Kernel
Native Framework
Linux Kernel & Device Drivers
W3C/HTML5 Device API WRT Social/Content Locations Etc.
Web Applications Native Applications Applications
App FW Graphics & UI Multimedia Web Messaging Location
Security System Base Connectivity Telephony PIM
16
Why is EFL used on Tizen?
● Performance
● Small memory footprint
● GUI, Logic separation
● Themeable
● Animations
● H/W acceleration
● Various back-end engine
● Flexible
● Scalable
EFL(Edje + Elm)
18
EFL Block Diagram
Bindings
Elementary
EthumbEdbusEezeEioEfreet Emotion
Ecore
Embryo
Eet
Eina
Edje
Evas
19
Edje
● A complex graphical design and layout library.
● A graphical user interface without writing a line of C code.
● Creates visual layouts from compiled EDC script
● EDC is completely separate from application code
● Can be changed at or during runtime
● Layouts include
● Images, Colors
● Animations, Behaviors
● Supports relative and absolute positioning.
20
Edje
● Separation of layout and logic
● a graphical part : GUI Layout binary (edj)
● a functionality : Executable logic binary (C)
● Utility
● edje_cc : compile edc to edj
● edje_decc : de-compile edj to edc
< Compile Time >
.edc
.edj
.c
executable
edje_cc compile
< Run Time > running
runload
21
Edje
● EDC Script
collections { - list the groups.
group { - the list of parts and programs that compose a given edje object.
images { } – list each image file that will be used in the edc.
parts {
part { - the most basic design elements of the group.
(ie. RECT, TEXT, IMAGE, SWALLOW, TEXTBLOCK, GROUP, BOX, TABLE, EXTERNAL)
}
}
programs {
program { - manipulates the different interface elements and serve as a bridge between
the application and interface.
}
}
}
}
22
Elementary
● Widget Set
● 75 widgets
● Non-Containers - Bg, Button, Check, Entry, Label, List, Icon, Win, …
● Containers - Box, Conformant, Grid, Layout, Panes, Scroller, Table, …
● Fast, Finger friendly, Scalable, Themeable, …
23
Elementary
< Bubble >
< Button >
< Calendar >
< Check >
< Toggle >
< Clock >
< Ctxpopup >
< Radio > < Frame >
< DaySelector >
< Slider >
< FlipSelector >
< FileSelector > < Genlist >
< Gengrid >
< Spinner >
< Map > < Panes >
< Progressbar >
24
Elementary
● Elementary also uses edje for its layout
group { name: "elm/button/base/default";
images.image: "button_normal.png" COMP;
images.image: "button_clicked.png" COMP;
parts {
part { name: "base"; mouse_events: 0;
type: IMAGE
description { state: "default" 0.0;
image.normal: "button_normal.png";
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
image.border: 4 4 3 5;
image.middle: SOLID;
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
image.normal: "button_clicked.png";
image.border: 5 5 4 6;
}
...
programs {
program {
signal: "mouse,down,1"; source: "event";
action: STATE_SET "clicked" 0.0;
target: "base";
}
...
25
How to achieve Scalability?
● Relative Positioning (1)
Part A
rel1
(x=0.0 y=0.0)
rel2
(x=1.0 y=0.3)
Part B
rel1
(x=0.0 y=0.3)
rel2
(x=1.0 y=1.0)
26
How to achieve Scalability?
● Relative Positioning (2)
Bigger
Screen
Size
(y=0.1)
(y=0.9)
Fix
Header
27
How to achieve Scalability?
● Scale Factor
Higher Resolution + Scale Up
Higher Resolution
28
How to achieve Scalability?
● Border
< Original Background Image >
< Expand With Border >
< Expand Without Border >
● Finger Size
29
There is more!
● Elementary Configuration
● You can change the configuration based on
your own needs.
● Configurations
● Scale, finger size, engine, scroll, focus, profile, …
● Profile: a set of the configurations
● default, standard, mobile, tv, wearable, …
Demo
31
Demo
● Elementary Test
● Terminology
32
EFL Tools for a better Scalability
● Enventor
● Eflete
● Elm theme viewer
33
EFL Applications on Tizen SDK
● Install Platform SDK ● EFL Application Template
34
Summary
● Tizen supports various profiles over a lot of device categories.
● EFL makes you write scalable GUI applications over various
profiles with a good performance and small memory foot prints.
● It's open. You can start it now.
Questions?
The Art of Tizen UI Theme Technology in Various Profiles

Mais conteúdo relacionado

Mais procurados

Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshowNhan Cao
 
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGESCROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGESMapuSoft
 
Cloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsCloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsShahed Chowdhuri
 
Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)Randal Schwartz
 
Responsive Testing the Promet Way
Responsive Testing the Promet WayResponsive Testing the Promet Way
Responsive Testing the Promet WayPromet Source
 
Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019Simon Jackson
 
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTFMobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTFNiklas Heidloff
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with FlutterAwok
 
Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1 Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1 Concetto Labs
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Arif Amirani
 

Mais procurados (20)

Flutter talkshow
Flutter talkshowFlutter talkshow
Flutter talkshow
 
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGESCROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
CROSS-OS DEVELOPMENT PLATFORM ADVANTAGES
 
Cloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal AppsCloudy with a Dash of Universal Apps
Cloudy with a Dash of Universal Apps
 
Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)Native mobile application development with Flutter (Dart)
Native mobile application development with Flutter (Dart)
 
Flutter for web
Flutter for webFlutter for web
Flutter for web
 
Responsive Testing the Promet Way
Responsive Testing the Promet WayResponsive Testing the Promet Way
Responsive Testing the Promet Way
 
Windows Universal Apps
Windows Universal AppsWindows Universal Apps
Windows Universal Apps
 
Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019Getting started with mono game on visual studio 2019
Getting started with mono game on visual studio 2019
 
VLC
VLCVLC
VLC
 
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTFMobile Controls for IBM Lotus Domino XPages on OpenNTF
Mobile Controls for IBM Lotus Domino XPages on OpenNTF
 
What is Flutter
What is FlutterWhat is Flutter
What is Flutter
 
FIREFOX OS
FIREFOX OSFIREFOX OS
FIREFOX OS
 
Flutter UI Framework
Flutter UI FrameworkFlutter UI Framework
Flutter UI Framework
 
Mobile development with Flutter
Mobile development with FlutterMobile development with Flutter
Mobile development with Flutter
 
Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1 Why choose flutter 2 over flutter 1
Why choose flutter 2 over flutter 1
 
Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101Pune Flutter Presents - Flutter 101
Pune Flutter Presents - Flutter 101
 
Flutter app
Flutter appFlutter app
Flutter app
 
Firefox os ppt
Firefox os pptFirefox os ppt
Firefox os ppt
 
Flutter
FlutterFlutter
Flutter
 
Introduction to flutter
Introduction to flutterIntroduction to flutter
Introduction to flutter
 

Semelhante a The Art of Tizen UI Theme Technology in Various Profiles

The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)Daniel Juyung Seo
 
Mobile app development using Android SDK
Mobile app development using Android SDKMobile app development using Android SDK
Mobile app development using Android SDKJosh Clemm
 
Unique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliantUnique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliantHermet Park
 
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsEast Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsGerke Max Preussner
 
Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptxasmeerana605
 
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - IntroductionWest Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - IntroductionGerke Max Preussner
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump StartConFoo
 
.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen PlatformJason Robert
 
Tizen Operating System For Mobiles
Tizen Operating System For MobilesTizen Operating System For Mobiles
Tizen Operating System For MobilesSaurav Mohan V
 
Build beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutterBuild beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutterRobertLe30
 
Hardware Detection Tool
Hardware Detection ToolHardware Detection Tool
Hardware Detection ToolAnne Nicolas
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneursRodrigo Gil
 
Android programming Assignment Help
Android programming Assignment HelpAndroid programming Assignment Help
Android programming Assignment Helpsmithjonny9876
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidMotorola Mobility - MOTODEV
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Samsung Open Source Group
 
iphone application development
iphone application developmentiphone application development
iphone application developmentarpitnot4u
 

Semelhante a The Art of Tizen UI Theme Technology in Various Profiles (20)

The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
The Art of Tizen UI Theme Technology in Various Profiles (OSCON 2014)
 
Mobile app development using Android SDK
Mobile app development using Android SDKMobile app development using Android SDK
Mobile app development using Android SDK
 
Unit 2
Unit 2Unit 2
Unit 2
 
Unique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliantUnique but fast make your tizen gui application brilliant
Unique but fast make your tizen gui application brilliant
 
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & ToolsEast Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
East Coast DevCon 2014: The Slate UI Framework - Architecture & Tools
 
Introduction to Android Development.pptx
Introduction to Android Development.pptxIntroduction to Android Development.pptx
Introduction to Android Development.pptx
 
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - IntroductionWest Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
West Coast DevCon 2014: The Slate UI Framework (Part 1) - Introduction
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump Start
 
.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform.NET Everywhere, Building Applications on the Tizen Platform
.NET Everywhere, Building Applications on the Tizen Platform
 
Tizen Operating System For Mobiles
Tizen Operating System For MobilesTizen Operating System For Mobiles
Tizen Operating System For Mobiles
 
Build beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutterBuild beautiful native apps in record time with flutter
Build beautiful native apps in record time with flutter
 
Introdução ao Tizen
Introdução ao TizenIntrodução ao Tizen
Introdução ao Tizen
 
Hardware Detection Tool
Hardware Detection ToolHardware Detection Tool
Hardware Detection Tool
 
Programming for non tech entrepreneurs
Programming for non tech entrepreneursProgramming for non tech entrepreneurs
Programming for non tech entrepreneurs
 
Climberreport
ClimberreportClimberreport
Climberreport
 
Android programming Assignment Help
Android programming Assignment HelpAndroid programming Assignment Help
Android programming Assignment Help
 
Creating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for AndroidCreating Great Apps with MOTODEV Studio for Android
Creating Great Apps with MOTODEV Studio for Android
 
Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)
 
iphone application development
iphone application developmentiphone application development
iphone application development
 
CG mini project
CG mini projectCG mini project
CG mini project
 

Mais de Daniel Juyung Seo

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰Daniel Juyung Seo
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 Daniel Juyung Seo
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기Daniel Juyung Seo
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력Daniel Juyung Seo
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발Daniel Juyung Seo
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation LibrariesDaniel Juyung Seo
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어Daniel Juyung Seo
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기Daniel Juyung Seo
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...Daniel Juyung Seo
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)Daniel Juyung Seo
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Daniel Juyung Seo
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014Daniel Juyung Seo
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Daniel Juyung Seo
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)Daniel Juyung Seo
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전Daniel Juyung Seo
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Daniel Juyung Seo
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼Daniel Juyung Seo
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Daniel Juyung Seo
 
EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014Daniel Juyung Seo
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Daniel Juyung Seo
 

Mais de Daniel Juyung Seo (20)

오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰오픈 소스와 코드 리뷰
오픈 소스와 코드 리뷰
 
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화 [위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
[위드이노베이션 토크콘서트] 위드이노베이션, 삼성과 구글의 개발 문화
 
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
[GDG DevFest Seoul 2016] 오픈 소스를 통해 개발 근육 강화하기
 
[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력[아주대] 오픈 소스와 글로벌 경쟁력
[아주대] 오픈 소스와 글로벌 경쟁력
 
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
[OSS 개발자 포럼] 오픈소스를 활용한 개발자 자기 개발
 
[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries[KRnet2016] Contributing to Enlightenment Foundation Libraries
[KRnet2016] Contributing to Enlightenment Foundation Libraries
 
[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어[2016 아주대강의] 보안과소프트웨어엔지니어
[2016 아주대강의] 보안과소프트웨어엔지니어
 
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
[Ajou Greative 콘서트] 글로벌 sw엔지니어로 성장하기
 
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
[SOSCON 2015] 제 3회 EFL 한국 커뮤니티 세미나 - 16살 된 EFL은 어떻게 관리하고 배포ᄒ...
 
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
[OSS개발자포럼, 국민대 여름캠프] 개발자로 멋지게 살아보자 - 구글 서주영 (주석 포함)
 
Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)Introduction of EFL Korea Community (at 2014 Developer Day)
Introduction of EFL Korea Community (at 2014 Developer Day)
 
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
EFL을 이용한 타이젠 애플리케이션 개발 - Korea Community Day 2014
 
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
Tizen - A Linux Based Open Source Platform (제 17회 한국 LUG 소프트웨어 테크니컬 세미나)
 
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
제 2회 한국 EFL 세미나 - 5. Elm Theme Viewer (서주영)
 
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
오픈소스, 빡! 끝! - 제7회 삼성소프트웨어멤버십 기술전
 
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
Tizen 핵심 툴킷 EFL로 빠르고 가벼운 앱 개발하기 - SOSCON 2014 삼성오픈소스컨퍼런스
 
오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼오픈소스와 영어 (KOR) - OSS 개발자 포럼
오픈소스와 영어 (KOR) - OSS 개발자 포럼
 
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
Enlightenment Open Source Contribution (KOR) - 실전! Enlightenment 오픈소스 컨트리뷰션
 
EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014EFL 오픈소스 활용 사례 2014
EFL 오픈소스 활용 사례 2014
 
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
Open Platform Tizen and Web, 오픈 플랫폼 타이젠과 웹
 

Último

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 

Último (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 

The Art of Tizen UI Theme Technology in Various Profiles

  • 1. The Art of Tizen UI Theme Technology in Various Profiles Daniel Juyung Seo Samsung Electronics
  • 2. 2 Who Am I ● Daniel Juyung Seo ● Senior Engineer at Samsung Electronics ● juyung.seo@samsung.com ● a.k.a SeoZ ● Tizen Core UIFW EFL Developer ● Enlightenment/EFL Open Source Committer
  • 3. 3 What is this talk about? ● Making frameworks and applications scalable in UI perspective. ● Enlightenment Foundation Libraries
  • 4. 4 Audience Introductions ● What is your expertise? ● Application Development ● Platform Development ● Design ● Marketing
  • 6. 6 Tizen – Mobile/Wearable ● 2.2.1 SDK ● Test Devices ● RD-PQ, RD-210 ● 1.0.0 beta2 Wearable SDK
  • 7. 7 Tizen – Camera, Gear 2 ● NX300, NX300M, and etc. ● Gear 2, Gear 2 Neo
  • 8. 8 Various Tizen Profiles ● Mobile, IVI, Wearable, TV, Camera, PC, … ● Scalability is important.
  • 9. 9 What is Scalability? ● Supporting different ● resolutions, screen sizes, devices, and profiles.
  • 11. 11 Tizen Architecture Applications Web Framework Core Framework Kernel Native Framework Linux Kernel & Device Drivers W3C/HTML5 Device API WRT Social/Content Locations Etc. Web Applications Native Applications Core Applications App FW Graphics & UI Multimedia Web Messaging Location Security System Base Connectivity Telephony PIM
  • 12. 12 Tizen Application Development Model ● Web Applications : HTML5 + CSS + JavaScript + jQuery ● Native Applications : C++ ● Core Applications : C or C++ ● But wait, they have something in common ● The Core Framework! Platforms Areas Mobile Gear 2 NX300 Core O O O Web O O X Native O X X
  • 13. 13 Does anyone know about EFL? ● Many applications are written in EFL on NX300 and Gear 2. ● EFL not ELF ● EFL may not be an ELF... but it's as pretty as one. :) NO! YES!
  • 14. 14 What is EFL? ● Toolkit ● A set of libraries that provide a wide range of functionality ● http://www.enlightenment.org/ ● Enlightenment Foundation Libraries ● Created to support E17 development ● Targeted at embedded since day 1 ● Also effective on desktops ● Always focused on staying lean while providing fanciness ● The heart of the graphics component of Tizen
  • 15. 15 Core Framework and EFL Applications Web Framework Core Framework Kernel Native Framework Linux Kernel & Device Drivers W3C/HTML5 Device API WRT Social/Content Locations Etc. Web Applications Native Applications Applications App FW Graphics & UI Multimedia Web Messaging Location Security System Base Connectivity Telephony PIM
  • 16. 16 Why is EFL used on Tizen? ● Performance ● Small memory footprint ● GUI, Logic separation ● Themeable ● Animations ● H/W acceleration ● Various back-end engine ● Flexible ● Scalable
  • 18. 18 EFL Block Diagram Bindings Elementary EthumbEdbusEezeEioEfreet Emotion Ecore Embryo Eet Eina Edje Evas
  • 19. 19 Edje ● A complex graphical design and layout library. ● A graphical user interface without writing a line of C code. ● Creates visual layouts from compiled EDC script ● EDC is completely separate from application code ● Can be changed at or during runtime ● Layouts include ● Images, Colors ● Animations, Behaviors ● Supports relative and absolute positioning.
  • 20. 20 Edje ● Separation of layout and logic ● a graphical part : GUI Layout binary (edj) ● a functionality : Executable logic binary (C) ● Utility ● edje_cc : compile edc to edj ● edje_decc : de-compile edj to edc < Compile Time > .edc .edj .c executable edje_cc compile < Run Time > running runload
  • 21. 21 Edje ● EDC Script collections { - list the groups. group { - the list of parts and programs that compose a given edje object. images { } – list each image file that will be used in the edc. parts { part { - the most basic design elements of the group. (ie. RECT, TEXT, IMAGE, SWALLOW, TEXTBLOCK, GROUP, BOX, TABLE, EXTERNAL) } } programs { program { - manipulates the different interface elements and serve as a bridge between the application and interface. } } } }
  • 22. 22 Elementary ● Widget Set ● 75 widgets ● Non-Containers - Bg, Button, Check, Entry, Label, List, Icon, Win, … ● Containers - Box, Conformant, Grid, Layout, Panes, Scroller, Table, … ● Fast, Finger friendly, Scalable, Themeable, …
  • 23. 23 Elementary < Bubble > < Button > < Calendar > < Check > < Toggle > < Clock > < Ctxpopup > < Radio > < Frame > < DaySelector > < Slider > < FlipSelector > < FileSelector > < Genlist > < Gengrid > < Spinner > < Map > < Panes > < Progressbar >
  • 24. 24 Elementary ● Elementary also uses edje for its layout group { name: "elm/button/base/default"; images.image: "button_normal.png" COMP; images.image: "button_clicked.png" COMP; parts { part { name: "base"; mouse_events: 0; type: IMAGE description { state: "default" 0.0; image.normal: "button_normal.png"; rel1.relative: 0.0 0.0; rel2.relative: 1.0 1.0; image.border: 4 4 3 5; image.middle: SOLID; } description { state: "clicked" 0.0; inherit: "default" 0.0; image.normal: "button_clicked.png"; image.border: 5 5 4 6; } ... programs { program { signal: "mouse,down,1"; source: "event"; action: STATE_SET "clicked" 0.0; target: "base"; } ...
  • 25. 25 How to achieve Scalability? ● Relative Positioning (1) Part A rel1 (x=0.0 y=0.0) rel2 (x=1.0 y=0.3) Part B rel1 (x=0.0 y=0.3) rel2 (x=1.0 y=1.0)
  • 26. 26 How to achieve Scalability? ● Relative Positioning (2) Bigger Screen Size (y=0.1) (y=0.9) Fix Header
  • 27. 27 How to achieve Scalability? ● Scale Factor Higher Resolution + Scale Up Higher Resolution
  • 28. 28 How to achieve Scalability? ● Border < Original Background Image > < Expand With Border > < Expand Without Border > ● Finger Size
  • 29. 29 There is more! ● Elementary Configuration ● You can change the configuration based on your own needs. ● Configurations ● Scale, finger size, engine, scroll, focus, profile, … ● Profile: a set of the configurations ● default, standard, mobile, tv, wearable, …
  • 30. Demo
  • 32. 32 EFL Tools for a better Scalability ● Enventor ● Eflete ● Elm theme viewer
  • 33. 33 EFL Applications on Tizen SDK ● Install Platform SDK ● EFL Application Template
  • 34. 34 Summary ● Tizen supports various profiles over a lot of device categories. ● EFL makes you write scalable GUI applications over various profiles with a good performance and small memory foot prints. ● It's open. You can start it now.