Skip to content

[1.5.2 Patch] 桌面急救/大文件/重复文件打开目录精确化,不再只打开总目录 #62

Description

@weidonglang

用户反馈现象

用户在“桌面急救”中看到桌面占用较大,例如包含不少临时图片和视频。用户点击卡片里的“打开目录”后,程序直接打开了桌面根目录。

用户反馈:

  • 如果是大文件、截图、压缩包、超过 30 天未修改等分类,直接打开桌面根目录帮助不大。
  • 更合理的是打开具体大文件、截图、压缩包实际所在的子目录。

问题判断

当前“打开目录”粒度可能过粗:

  • 分类卡片只知道总目录。
  • 用户想定位具体占用来源,但打开的是总目录。
  • 对桌面、下载、用户目录、大文件、重复文件等场景,必须能进一步定位到具体文件所在目录或 Top N 列表。

该问题不只影响桌面急救,也可能影响:

  • 下载目录急救。
  • 大文件 Top 100。
  • 重复文件扫描。
  • 压缩包分类。
  • 截图分类。
  • 超过 30 天未修改分类。
  • 软件与应用占用分析。
  • 游戏库、网盘、浏览器缓存、剪辑软件缓存定位。

修复目标

所有“打开目录”都要尽量打开最具体、最有用的位置。

具体要求

1. 分类卡片打开逻辑

不同分类应采用不同策略:

超过 1GB:打开最大文件所在目录;同时提供查看全部 Top N。
截图:打开截图文件所在目录;如果多个目录,展示列表。
压缩包:打开压缩包所在目录。
超过 30 天未修改:展示 Top N 文件/目录列表,每项有打开所在目录。
快捷方式:打开快捷方式所在目录,必要时显示目标路径。
重复文件:打开选中重复组中具体文件所在目录。

2. 结果列表

对于聚合类卡片,不要只有总数和大小,应提供:

  • Top N 文件。
  • Top N 目录。
  • 文件路径。
  • 大小。
  • 修改时间。
  • 打开所在目录。
  • 复制路径。

3. 打开目录行为

如果目标是文件:

  • 打开父目录。
  • 尽可能在资源管理器中选中文件。

如果目标是目录:

  • 打开该目录。

如果路径不存在:

  • 提示该路径可能已被移动或删除。
  • 提供重新扫描。

4. 安全要求

  • 本阶段仍然只读分析,不删除、不移动桌面文件。
  • 不因为用户点击打开目录而加入清理计划。
  • 不自动打开敏感数据库文件,例如微信/QQ 聊天数据库。
  • 对系统目录、浏览器凭据目录、聊天数据库目录保持保护提示。

UI 要求

桌面急救 / 下载目录 / 大文件 / 重复文件卡片增加:

查看明细
打开最大项所在目录
复制路径
重新扫描

对于“超过 30 天未修改”这类聚合项,按钮不要只叫“打开目录”,而是更明确:

查看老文件列表

测试要求

新增测试或 mock 数据覆盖:

  • 桌面下多个子目录有大文件,打开最大文件所在目录。
  • 桌面根目录下有大文件,打开桌面并选中文件。
  • 超过 30 天未修改有多个文件时显示 Top N 列表。
  • 路径已删除时提示重新扫描。
  • 微信/QQ 数据库目录不提供危险操作。

验收标准

  • 桌面急救不再只打开桌面根目录。
  • 大文件、截图、压缩包、老文件、重复文件均可定位到具体所在目录或明细列表。
  • 仍保持只读,不移动、不删除用户文件。
  • cargo test --all-targets 通过。
  • npm run build 通过。
  • release notes 记录该体验修复。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions