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
本文介绍了Aura项目的背景及其目的,即构建一个全新的桌面窗口管理系统,该系统通过硬件加速提供丰富的UI体验。文章深入探讨了Aura的UI设计原理,包括如何通过WebUI减少对GTK等依赖,并利用UI::Compositor实现硬件加速的窗口绘制。此外,还概述了Aura的工作流程及当前存在的问题。
3295

被折叠的 条评论
为什么被折叠?



