Bug 74071
| Summary: | Better way to handle desktop file renames | ||
|---|---|---|---|
| Product: | [Retired] Red Hat Public Beta | Reporter: | Owen Taylor <otaylor> |
| Component: | kdebase | Assignee: | Than Ngo <than> |
| Status: | CLOSED RAWHIDE | QA Contact: | Ben Levenson <benl> |
| Severity: | medium | Docs Contact: | |
| Priority: | high | ||
| Version: | null | CC: | chris.ricker, david.c.maurer, hp, pmmm, than |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | i386 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2002-09-26 03:49:08 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
This is a must-fix bug for future milestones. 3.0.3-10 includes solution B to handle desktop file renames better.
>Solution B: When renaming the desktop files, we always
>do that by prepending "kde-", and we make the
>findServiceByDesktopName try the the name with kde-
>prepended as a fallback from the specified name.
Has the patch been sent upstream? |
There are possible compatibility concerns about renaming the KDE desktop files to add the kde- prefix; they are used frequently to look up different services using KService::serviceByDesktopName (often via KApplication::startServiceByDesktopName) The problem is shown by the size of the .dtfix patch that was needed for kdebase, though, admittedly, most of that is the trivial case of kcmshell desktop files. A bit of additional technology would make the renames invisible to applicaitons using serviceByDesktopName: the addition of the kde- prefix is done by the desktop-file-install tool. What it should do, is, at the same time add a X-RedHat-DesktopName field with the original name. Then, make kio/kio/kservice.c:KService::init() use this, if set, to set m_strDesktopEntryName.