#1013958 Context menu prefers Chromium over x-www-browser

Package:
xfce4-terminal
Source:
xfce4-terminal
Description:
Xfce terminal emulator
Submitter:
Chris Waters
Date:
2024-07-04 08:06:03 UTC
Severity:
minor
#1013958#5
Date:
2022-06-27 23:49:22 UTC
From:
To:
If I right-click on a URL in the terminal, and then choose "Open Link"
on the pop-up menu, the link is opened in Chromium, even though I have
Firefox selected as the default for both exo-open and Debian's
x-www-browser alternative. If I type "exo-open --launch WebBrowser
http://debian.org", the URL is opened in Firefox (as expected), but
xfce4-terminal's internal code seems to ignore all my settings!

#1013958#14
Date:
2022-07-07 22:34:17 UTC
From:
To:
I have learned more about this. It turns out that it only happens if
the user has not set the xfce default browser app! Without a user-set
default, exo-open defaults to using x-www-browser, but
xfce4-terminal's context menu prefers chromium!

Once a user setting _exists_, the context menu happily uses it, but
until then, it will choose chromium over x-www-browser.

This is a minor bug, since there's an easy workaround: the user can
actually set their default apps. But I think it's still a bug. (Also,
it seems odd that the context menu doesn't just call exo-open, but
there may be reasons for that.)

#1013958#21
Date:
2024-07-04 08:02:32 UTC
From:
To:
I think this bug is considerably more complicated that the OP suggests:
there are numerous suggestions on the web about how to workaround it,
none of which work for everybody, none of which worked for me, and most
of which don't work for a significant proportion of people.  for me.

This bug is noted upstream as XFCE bug 10314, which is detailed
at https://bugzilla.xfce.org/show_bug.cgi?id=10314.

Amazingly, there is a suggestion there that worked for me, namely the
one detailed by 'runkharr', which I reproduce here in case it helps
fellow Debian users and so we all get on the same page.

1. Create a file `exo-launch.desktop´ in your `~/.local/share/applications´ directory wit something like the following content:

    [Desktop Entry]
    Name=Exo Launcher
    Type=Application
    Icon=gtk-open
    Categories=Desktop;
    Comment=A try to force 'xfce4-terminal' to use the preferred application(s)
    GenericName=Exo Launcher
    Exec=exo-open %u
    MimeType=text/html;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;application/x-mimearchive;
    Terminal=false
    OnlyShowIn=XFCE;

2. Create (if not already existing) a local `defaults.list´ file, again in your `~/.local/share/applications´ directory. This file must start with a "group header" of

    [Default Applications]

3. Insert the following three lines somewhere below this `[Default Applications]´ group header the folowing three lines:

    x-scheme-handler/http=exo-launch.desktop;
    x-scheme-handler/https=exo-launch.desktop;
    x-scheme-handler/ftp=exo-launch.desktop;