SUMMARY Maps have problems showing up in System Settings -> Default Applications due to this commit preventing NoDisplay services from showing up: https://invent.kde.org/plasma/plasma-workspace/-/commit/6ee50d925074fd9fcb36e43a2cab9b84f026727e Map .desktop files not associated with an app using kde-geo-uri-handler have NoDisplay=true. STEPS TO REPRODUCE 1. Have at least 2 .desktop files with Exec=kde-geo-uri-handler and MimeType=x-scheme-handler/geo in /usr/share/applications (or ~/.local/share/applications) 2. In System Settings -> Default Applications try choosing a different default Map OBSERVED RESULT Only a single map shows up no matter how many appropriate .desktop files there are EXPECTED RESULT All available x-scheme-handler/geo .desktop references should show up. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Arch kernel 6.12.47-1-lts KDE Plasma Version: 6.4.5 KDE Frameworks Version: 6.18.0 Qt Version: 6.9.2 ADDITIONAL INFORMATION Not sure how to resolve this. Maybe make an exception for maps?
I saw bug 508607 linked to this and read through it, so this seems to be tied to a much larger discussion. This particular problem with the default maps can be solved by just changing the conditional to the following: (service->noDisplay() && !mimeType.contains(QStringLiteral("x-scheme-handler/geo"))) But it seems a little janky and might open the door to more exceptions in other areas. Even in Default Applications it's possible to want a script or program (similar to kde-geo-uri-handler) to handle the opening of a file type.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/5860
Fixed by reverting the change. Currently only in 6.5.0, but we'll try to get it backported to 6.4.6 as well.