Skip to content
Commit 779c1f43 authored by Jonathan Marten's avatar Jonathan Marten Committed by Stefano Crocco
Browse files

kfmclient: Fix recursive invocation and handle association correctly

If 'kcmshell5 componentchooser' is used to set the default web
browser to Konqueror, then as well as changing the text/html file
association it sets [General]BrowserApplication=kfmclient_html.desktop
in kdeglobals.  ClientApp::createNewWindow() looks to see whether this
setting is present, but actually ignores its value and simply opens
the original URL via an OpenUrlJob.  The file type association then
calls kfmclient again and loops endlessly.

Split up the complicated test to handle the two cases appropriately:
either launching the external browser (setting starting with a '!')
using a CommandLauncherJob, or starting the service (setting not
starting with '!') using an ApplicationLauncherJob.  Check in both
of these code paths that kfmclient would not be called recursively.
If this happens, or if the setting is absent or there are problems
launching the job, then fall through to opening the URL in Konqueror
directly.  This means that it cannot loop and the URL is opened in
the intended application.
parent e00322a6
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment