Changed
- 重构了脚本接口架构,
lv_bindings被重构为 SNI 层。
- 重构了页面管理架构,
nav、screen_mgr、scene被整合为 Activity 概念。
- 优化了 CardPager 和 SlideWidget。
- 重构了语言接口,
current_lang私有化,避免越界访问。
- 优化了列表转场动画。
- 优化了活动切换时控制中心和消息列表的面板收回逻辑。
- 优化了闪光灯显示逻辑。
- 优化了应用列表动画参数。
- 优化了时钟更新回调中的空指针检查和显示逻辑。
- 优化了活动切换和动画处理。
- 优化了可滚动对象的回调移除逻辑。
- 优化了定时器自动删除功能。
- 优化了调试条位置管理,增加全局位置同步与恢复功能。
- 优化了滚动对象查找逻辑。
- 优化了滚动条显示与隐藏逻辑。
- 优化了脚本路径解析与图像源设置。
- 优化了通用句柄解析能力。
- 优化了属性设置。
- 优化了动画变量管理。
- 优化了内存清理与颜色类型桥接支持。
- 优化了文件目录结构。
- 优化了动画属性配置、自定义回调及 JS 动画路径集成。
- 优化了源文件和头文件的动态更新。
- 优化了脚本引擎初始化和退出回调。
- 优化了 LVGL 对象创建函数的参数检查和类型转换。
Added
- 新增了 Activity 生命周期管理功能,支持 Activity 的创建、销毁、暂停、恢复等操作。
- 新增了页面管理模块,页面统一使用栈管理,且引入了 Activity 概念。
- 新增了 SNI 模块,提供更清晰的脚本接口定义,支持面向对象的 LVGL 操作。
- 新增了 LVGL 组件的 SNI 封装,包括:
- image 组件
- dropdown 组件
- checkbox 组件
- canvas 组件
- button matrix 组件
- calendar 组件
- 新增了 Activity 页面切换动画支持,包括开始和结束回调。
- 新增了应用头逻辑和标题变化动画支持。
- 新增了 OPEN 滑动面板状态并完善状态流转。
- 新增了内置备用表盘支持。
- 新增了模块导入功能,支持 JS 模块导入。
- 新增了获取前一个 Activity 的接口。
- 新增了系统初始化错误处理和获取表盘活动的功能。
- 新增了主题主色调的定义。
- 新增了设备信息视图中添加 LOGO 显示。
- 新增了字符图标颜色的 Toast 提示功能。
- 新增了编码器目标设置为 Activity View,添加滑动组件打开和关闭事件。
- 新增了滑动组件的状态管理和动画过渡功能。
- 新增了图表组件及相关 API。
- 新增了图像按钮支持。
- 新增了脚本应用 Debug 页面。
- 新增了 float 类型桥接支持。
- 新增了全局常数的导出功能。
- 新增了新的颜色类型和相关方法。
- 新增了蛇形命名转驼峰命名的转换函数。
- 新增了别名回退功能以支持类型映射。
- 新增了控制台日志功能,添加不同日志级别的支持。
- 新增了 ElenixOS API 的初始化和挂载功能。
Fixed
- 修复了表盘列表无法触摸表盘图片滑动的问题。
- 修复了内存泄漏问题。
- 修复了脚本引擎的问题,防止正常运行时进入错误状态。
- 修复了可滚动对象的回调管理,优化了滚动条显示与隐藏逻辑,解决了滚动条闪烁问题。
- 修复了时钟更新回调中的空指针检查。
- 防止在表盘活动显示应用标题栏。
- 修复了控制中心自动回弹时滚动对象丢失的问题。
- 修复了返回 Activity 时无法获取 scrollable 对象的问题。
- 修复了活动创建时根屏幕为空的处理逻辑。
- 修复了构造函数参数类型检查,确保只接受对象或 null。
- 修复了滚动对象有效性检查。
- 修复了方法名可能为空的问题。
Added
- 提供智能手表系统的基础功能框架。
- 提供 JavaScript 脚本运行与生命周期管理能力。
- 提供 JavaScript API 支持,包括:
- 部分 LVGL Widget 功能;
- LVGL 事件系统的注册与删除;
- LVGL 动画的创建与运行;
- LVGL 定时器相关功能。
- 提供虚拟显示器,用于 PC 端模拟运行与调试。
- 提供初步的硬件抽象与可移植接口设计,用于支持多平台适配。
- 建立工程与开发文档的基础结构。
- 提供了开发者工具脚本,用于快速生成项目结构。
- 提供模块化系统架构,支持核心功能按模块组合与扩展。
- 提供脚本与系统核心之间的隔离机制,提升系统稳定性与安全性。
- 提供基础调试与开发支持能力,提升桌面端开发与调试效率。