Skip to content

fix: [pin_screenshots] fix typo and hide window for save dialog#805

Merged
deepin-bot[bot] merged 1 commit into
linuxdeepin:release/eaglefrom
add-uos:release/eagle
Mar 13, 2026
Merged

fix: [pin_screenshots] fix typo and hide window for save dialog#805
deepin-bot[bot] merged 1 commit into
linuxdeepin:release/eaglefrom
add-uos:release/eagle

Conversation

@add-uos

@add-uos add-uos commented Mar 12, 2026

Copy link
Copy Markdown
Contributor
  • Fix typo: '锁房比例' -> '缩放比例' in comment
  • use hide when select folder.

log: use hide when select folder
bug: https://pms.uniontech.com/bug-view-336643.html

max-lvs
max-lvs previously approved these changes Mar 12, 2026
- Fix typo: '锁房比例' -> '缩放比例' in comment
- use hide when select folder.

log: use hide when select folder
bug: https://pms.uniontech.com/bug-view-336643.html
@add-uos add-uos changed the title fix: [pin_screenshots] fix typo and handle window flags for save dialog fix: [pin_screenshots] fix typo and hide window for save dialog Mar 13, 2026
@deepin-ci-robot

Copy link
Copy Markdown

deepin pr auto review

针对提供的 git diff 内容,我从语法逻辑、代码质量、代码性能和代码安全四个维度进行了审查。以下是详细的改进意见:

1. 语法逻辑

  • 版权年份更新:
    • 变更: Copyright (C) 2019 ~ 2019 -> Copyright (C) 2019 ~ 2026
    • 意见: 逻辑正确,符合项目维护的时间跨度更新。
  • 注释修正:
    • 变更: //获取屏幕的锁房比例 -> //获取屏幕的缩放比例
    • 意见: 逻辑正确,修正了之前的错别字("锁房" -> "缩放"),提高了代码可读性。
  • 隐藏窗口逻辑变更:
    • 变更: m_toolBar->setHiden(); -> this->hide();
    • 意见: 逻辑上发生了重大改变。
      • 原代码:仅隐藏工具栏 (m_toolBar)。
      • 新代码:隐藏整个主窗口 (MainWindow)。
    • 风险: 需要确认这是否是预期行为。如果目的是在保存到指定位置时让用户专注于文件选择对话框,隐藏主窗口是合理的。但如果用户只是想隐藏工具栏以查看完整截图,则新逻辑可能导致主窗口意外消失,影响用户体验。建议结合上下文确认此修改是否符合产品需求。

2. 代码质量

  • 注释规范:
    • 意见: 代码中使用了中文注释,这在团队内部沟通是高效的,但在国际化项目中建议统一使用英文注释,或者确保构建系统能正确处理编码。
  • 拼写/命名:
    • 原代码: setHiden() (注意拼写是 Hiden 而非 Hidden)。
    • 意见: 虽然这次修改删除了该调用,但如果 m_toolBar 类中确实存在 setHiden() 方法,建议在后续代码重构中将其重命名为标准的 setHidden()hide(),以符合 Qt 命名规范和英语拼写习惯。

3. 代码性能

  • 设备像素比获取:
    • 代码: m_pixelRatio = qApp->primaryScreen()->devicePixelRatio();
    • 意见: 这行代码没有变更,但作为性能考量点,devicePixelRatio() 在高 DPI 屏幕下通常不会频繁变化。如果 initMainWindow() 在程序生命周期中只调用一次,这是最佳实践。如果可能被多次调用,建议增加判断逻辑,避免不必要的重复计算。
  • 窗口隐藏:
    • 代码: this->hide();
    • 意见: 调用 QWidget::hide() 是非常轻量级的操作,不会造成性能问题。

4. 代码安全

  • 文件路径拼接:
    • 代码: m_lastImagePath = QString("%1/%2.%3").arg(savePath).arg(m_imageName).arg(formatStr);
    • 意见: 这里使用了硬编码的 / 作为路径分隔符。
    • 建议: 虽然 Qt 在大多数情况下能正确处理混合分隔符,但在跨平台开发(Windows/Linux/macOS)中,为了确保绝对的安全性和规范性,建议使用 QDir::separator() 或者使用 QFileInfo / QDir 来拼接路径,例如:
      m_lastImagePath = QDir(savePath).filePath(m_imageName + "." + formatStr);
      这样可以避免潜在的路径解析错误或路径遍历风险(尽管在此处风险较低,因为 savePath 理论上受控)。

总结建议

  1. 确认功能变更: 重点审查 m_toolBar->setHiden() 改为 this->hide() 的逻辑。如果是为了在弹出保存对话框时完全隐藏截图界面,这是合理的;否则应回退或调整。
  2. 路径处理优化: 建议将硬编码的路径分隔符 / 替换为 QDir 相关的路径处理函数,以增强跨平台兼容性和健壮性。
  3. 持续规范命名: 注意检查项目中是否存在类似 setHiden 这种非标准命名的遗留代码,逐步统一规范。

@add-uos

add-uos commented Mar 13, 2026

Copy link
Copy Markdown
Contributor Author

/merge

@deepin-bot

deepin-bot Bot commented Mar 13, 2026

Copy link
Copy Markdown
Contributor

This pr cannot be merged! (status: blocked)

@deepin-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: add-uos, max-lvs

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@add-uos

add-uos commented Mar 13, 2026

Copy link
Copy Markdown
Contributor Author

/merge

@deepin-bot deepin-bot Bot merged commit 81edfd6 into linuxdeepin:release/eagle Mar 13, 2026
7 checks passed
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.

3 participants