Bastien Nocera wrote: > On Fri, 2011-02-04 at 08:52 +0100, Kevin Kofler wrote: >> Adam Williamson wrote: >> > it's a design feature, we are told. the intent is that applications >> > should offer the option to set themselves as the default, instead of >> > the desktop providing a central config point. >> >> To the GNOME developers (Adam, I know you are just the messenger): >> >> This is very broken. You cannot expect non-GNOME applications to support >> setting themselves as the default in GNOME. (For example, if you want to >> use, say, Konqueror as your default browser, how would you set that? >> Konqueror obviously does not support GNOME preferences.) > > There's no GNOME preferences involved. Make sure Konqueror sets itself > as the handler for x-scheme-handler/http (and https) and you're done. > >> Plus, we have seen where leaving this to the applications leads to on >> Window$: applications fight for being the default and the user never gets >> asked! Instead, merely running an app will change his/her file >> associations, leading to a ping-pong effect. Please do not head down that >> road! > > We're talking about browsers and mailers. Browsers already do that.
KDE doesn't use x-scheme-handler for browsers at all. Instead, it has a Default Components setting (very similar to GNOME 2's Preferred Applications) where, for the browser, you can set it up to use the program associated with the text/html file type (the default setting) or to use a specific browser. (In fact, this was added in KDE 4, modeled on the GNOME 2 dialog. In KDE 3, it was hardcoded to always use the text/html file association as a browser.) In Fedora, the default text/html handler for KDE is set in /usr/share/kde-settings/kde-profile/default/share/applications/defaults.list with the following line: text/html=kde4-konqueror.desktop; We patch the startkde script to set XDG_DATA_DIRS so this setting is also seen by non-KDE applications. None of the browser packages I have installed override this setting. If I want to change it, I have to either change the priorities for text/html in the file associations or force a default browser in Default Components in KDE's System Settings (or both). See line 286 of: http://quickgit.kde.org/?p=kdelibs.git&a=blob&h=c86a77b02f5bbcc3f357042afb6c6d1cb4bdcb2a&hb=e737ed00d8782d82559d8a9ef9d3bef56ced0b49&f=kdecore/kernel/ktoolinvocation_x11.cpp for how this is implemented in KDE. (You'll notice that, when not running the KDE Plasma Workspace, kdelibs will use xdg-open if installed, so GNOME's way of handling URLs, including x-scheme-handler, will be used in that case.) As of KDE 4.6, KDE now supports x-scheme-handler for the things KDE's old protocol handler scheme is used for, but that isn't quite the same thing as what GNOME uses it for. Kevin Kofler -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel