https://bugs.kde.org/show_bug.cgi?id=439477

            Bug ID: 439477
           Summary: Clicking on links in Qt/KDE apps causes the website to
                    be cached, rather than the link being forwarded to the
                    browser
           Product: frameworks-kio
           Version: 5.83.0
          Platform: Neon Packages
                OS: Linux
            Status: REPORTED
          Severity: grave
          Priority: NOR
         Component: general
          Assignee: kio-bugs-n...@kde.org
          Reporter: geisse...@gmail.com
                CC: kdelibs-b...@kde.org
  Target Milestone: ---

SUMMARY

When clicking a link in a Qt/KDE app on Plasma, the website is downloaded to a
cache directory (~/.cache/kioexec/krun/) and the local file will be opened in
the default browser, rather than the link being forwarded to the browser.

This causes many issues:
- The file is usually displayed as text, not as website
- When recognised as html, images and cross-references to other pages don't
work; the website looks damaged
- The cache is never cleaned by the system; the unnecessary files remain. The
directory will grow enormously unless users take action.

Links in programs occur very often: In PDFs, in About and Help windows, in
markdown preview, and many many more places. Usually, links can be copy/pasted
manually into the browser, avoiding the cache. However, sometimes they are not
copyable, so there is no possibility to avoid the cache. (For some links, I
never found out which websites they were actually pointing to, because the text
content didn't tell.)

Websites should never get downloaded and cached, but the links should simply be
sent to the browser, like GTK applications such as Thunderbird do.


STEPS TO REPRODUCE
1. Open any Qt/KDE app containing a web link (e. g. Kate -> Help -> About Kate
-> Link to the Kate website)
2. Click it

OBSERVED RESULT
- The website will get downloaded to ~/.cache/kioexec/krun/ (a KIO notification
with progress bar shows up)
- The default browser will open the file, usually displayed as plain text
- The file will remain across sessions and restarts, unless deleted manually

EXPECTED RESULT
- The link should be sent to the browser without caching.
- The website should load as html, not as text.
- All content should look correct; cross-references should work.

SOFTWARE/OS VERSIONS
Operating System: KDE neon 5.22
KDE Plasma Version: 5.22.2
KDE Frameworks Version: 5.83.0
Qt Version: 5.15.3
Kernel Version: 5.8.0-59-generic (64-bit)
Graphics Platform: Wayland

ADDITIONAL INFORMATION
This didn't happen at the time of Plasma 5.20.
Related:
- https://bugs.kde.org/show_bug.cgi?id=413885
-
https://askubuntu.com/questions/1186697/what-uses-and-fills-up-cache-kioexec-krun


WORKAROUND

Save the following Python code to any place you like, make it executable (chmod
+x $FILENAME), and define it as logout script to clean the cache directory
regularly.


```
#! /usr/bin/env python3

import os
import shutil

HOME = os.path.expanduser('~')
KIO_CACHE = HOME+'/.cache/kioexec/krun/'

def clean_kiocache():
    for file_or_dir in os.listdir(KIO_CACHE):
        cached = KIO_CACHE+file_or_dir
        if os.path.isdir(cached):
            shutil.rmtree(cached)
        else:
            os.remove(cached)

if __name__ == '__main__':
    clean_kiocache()
```

(A normal shell script might have been shorter.)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to