github std-microblock/breeze-shell 0.1.31

one day ago

中文

✨ 功能

  • general: 在上下文菜单中按下 Shift 键时,刷新字体缓存
  • general: 新配置面板
  • general: 优化枚举处理并更新 breeze-ui 包配置
  • general: 支持 360FileBrowser
  • general: 设置渲染线程名称,更新 breeze-ui
  • general: 实现 breeze-taskbar (#271)
  • js: 实现屏幕侧边按钮
  • js: 向 menu_controller 添加 get_widget 方法
  • js: 为 breeze_ui::window::create_ex 添加 on_close 支持
  • js: 实现 breeze.set_can_reload_js
  • js: 实现 max_heightenable_scrollingenable_child_clippingcrop_overflow
  • js: flex grow, text max width
  • js: 在循环任务中执行 js 事件回调
  • js: 禁用最大堆栈大小检查
  • js: 实现 on_mouse_up 回调
  • js: 将 flex::spacer 绑定到 react
  • js: 将 alignItems/justifyContent/gap 绑定到 react
  • js: 添加 ctx.context.window_info.class_name #275
  • menu: 当通过 js 中的 show_at 显示时不再运行 js listener
  • menu: 向 menu_controller 添加 show_at 和 show_at_cursor 方法

🐛 错误修复

  • general: 修复有时除背景外无任何内容可见的问题
  • general: breeze_ui::window::create_ex 在浅色模式下现在会创建浅色窗口
  • general: 修复 insertBefore 逻辑以在渲染器中正确定位子元素
  • general: 修复上下文菜单 block_js_reload
  • general: 将 block_js_reload 从 atomic_bool 更改为 atomic_int 以便更好地控制
  • general: 不要在 widget 构造函数中访问 menu_render
  • general: 添加 #include
  • general: 构建修复
  • blook: 将 zasm 依赖版本降级至 2024.05.14
  • build: 使用日期而非提交哈希来指定版本
  • config: 确保只存在一个配置窗口
  • config: 更新 SVG_CONFIG 以基于主题使用动态填充颜色
  • inject: 移除 inject 目标的 UAC 策略设置
  • script: 改进监视文件中语法错误的错误日志记录
  • shell: 修复高分辨率屏幕中的菜单最大高度
  • shell: 上下文菜单布局

🎨 样式

  • general: 使用 clang-format 重新格式化所有代码

♻️ 代码重构

  • general: 将滚动实现移至 ui::flex_widget
  • general: 使用 children 而非 item_widgets 来存储 menu_widget 的项
  • general: breeze-ui 和 js 的线程逻辑
  • general: 移除不必要的空值检查
  • general: 移除重复的 \
  • menu_widget: 分离 scrollable_widget 用于处理滚动

📦 构建系统

  • general: 移除 lockfile 并手动锁定版本
  • CI: 使用最新 xmake

🧹 杂项

  • general: 添加 nushell 重建脚本并使 ps1 脚本兼容旧版 pwsh

English

✨ Features

  • general: Refresh font cache when Shift key is pressed in the context menu
  • general: New configuration panel
  • general: Optimized enumeration handling and updated breeze-ui package configuration
  • general: Support for 360FileBrowser
  • general: Set rendering thread name, updated breeze-ui
  • general: Implement breeze-taskbar (#271)
  • js: Implement screen side buttons
  • js: Added get_widget method to menu_controller
  • js: Added on_close support for breeze_ui::window::create_ex
  • js: Implement breeze.set_can_reload_js
  • js: Implement max_height, enable_scrolling, enable_child_clipping, crop_overflow
  • js: flex grow, text max width
  • js: Execute js event callbacks in loop tasks
  • js: Disable maximum stack size check
  • js: Implement on_mouse_up callback
  • js: Bind flex::spacer to react
  • js: Bind alignItems/justifyContent/gap to react
  • js: Added ctx.context.window_info.class_name #275
  • menu: No longer run js listener when shown via show_at in js
  • menu: Added show_at and show_at_cursor methods to menu_controller

🐛 Bug Fixes

  • general: Fixed issue where sometimes nothing was visible except the background
  • general: breeze_ui::window::create_ex now creates light mode windows in light mode
  • general: Fixed insertBefore logic to correctly position child elements in the renderer
  • general: Fixed context menu block_js_reload
  • general: Changed block_js_reload from atomic_bool to atomic_int for better control
  • general: Do not access menu_render in widget constructor
  • general: Added #include
  • general: Build fixes
  • blook: Downgraded zasm dependency version to 2024.05.14
  • build: Use date instead of commit hash for version specification
  • config: Ensure only one configuration window exists
  • config: Updated SVG_CONFIG to use dynamic fill color based on theme
  • inject: Removed UAC policy settings for inject targets
  • script: Improved error logging for syntax errors in watched files
  • shell: Fixed menu max height in high-resolution screens
  • shell: Context menu layout

🎨 Styles

  • general: Reformatted all code using clang-format

♻️ Code Refactoring

  • general: Moved scroll implementation to ui::flex_widget
  • general: Use children instead of item_widgets to store menu_widget items
  • general: Thread logic for breeze-ui and js
  • general: Removed unnecessary null checks
  • general: Removed duplicate \
  • menu_widget: Separated scrollable_widget for handling scrolling

📦 Build System

  • general: Removed lockfile and manually locked versions
  • CI: Use latest xmake

🧹 Miscellaneous

  • general: Added nushell rebuild script and made ps1 script compatible with older pwsh

Don't miss a new breeze-shell release

NewReleases is sending notifications on new releases.