Commit 3021870
committed
feat: add default mirror source selection with DBus integration
1. Added MirrorSourceModel (QAbstractListModel) to manage mirror list
data with roles for id, name, url, and speed
2. Moved mirror info struct to common/dbus for shared use across modules
3. Replaced static mirrors.json with dynamic DBus-based mirror fetching
via ListMirrorSources and MirrorSource
4. Added MirrorSourcePopup QML component for mirror selection UI with
keyboard navigation and speed display
5. Refactored UpdateModel to use MirrorSourceModel instead of raw
MirrorInfoList and removed old speed info map
6. Updated UpdateWorker to fetch mirrors from DBus on activation and
handle mirror speed testing asynchronously
7. Changed setDefaultMirror to emit mirrorId string instead of
MirrorInfo object
8. Added getMirrorNameById utility method to UpdateModel
Log: Added default mirror source selection UI with DBus backend,
replacing static configuration; improved mirror speed testing and
display
Influence:
1. Verify mirror list is correctly loaded from DBus service on startup
2. Test default mirror selection and persistence across application
restarts
3. Validate mirror speed test results are displayed correctly (Untested/
Testing.../Timeout/ms)
4. Test keyboard navigation (up/down/enter/escape) in mirror popup
window
5. Verify smart mirror switch toggles visibility of default mirror
selection
6. Test mirror change propagation to system update backend via
SetMirrorSource
7. Ensure backward compatibility with existing update flow
feat: 添加默认镜像源选择功能及 DBus 集成
1. 新增 MirrorSourceModel 模型类管理镜像列表数据,包含 id、name、url、
speed 角色
2. 将镜像信息结构体移动到 common/dbus 目录供模块共享使用
3. 用 DBus 动态获取镜像列表替代静态 mirrors.json 配置文件
4. 添加 MirrorSourcePopup QML 组件实现镜像选择界面,支持键盘导航和速度
显示
5. 重构 UpdateModel,使用 MirrorSourceModel 替代原始 MirrorInfoList,移
除旧的测速信息映射
6. 更新 UpdateWorker,启动时通过 DBus 获取镜像列表,并异步处理镜像测速
7. 修改 setDefaultMirror 信号,发射镜像 ID 字符串而非对象
8. 添加 getMirrorNameById 工具方法
Log: 新增默认镜像源选择界面及 DBus 后端支持,替代静态配置;改进镜像测速
结果显示
Influence:
1. 验证启动时镜像列表正确从 DBus 服务加载
2. 测试默认镜像选择及应用重启后持久化保持
3. 验证镜像测速结果正确显示(未检测/测试中/超时/毫秒数)
4. 测试键盘导航(上/下/回车/退出)在镜像弹出窗口中的表现
5. 验证智能镜像开关切换时默认镜像选择区域的显隐逻辑
6. 测试通过 SetMirrorSource 接口切换镜像对系统更新的影响
7. 确保不影响现有更新流程的向后兼容性
PMS: TASK-388775
Change-Id: I0c267ba0b29c43845dd7ee3ea29d52852b344ff41 parent 2c5cc22 commit 3021870
60 files changed
Lines changed: 5467 additions & 1750 deletions
File tree
- src
- common/dbus
- dcc-update-plugin
- operation
- qrc/config
- qml
- translations
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 7 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
12 | 11 | | |
13 | 12 | | |
14 | 13 | | |
15 | 14 | | |
16 | | - | |
| 15 | + | |
17 | 16 | | |
18 | 17 | | |
19 | 18 | | |
20 | 19 | | |
21 | 20 | | |
22 | | - | |
| 21 | + | |
23 | 22 | | |
24 | 23 | | |
25 | 24 | | |
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
29 | | - | |
| 28 | + | |
30 | 29 | | |
31 | 30 | | |
32 | 31 | | |
| |||
38 | 37 | | |
39 | 38 | | |
40 | 39 | | |
41 | | - | |
| 40 | + | |
42 | 41 | | |
43 | 42 | | |
44 | 43 | | |
| |||
48 | 47 | | |
49 | 48 | | |
50 | 49 | | |
51 | | - | |
| 50 | + | |
52 | 51 | | |
53 | 52 | | |
54 | 53 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
| 53 | + | |
52 | 54 | | |
53 | 55 | | |
54 | 56 | | |
| |||
181 | 183 | | |
182 | 184 | | |
183 | 185 | | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
184 | 199 | | |
185 | 200 | | |
186 | 201 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
| 15 | + | |
14 | 16 | | |
15 | 17 | | |
16 | 18 | | |
| |||
52 | 54 | | |
53 | 55 | | |
54 | 56 | | |
| 57 | + | |
| 58 | + | |
55 | 59 | | |
56 | 60 | | |
57 | 61 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
134 | 142 | | |
135 | 143 | | |
136 | 144 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
0 commit comments