Skip to content

fix(monitor): add support for kSpecialType10 computer type#704

Merged
deepin-bot[bot] merged 1 commit into
linuxdeepin:develop/eaglefrom
add-uos:fix-369547-add-kSpecialType10-support
Jul 13, 2026
Merged

fix(monitor): add support for kSpecialType10 computer type#704
deepin-bot[bot] merged 1 commit into
linuxdeepin:develop/eaglefrom
add-uos:fix-369547-add-kSpecialType10-support

Conversation

@add-uos

@add-uos add-uos commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Add support for kSpecialType10 in CPU frequency display, monitor overview info, and EDID parsing. Fix syntax error in height comparison.

添加 kSpecialType10 计算机类型支持,涵盖 CPU 频率显示、显示器概览信息和 EDID 解析。修复高度比较语法错误。

Log: 添加 kSpecialType10 计算机类型支持
PMS: BUG-369547
Influence: kSpecialType10 计算机类型的 CPU 频率显示和显示器信息解析逻辑正确,修复了 EDIDParser 的语法错误。

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @add-uos, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@deepin-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

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

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 force-pushed the fix-369547-add-kSpecialType10-support branch from 69a0e2f to 09bd43c Compare July 13, 2026 01:37
@add-uos add-uos changed the title fix(cpu monitor): add support for kSpecialType10 computer type fix(monitor): add support for kSpecialType10 computer type Jul 13, 2026
Add support for kSpecialType10 in CPU frequency display, monitor
overview info, and EDID parsing. Fix syntax error in height
comparison.

添加 kSpecialType10 计算机类型支持,涵盖 CPU 频率显示、显示器概览信息和 EDID 解析。修复高度比较语法错误。

Log: 添加 kSpecialType10 计算机类型支持
PMS: BUG-369547
Influence: kSpecialType10 计算机类型的 CPU 频率显示和显示器信息解析逻辑正确,修复了 EDIDParser 的语法错误。
@add-uos add-uos force-pushed the fix-369547-add-kSpecialType10-support branch from 09bd43c to 27ff76e Compare July 13, 2026 01:41
@deepin-ci-robot

Copy link
Copy Markdown

deepin pr auto review

★ 总体评分:95分

■ 【总体评价】

代码实现了新机型kSpecialType10的设备信息适配,逻辑正确且增加了尺寸守卫条件
适配逻辑清晰,修复了潜在的误覆盖问题且无安全漏洞,仅因多重枚举判断略显冗长扣5分

■ 【详细分析】

  • 1.语法逻辑(正确)✓

代码在DeviceCpu.cpp、DeviceMonitor.cpp、EDIDParser.cpp中正确追加了kSpecialType10的枚举匹配分支,commonfunction.h中枚举定义完整。EDIDParser::parseScreenSize()中新增的m_Width==300 && m_Height==200守卫条件逻辑严密,有效防止了误覆盖。
潜在问题:无
建议:无

  • 2.代码质量(良好)✓

代码遵循了既有的编码模式,并在EDIDParser.cpp中顺手修复了"sepcial"到"special"的拼写错误。DeviceMonitor.cpp中清理了多余的空格。
潜在问题:多处使用Common::specialComType == Common::kSpecialTypeX的链式判断,随着机型增加可读性下降,维护成本上升。
建议:考虑将需要特殊处理的机型枚举收集到QSet或使用switch-case结构,减少重复代码。

  • 3.代码性能(无性能问题)✓

仅涉及简单的枚举值比较和字符串替换操作,时间复杂度为O(1),对系统性能无影响。
潜在问题:无
建议:无

  • 4.代码安全(存在0个安全漏洞)✓

漏洞对比统计:新增漏洞 0 个,减少漏洞 0 个,持平 0 个
本次代码修改仅涉及枚举判断和字符串硬编码替换,不存在外部输入处理、内存操作或命令执行,无攻击面。

  • 建议:无

■ 【改进建议代码示例】

// 建议在Common类中提供静态集合或辅助函数来简化多重枚举判断
// 例如在 commonfunction.h 中:
class Common
{
public:
    static const QSet<SpecialComType> &specialMonitorTypes() {
        static const QSet<SpecialComType> types = {
            kSpecialType6, kSpecialType7, kSpecialType9, kSpecialType10
        };
        return types;
    }
};

// 在 DeviceMonitor.cpp 中简化判断:
if (Common::specialMonitorTypes().contains(Common::specialComType)) {
    // ...
}

// 在 EDIDParser.cpp 中保持守卫条件:
if (Common::specialComType == Common::kSpecialType7 ||
    Common::specialComType == Common::kSpecialType10) { // special task:378963
    if (m_Width == 300 && m_Height == 200) {
        m_Width = 296;
        m_Height = 197;
    }
}

@add-uos

add-uos commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

/forcemerge

@deepin-bot

deepin-bot Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

This pr force merged! (status: unstable)

@deepin-bot deepin-bot Bot merged commit 6db5c14 into linuxdeepin:develop/eagle Jul 13, 2026
21 of 23 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