Preferred & Startup applications gone?
Kevin Kofler
kevin.kofler at chello.at
Tue Feb 8 08:51:02 UTC 2011
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
More information about the devel
mailing list