I've been quiet the last few months. With an increased (at-work) workload and the start of returning to a normal life, I simply haven't had the time to sit down and focus on FOSS. Despite that, I still managed to contribute some worthwhile improvements to elementary.
Disclaimer: elementary 6 "Odin" is still in development, so the features displayed below are not final. Watch the elementary Blog for updates on the next release.
Sound Indicator
After adding device management support, I continued making incremental improvements to the sound indicator. It will now remember previously selected devices, so switching between various setups is now easier (#192). Devices with long names (HDMI from graphics cards can be pretty bad) are now ellipsized, keeping the popup menu reasonable sized (#193). Finally, MPRIS players created by browsers will now go away once playback is complete, keeping the menu tidy (#196).
MPRIS players from web browsers disappear once they're complete. Secondary audio devices can be easily activated after being used once, simplifying switching between audio setups.
Notifications
Notifications in elementary 6 are now more compliant with the FreeDesktop.org Desktop Notifications Specification. Application icons and images sourced from a URI (#120) as well as raw image data (#123, #211) are now supported in both the notifications and the indicator. Support for actions has also been added (#125), making notifications interactive.
Improved image support and actions make notifications more effective and useful.
Darkbar: My First elementary App
As I started using more non-elementary applications, I found a few that didn't correctly support the dark theme. In particular, I found VS Code and GIMP annoying with dark content and a light titlebar, and sought to find a solution. The VS Code extension GTK Dark Title Bar did the trick. Diving into it's source code, I found the necessary xprop command to force a window to use dark styles.
After some experimentation, Darkbar was born. Darkbar runs in the background, and applies your theme preference to X11 windows using server-side decorations (SSD). This works well for GTK2 applications like GIMP, and electron-based apps like Slack and Todoist. It even works in other desktop environments, with some caveats:
It only works in X11. Wayland is not supported.
It only works windows managers supporting GTK dark style variants. This includes Gala in elementary, and Mutter in GNOME. Xfwm4 is not currently supported as it doesn't support the style variants.
If you're running elementary 6, you can download and install Darkbar from here. Otherwise, you'll need to configure the elementary AppCenter repo (instructions intentionally left off until it's official) and build the Flatpak yourself.
I've started getting back in the groove with Xubuntu and Xfce development. I'll be working on some releases over the next couple of days and will have another blog post shortly with the latest updates there. If you want to support my work, sponsor me on GitHub or Patreon. Every little bit is appreciated!
Besides many fixes and translation updates, this development release
ships various new features brought to you by our GSoC students. My
personal highlights are:
Automatic restore of tabs on startup
Possibility to 'trust' launchers
Support for 'recent:///'
Zoom-level as a per-directory setting
Various file-copy improvements
Here the complete log:
Restore split-view separator position (Issue #616)
Skip handler when switching to other split-view tab (Issue #615)
Change thunar_file_is_trashed to thunar_file_is_trash
New menu item for trashed files: "restore and open folder" (#382)
Open restored tabs in correct order (Issue #613)
After restoring tabs set focus on the last focused tab
For "foo.txt" next available file should be of the form "foo N.txt"
Ask "close window with tabs?" as well for STRG+Q (Issue #611)
Keep modified time of files copied from foreign locations (#218)
Use more general method to pick file names on copy (Issue #244)
Add possibility to 'trust' launchers (Issue #156)
Remove reload button from toolbar (!125)
Add a preference to restore tabs on startup (Issue #338)
Use thunar_g_file_new_for_computer and thunar_g_file_new_for_network
Add support for gtk-recent (recent:///) (Issue #257)
Add zoom-level as a per-directory setting (Issue #418)
Generate incremental file name on name collision (Issue #210)
Fix GLib-CRITICAL in list-view (Issue #487)
thunar_file_is_executable() now checks if .desktop file is safe
Fix missing folder in history when opened in new tab (Issue #594)
I am a bit late with my blog post .. though I suppose better late than never :D
This year Xfce applied to the Google Summer of Code program and I am happy to tell you that we accomplished to get 3 slots ! (That’s very good, since new organization usually only receive one or two slots)
There was a lot of interest by students. In total 15 proposals were received for Xfce.
So sadly we had to refuse several nice proposals. However the number of mentors as well was limited, so that this year Xfce anyhow would not be able to mentor more students.
Now there are 3 very motivated GSoC students supporting Xfce. Allow me to introduce:
Yongha Hwang, who applied for various thunar issues, mostly related to file transmission.
Sergios Anestis Kefalidis, who as well works on thunar, targeting a wide range of features.
Vishal Sharma, who is looking into sample/skeleton panel plugins in different GOI supported languages.
Since I maintain thunar, I am the main mentor of Sergios and Yongha.
These two and as well some other thunar focused GSoC applicants kept me very busy by adding many contributions long before the official coding part started :)
Already now I think mentoring for GSoC was a good thing to do. The gain by far outweighs the burden. I don’t have much time left to work on issues myself, though the students overcompensate that by magnitudes.
Here a small taste of the recent activity related to GSoC:
… and that is only thunar. There is as well a lot of activity on exo and libxfce4-util !
Many various smaller tweaks already made it into thunar 4.17.2. Some bigger ones, e.g. issues from the project ideas list are currently in work, or even already landed in the current master.
If you want to take a peek on the upcoming changes and new features already now, you can check the students frequent blog posts: