Plasma/Browser Integration: Difference between revisions

From KDE Community Wiki
(→‎What is it?: Added mention of history runner, origin URL metadata)
(→‎How to install: Added MS Edge store link, clarify that Chrome instructions work for most Chromium-based browsers)
Line 24: Line 24:
** For Google Chrome, Chromium, and Vivaldi: https://chrome.google.com/webstore/detail/plasma-integration/cimiefiiaegbelhefglklhhakcgmhkai
** For Google Chrome, Chromium, and Vivaldi: https://chrome.google.com/webstore/detail/plasma-integration/cimiefiiaegbelhefglklhhakcgmhkai
** For Mozilla Firefox: https://addons.mozilla.org/en-US/firefox/addon/plasma-integration/
** For Mozilla Firefox: https://addons.mozilla.org/en-US/firefox/addon/plasma-integration/
** For Microsoft Edge: https://microsoftedge.microsoft.com/addons/detail/dnnckbejblnejeabhcmhklcaljjpdjeh
** For using the extension from source code:
** For using the extension from source code:
*** For Google Chrome, Chromium, go to ''chrome://extensions'', enable "Developer Mode", click "load unpacked extension" and point it to the "extension" directory in the folder where you downloaded the source code
*** For Google Chrome, and most Chromium-based browsers, go to ''chrome://extensions'', enable "Developer Mode", click "load unpacked extension" and point it to the "extension" directory in the folder where you downloaded the source code
*** For Mozilla Firefox: go to ''about:debugging'', "This Firefox", "Enable add-on debugging", click "Load Temporary Add-on" and point it to the "manifest.json" file within the "extension" directory  in the folder where you downloaded the source code
*** For Mozilla Firefox: go to ''about:debugging'', "This Firefox", "Enable add-on debugging", click "Load Temporary Add-on" and point it to the "manifest.json" file within the "extension" directory  in the folder where you downloaded the source code



Revision as of 19:34, 26 October 2021

This project aims to provide better integration of web browsers with the Plasma desktop.

What is it?

Plasma Browser Integration is a system for common browsers to closer fit into the Plasma shell. This includes:

  • Media Controls
    • Lets you control video and audio players in websites using the Media Controller plasmoid, media keys on your keyboard, and even remotely from your phone
  • Send links via KDE Connect
    • Adds a context menu entry to links, enabling you to send them to your phone and other paired devices
  • Show and control downloads from Plasma’s notification area
    • Add downloaded files to recent documents for quick access throughout the Plasma desktop
    • Optionally store the URL a file was downloaded from in its metadata
  • Let websites prompt for sharing contents to other applications
  • Find browser tabs and search the browser history in KRunner (Alt-Space)
    • Make sure the "Browser Tabs" module is enabled in Plasma Search (KRunner) settings
    • Needs to be granted permission to acesss the browser history in order to search it

How to install

The extension consists of two parts:

  • The native host: An application that runs on your computer that the browser extension talks to:
    • It should be available as a package from your distribution.
    • If building from the source into a custom prefix, you will want to build with -DCOPY_MESSAGING_HOST_FILE_HOME to install the files firefox/chrome need
    • See Chrome documentation and Firefox documentation for where the native host and its accompanying configuration file must be placed in.

Privacy

Generally, everything is handled on your PC between the browser and your desktop.

Note, however:

  • When using Tabs Runner, the extension will query the browser for website favicons of all open pages. They are open already anyway, so this normally won't result in any additional network activity.
  • When using Enhanced Media Controls, the extension will announce a website-provided album cover image URL, which may be downloaded and displayed outside the browser, such as by the desktop shell.
  • A website might be able to detect that you are using this extension by querying for specific objects added to the website's environment.

KDE's Privacy Policy applies.

How to help

If you find an issue, please check the list of open bugs, and then file a bug report.

For help and suggestions, you'll find us in #plasma on Libera Chat IRC.

You can browse the source code on KDE's GitLab instance: https://invent.kde.org/plasma/plasma-browser-integration