chromium aura简介

来源:互联网 发布:java如果输入错误跳出 编辑:程序博客网 时间:2024/06/07 00:05

Aura 目的

Aura是为了创建一个全新的桌面窗口管理系统,通过硬件加速提供绚丽的UI效果。

UI设计

一个视图层级依附于一个widget,widget是一个跨平台类型,依赖于NativeWidget。NativeWidget根据平台不同有不同的实现,主要负责与平台沟通。NativeWidget在Aura里面对应的实现是 DesktopNativeWidgetAura,还有一个NativeWidgetAura(啥时候用到?)


使用WebUI消除gtk/HWND的使用。WebUI主要提供JavaScript调用。


使用UI::Compositor,利用硬件加速绘制窗口


Aura架构






事件处理



总结

大体工作流程:Aura定义了自己的Desktop,然后加入了RootWindow。Desktop对外就是一个Widget。Window集成了Layer,使用硬件加速进行绘制

Aura在我编的版本中还不稳定(定义环境变量GYP_DEFINES='use_aura=1'),下拉框显示不正常。不过好的一点是确实去除了gtk依赖,直接和x11打交道,这样移植会比较快

时间关系,只能研究到这里了


参考

1 http://www.chromium.org/developers/design-documents/aura/aura-overview

2 http://www.chromium.org/developers/design-documents/aura-desktop-window-manager