Repository navigation
fix: search applications by GenericName and Keywords (linuxdeepin/developer-center#3375) - #829
foresee-io wants to merge 1 commit into
Conversation
1. Forward the shared application model's Keywords role and its updates.
2. Match the existing scalar GenericName and selected Keywords without
reading desktop files or collecting additional locale variants.
3. Add search regression coverage for generic names, keywords and
unrelated locale values.
Log: Find applications by their generic names and desktop entry keywords
Influence: GenericName participates in search for all vendors; existing
name matching and search ranking priorities are retained.
feat: 支持通过 GenericName 和 Keywords 搜索应用
1. 转发共享应用模型的 Keywords 角色及其更新通知。
2. 直接匹配既有单数 GenericName 和选中的 Keywords,不另行读取桌面文件,
也不收集其他 locale 的值。
3. 补充通用名称、关键词及无关 locale 值的搜索回归测试。
Log: 支持通过通用名称和桌面文件关键词查找应用
Influence: GenericName 参与所有厂商应用的搜索;保留既有名称匹配逻辑及
原有匹配规则的相对排序优先级。
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: foresee-io The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅ |
|
Hi @foresee-io. Thanks for your PR. 😃 |
|
Hi @foresee-io. Thanks for your PR. I'm waiting for a linuxdeepin member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Reviewer's GuideThe PR forwards localized Desktop Entry Keywords through the shared AppsModel and incorporates both GenericName and Keywords into the existing weighted search filter, with name matches retaining priority and regression tests covering the new fields. Sequence diagram for application search with GenericName and KeywordssequenceDiagram
participant Search as SearchFilterProxyModel
participant Apps as AppsModel
participant Shared as SharedApplicationModel
Search->>Apps: data(AppsModel::GenericNameRole)
Apps->>Shared: sourceData(GenericNameRoleName)
Shared-->>Apps: GenericName
Search->>Apps: data(AppsModel::KeywordsRole)
Apps->>Shared: sourceData(KeywordsRoleName)
Shared-->>Apps: localized Keywords
Search->>Search: calculateWeight(modelIndex)
Search-->>Search: name matches prioritized over GenericName and Keywords
Flow diagram for weighted application search matchingflowchart TD
Input[Search pattern] --> Name[Name matching]
Name --> Generic[GenericName matching]
Generic --> Transliteration[Transliterated and jianpin matching]
Transliteration --> Keywords[Keywords matching]
Keywords --> Weight[calculateWeight]
Weight --> Results[Ranked applications]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
I have read the CLA Document and I hereby sign the CLA. |
Related to linuxdeepin/developer-center#3375.
The launcher cannot currently find applications using their Desktop Entry
Keywords, andGenericNameis not consistently included in search.This PR extends the existing search filter to match
GenericNameandKeywordsfrom the shared application model, including exact, prefix and substring matches. It retains the existing name-matching behavior and gives keyword matches lower priority than name-based matches.Regression tests cover the new search fields and locale-selected keywords.
Depends on the corresponding
dde-shellanddde-application-managerchanges.启动器目前无法通过 Desktop Entry 的
Keywords查找应用,对GenericName的检索支持也不完整。本 PR 扩展现有搜索过滤器,支持对共享应用模型中的
GenericName和Keywords进行精确、前缀及子串匹配。保留原有名称检索行为,并将关键词匹配排在名称类匹配之后。同时补充新字段及本地化关键词的检索回归测试。
依赖对应的
dde-shell和dde-application-manager修改。Summary by Sourcery
Extend launcher application search to include GenericName and Keywords while preserving existing name-match ranking.
New Features:
Bug Fixes:
Enhancements:
Tests: