Chromium ui framework(shared)

40 %
60 %
Information about Chromium ui framework(shared)

Published on February 20, 2014

Author: gnomekr



This slides describe overview of ChromeOS UI Framework, consists of many visual components and aura, and aura shell.

Views, Aura and Ash: ChromeOS UI Framework Simon YoungKi Hong

About Me Software Programmer @LGE (2009.02 ~) Chromium Contributor (2012.01 ~) Chromium Committer (2013.11 ~)

Goal Overview of ChromeOS UI Component. We can say “How ChromeOS UI is constructed!”


Background Chrome? Chromium?

ChromeOS Linux based operating system. Only chrome browser is running for user.

UI Framework In typical linux, GUI Application GUI Application GUI Application Window Manager gtk qt efl ... X or Wayland Kernel

What kind of ToolKit is used in ChromeOS?

Views They created UI toolkit called "Views" "Since we desired a differentiated aesthetic for Chromium, we have had to build a framework on Windows to accelerate our development of custom UI" - Chromium design docs

Views UI is constructed of a tree of view components Widget RootView View View View View View View View

Views Like other toolkits, it has many custom views ● ● ● ● ● ● ● ● ● Label Image view web view slider separator link button combobox etc...


OK. we know how Widget is made... But, who give user events or draw its content?

There is no window manager. ChromeOS runs single x-client application. Browser Process Renderer Process Renderer Process libx X …... GPU Process

They created a new window system. Aura

Aura Chrome's next generation hardware accelerated UI framework

Aura Contains view components Responsible for event propagation draw widget’s contents window hierarchy management - ChromeOS is a tree of Aura Window

Aura Event Flow Widget component Aura Window X Kernel Mouse Click

Aura Drawing? RootWindowHost CC RootWindow Composite & Draw Aura Window Aura Window Aura Window Aura Window Aura Window GPU process Browser process GPU

OK. we know how Widget is handled... But, how create a widget?

Ash (Aura SHell) "A shell is software that provides an interface for users of an operating system to access the services of a kernel." - wikipedia

Ash In typical linux, GTK application QT Application .... X Kernel Shell

Ash Role of Shell * Window mgmt. * Program exec. * System mgmt.




Add a comment

Related presentations

Related pages

Issue 454771 - chromium - ARC: build rules for webview ...

... R/org/chromium/ui/ out/target ... gen_sources/GYP/shared_intermediates ... intermediates/R/framework-res.apk -m -J out ...
Read more

Conventions and patterns for multi-platform development ...

The Chromium Projects. Search ... names for each platform and typedef it to a shared ... is most easily managed by the UI framework to which it ...
Read more

Overview of Chromium UI Framework · crosswalk-project ...

Overview of Chromium UI Framework. James Ketrenos edited this page Sep 2, 2013 · 1 revision ... Crosswalk testing framework; Crosswalk testing home;
Read more

Getting Around the Chromium Source Code Directory ...

The Chromium Projects. Search this site. Home. ... Common shared library code is in the Libraries/base ... A simple framework for doing UI development, ...
Read more

chromiumembedded / cef / wiki / GeneralUsage — Bitbucket

The Chromium Embedded Framework ... Better automated UI testing via the DevTools remote debugging ... Debug contains a debug build the CEF shared ...
Read more

The Chromium Embedded Framework - Adobe Blogs

Many thanks to Marshall Greenblatt, the Chromium Embedded Framework founder, for writing and helping edit part of this blog post. The Chromium Embedded ...
Read more

chromiumembedded / cef / wiki / Tutorial — Bitbucket

This Wiki page explains how ... It exposes some interfaces/methods that are shared by multiple processes and ... AppKit.framework, Chromium Embedded ...
Read more

Android Lollipop | Android Developers

Note: The Android 5.1 Lollipop MR1 update is available with additional features and fixes. For more information, see the Android 5.1 API Overview.
Read more