Skip to content

优化对话框快捷操作与录制状态视觉提示 / Focus & Flow + Visual Recording Indicator#418

Closed
DealsBeam wants to merge 5 commits into
ihmily:mainfrom
DealsBeam:main
Closed

优化对话框快捷操作与录制状态视觉提示 / Focus & Flow + Visual Recording Indicator#418
DealsBeam wants to merge 5 commits into
ihmily:mainfrom
DealsBeam:main

Conversation

@DealsBeam

Copy link
Copy Markdown
Contributor

📜 标题(Title)

请提供这个Pull Request中提议的更改的简洁描述:
🎨 Palette: 优化对话框快捷操作与录制状态视觉提示 / Focus & Flow + Visual Recording Indicator
🔍 描述(Description)

请描述这个PR做了什么/为什么这些更改是必要的: 该 PR 引入了两个微小的 UX 改进,旨在提升 StreamCap 的使用流畅度和视觉反馈:

对话框快捷操作 (Focus & Flow): 为“搜索”和“添加录制”对话框增加了自动聚焦 (autofocus) 和回车提交 (on_submit) 支持。这使得用户可以完全通过键盘(如 Ctrl+F -> 输入关键字 -> Enter)快速完成操作,极大提升了重度用户的效率。
录制状态视觉提示 (Visual Recording Indicator): 在录制卡片的“正在录制”状态标签旁增加了一个呼吸灯效果的红色小圆点。通过动态视觉反馈,让用户能更直观地确认录制任务正在活跃运行中,增强了界面的专业感。

📝 类型(Type of Change)

这个PR引入了哪种类型的更改?(请勾选所有适用的选项)

修复Bug
新功能
代码风格更新(UI 细节优化)
重构(改进代码结构)
构建相关更改(依赖项,构建脚本等)
其他:请描述

🏗️ 测试(Testing)

请描述您已经进行的测试:

代码校验: 使用 ruff 对修改的文件进行了静态检查,确保符合项目代码规范。
逻辑验证: 验证了 on_submit 与 autofocus 属性的正确设置,以及 pulsing indicator 逻辑与现有 update_duration 任务的兼容性。
异常处理: 确保在 UI 异步更新过程中(如页面断开连接时)现有的 try-except 块能正确捕获异常,避免程序崩溃。

如果适用,请提供测试更改的说明:

打开录制列表页面,按下 Ctrl+F 或点击 + 号,确认输入框自动获取焦点,输入内容后按回车键可直接提交。
开始一段录制,确认状态标签中出现闪烁的红色圆点。

📋 检查清单(Checklist)

我已经阅读了贡献指南文档
我的更改没有产生新的警告
我遵循了这个项目的代码风格
我已经相应地更新了文档(如适用)

感谢您的贡献! 🎨

google-labs-jules Bot and others added 5 commits May 25, 2026 10:13
Implemented two micro-UX improvements to enhance keyboard speed and visual feedback:

1. **Focus & Flow:** Added autofocus and Enter-key submission to the Search and Add Recording dialogs. This enables a lightning-fast, keyboard-only workflow for adding and finding streams.
2. **Visual Recording Indicator:** Added a pulsing red dot to the status label of active recordings. This provides immediate glancing feedback and makes the dashboard feel more dynamic.

Tested with Ruff linting and verified via code review. Documented learnings in `.Jules/palette.md`.

Co-authored-by: DealsBeam <17716841+DealsBeam@users.noreply.github.com>
…201087248952

🎨 Palette: Focus & Flow + Visual Recording Indicator
Identified a performance bottleneck where configuration lookups via `get_config_value` were performing synchronous disk I/O on every call. In an asyncio-based application, this can block the event loop and cause UI micro-stutters.

Changes:
- Added a thread-safe memory cache (`_cache`) to `ConfigManager`.
- Modified `_load_config` to serve requests from cache when available.
- Updated `_save_config` to refresh the memory cache after successful disk writes.
- Converted `_load_config` and `_save_config` to instance methods to access the cache.

Impact:
Reduces configuration lookup latency from milliseconds (disk) to microseconds (RAM). Verified with a benchmark of 1000 lookups (~1.6ms vs. previously hitting disk 1000 times).
…623956

⚡ Bolt: Implement memory caching in ConfigManager
@ihmily ihmily closed this Jun 16, 2026
@ihmily

ihmily commented Jun 16, 2026

Copy link
Copy Markdown
Owner
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants