Testers Wanted: Plasma Browser Integration Manifest v3

A while ago Google announced a new API level for browser extensions, named Manifest v3. You might have heard it in the news that it will impact the ability for extensions to arbitrarily filter traffic. While this particular aspect does not affect Plasma Browser Integration, there’s still a large number of behavior and API changes that we need to adapt to, especially when it comes to tampering with a website’s content. It’s getting more urgent as Chrome will stop stop running extensions still using the old version 2 by the end of this year!

Yes, this is the font you think it is.
Konqi cheerfully waiving at the future

Luckily, most extension features, namely KDE Connect integration, tabs and history runner, and download monitoring could be ported quite easily. However, media controls and Share API integration needed a significant rewrite in order to work with the new restrictions imposed on us, notably it is no longer possible for an extension to inject arbitrary inline JavaScript into websites. Many thanks to Fabian Vogt for refactoring this part of the extension!

Please help test the upcoming release!

Continue reading Testers Wanted: Plasma Browser Integration Manifest v3

Introducing KIO AFC

A KIO worker for accessing iOS devices through the Apple File Conduit service.

Dolphin file manager showing the directory contents of an iPhone. Folders include "Apps", "Books", "DCIM" (Camera), "Documents", "Downloads", and 8 more.
Dolphin browsing the contents of an attached iPhone

While there have been several projects like this for both KDE 4 and Frameworks 5, this one has been written on top of the latest KIO classes and will be officially part of the next KDE Gear release. It is now part of the kio-extras module, which also houses the Android counterpart for transferring files over the MTP protocol.

Continue reading Introducing KIO AFC

Performance Musings

Sometimes while using my computer I notice random slowness when launching a certain application or some feature that just doesn’t run very well. That’s always reason enough for me to take a deeper look.

My tool of choice for analyzing performance issues is Hotspot, KDAB’s excellent perf visualizer. It comes with an easy to use GUI for browsing the results collected by it. Particularly its flame graph lets you quickly detect, well, hotspots during execution. Just launch an application through Hotspot or attach it to a running one and look at the graphs. Depending on your system configuration you might need to adjust the perf_event_paranoid kernel setting in order for it to inspect other processes.

Hotspot window showing a “flame graph” of Spectacle’s startup sequence, with a big chunk occupied by the “kImageAnnotator” constructor.
Found an obvious issue in Spectacle’s startup sequence
Continue reading Performance Musings

Physical Akademy 2022 in Barcelona

I just returned from this year’s KDE Akademy in Barcelona. After two years of only virtual sprints it has been great to finally meet up with many fellow KDE friends, most of which I haven’t seen since 2019, and also get to know some of the faces of people that have joined in-between.

Picture from the peak of a mountain: rocky mountain top with bushes occupying the lower right quadrant of the image, a radio tower on the right, east-Ibrian landscape as far as the eye can see, with blue haze covering mountains far in the distance to the horizon, blue skies, clouds in the distance.
On top of the world at Montserrat
Continue reading Physical Akademy 2022 in Barcelona

Reunited after a decade

It’s been more than ten years since Dolphin, KDE’s versatile file manager, introduced its own custom QGraphicsView-based view engine. With that came more detailed view modes with grouping support, animated transitions, and a new places panel with sections. Unfortunately, it is all based on a now long-abandoned “Itemviews NG” project, and is inherently incompatible with Qt’s traditional model-view code used elsewhere in KDE.

Dolphin's (file manager) main window with sidebar of places (Home, Pictures, Documents, Downloads, Music, etc)
Looks virtually the same, doesn’t it?

A few weeks ago I sat down and over the course of a few evenings I ported Dolphin back to using the KFilePlacesView provided by KIO which is used in the Open and Save dialogs, among other places.

Continue reading Reunited after a decade

PSA: Plasma Browser Integration Currently Unavailable [Update: It’s Back]

on the Firefox Add-ons page.

Dead Konqi sitting on the Earth
Konqi is somewhat impaired today.

A fix is being worked on, but might take a bit, sorry about that.

Update [2021-10-25]: Due to issues with setting up the now-mandatory 2FA for logging into the Add-on page, we cannot address the issue at this time. Stay tuned…

Update [2021-10-27]: An updated version has been uploaded but it’s pending review…

Update [2021-10-29]: The update has been released, the extension is available again, in version 1.8.1 for Firefox.

Blast from the Past: Icon Dialog

In my 10 year anniversary blog post I mentioned how I wanted to fully redesign the icon chooser dialog which hasn’t changed since its inception and my childhood. Well, guess what I just did between sessions at this year’s Akademy.

Dialog window with a 6x3 icon grid and a context menu for icon category selection
Fully redesigned icon dialog

I recently added a job creator test application to KJobWidgets so I could test the job tracker in Plasma’s notification center without having to write fake KJob classes all the time. The user interface for it was quickly bodged together in Qt Designer, so the other day I figured, I might as well try to recreate the new icon dialog layout and hook its existing C++ logic to a new UI.

Continue reading Blast from the Past: Icon Dialog

10 Years in KDE – A Retrospective

(or: “Accidental Autobiography”)

Can you believe how time flies? Today, ten years ago my first ever KDE patch was merged. A little while later I was granted KDE developer rights with write access to all of KDE’s git repositories. This power was somewhat frightening, after having submitted not even a hand full of patches at that time, and it actually took many years for the thrill of hitting Return on a “git push” to abate. Let me take this decennial as an opportunity to tell you stories from back in the days™ and how I ended up where I did, where I surely would not be without KDE!

A box cake with blue icing, in its tin, "20 years of KDE" written on it
Let’s have some cake, too!

I actually started writing on this blog post last December, to have plenty of time for collecting trivia and ideas, never before seen prototype screenshots, and more. I surely wouldn’t have thought this to turn into half an autobiography. Mind that I’ll try my best to verify the statements that follow but they can still be inaccurate or skewed from being just memories. Now grab a cup of your favorite beverage, sit back, and join me on this trip down memory lane.

Continue reading 10 Years in KDE – A Retrospective

Overhauling the Job Tracker

It has already been more than a year since I’ve posted an update on notifications, so it’s definitely time to give you a bit of an update on what’s been going on. This time let me show you all the nifty changes that I put into our job tracker, even though at a glance it might just look the same.

Plasma job progress popup from "Dolphin", reads "Copying: 1234 of 1337 files to Build Machine / Awesome Project"
Destination label is now friendlier and a handy hyperlink

Little tweaks such as labels in the details section only growing but never shrinking for the duration of a job, so that while copying folder structures with significantly varying path lengths, the popup no longer constantly changes its size.

Continue reading Overhauling the Job Tracker

Plasma Browser Integration 1.8

I’m pleased to announce the immediate availability of Plasma Browser Integration version 1.8 on the Chrome Web Store as well as Firefox Add-Ons page. This release was originally intended to be just a bugfix update, but instead comes with new features, the usual slew of bug fixes and translation updates, but more importantly: it’s now available on the Microsoft Edge store (needs Plasma 5.21)!

Dark blue space background with stars, a cute dragon wearing a red bandana with a "K" on it, sitting ontop of the Earth which has a blue network cable plugged in whose lose end is squiggling around the KDE Plasma logo
Konqi surfing the world wide web

Plasma Browser Integration bridges the gap between your browser and the Plasma desktop. It lets you share links, find browser tabs and visited websites in KRunner, monitor download progress in the notification center, and control music and video playback anytime from within Plasma, or even from your phone using KDE Connect!

Continue reading Plasma Browser Integration 1.8