Fluiddesk v2.1 Bug Fixes & Changelog
#17 FFmpeg Transcoding Progress Tracking
- Real-Time Progress Parsing: Updated
VideoConvertWorkerto parse live frame and time metrics directly from FFmpeg's stdout progress stream (-progress pipe:1). - Dynamic UI Feedback: Connected worker signals to dynamically update the
QProgressBarfrom 0 percent to 99 percent based on source video duration, replacing the previous indeterminate animation. - Finalization Stage: Configured the progress bar to transition smoothly into a marquee "Finalizing & Saving" status while FFmpeg flushes and writes the final container, culminating in a "Complete!" confirmation.
#16 System Tray Branding & Process Identification
- Process Identity & Metadata: Configured explicit application identifiers during initialization via
QApplication.setApplicationName("Fluiddesk")andQApplication.setDesktopFileName("fluiddesk")so system monitors, dock panels, and taskbars correctly recognize the app instead of defaulting to generic script names. - Tray Tooltip Integration: Explicitly set the system tray icon tooltip to display
"Fluiddesk"on hover. - Theme Asset Alignment: Retained compatibility with system theme default tray icons for clean packaging across diverse desktop environments.
#15 Desktop Environment State Restoration on Exit
- GSettings State Caching: Implemented a
DesktopStateManagerthat captures the user's active system wallpaper URI, sizing options, and file manager desktop layout parameters viagsettingsimmediately prior to application launch. - Safe X11 Window Un-Reparenting: Added clean detachment logic to un-reparent the video layer X11 window handle back to the root desktop hierarchy upon closure.
- Robust Signal Interception: Registered
atexithooks and signal handlers (SIGINT,SIGTERM,SIGHUP) to guarantee that original desktop settings, background configurations, and Nemo icon preferences are fully restored under any normal or unexpected exit condition.
#14 Launch Crash Mitigation for Empty Directories
- Null Check & Null-State Handling: Implemented safety checks and length validations on video collections to prevent unhandled exceptions during initial asset loading.
- Automatic First-Run Provisioning: Added a first-run initialization routine that checks for the existence of
~/Videos/LiveWallpapers/and automatically creates it if missing. - Bundled Demo Asset Deployment: Configured the application to extract and deploy the bundled
Fluiddesk.webmdemo asset from the package payload into the user's local wallpaper directory on fresh installs, guaranteeing a valid video source is present and preventing startup crashes.
Notes:
-
Acceptable Video Formats: Unfortunately due to the chromium browser structure of Fluiddesk, the player is only compatible with .webm filetypes. The original purpose of this application was to be light and private while still providing the same functionality as other applications on the market. Due to choosing to put privacy and low resource consumption somewhat over functionality, only .webm files can be played. I understand that this can be dissapointing, however in our 2.0 update, we chose to create a conversion tool built into the Fluiddesk UI. By using this tool, you can select any other video format from across your device and set it to convert to .webm. When the conversion is finished, Fluiddesk automatically adds the new .webm file to your library for use.
-
Program Tutorial: As the application grows, and new features are added, using Fluiddesk has become more and more complex. In the files list for this release, I have included a video file of a demonstration of the program. In our next update, we will be adding a tutorial directly integrated under a help tab in the UI to help mitigate some confusion.
-
Program Opening Behavior: Fluiddesk has a very unique feature which actually solves a bug which exists in some other programs. The nemo desktop manager and X11 are notorious for being difficult to work with as far as ordering windows on a desktop goes, therefore in order to keep the wallpapers in an editable state and have the wallpaper exist under your desktop's interacable icons and clickable surfaces, when the Fluiddesk UI is open, it will open over the top of your desktop icons! This is completely normal! By doing this, you preserve your ability to pan, zoom, and edit your backgrounds. A gsettings command will run to relayer your desktop appropriately when you select the [x] button on the UI tab and downsize it to your tray. When you reopen the UI, it will pull the wallpaper back over the top of your icons (for editing purposes). A difficult behavior of nemo I am still working out is that it will randomly reorder its window management system, throwing the wallpaper back on top when not prompted. To fix this, simply select change wallpaper from your tray, and select the [x] button.
-
Incoming Update Concept: Something I have heard a few times about Fluiddesk is users want to have access to a library of wallpapers. To keep the program free, lightweight, and private, I have decided to create a website to support this rather than bundle it into the application. In an ideal world, users would be able to use editing software on the website (much like another application we all know and love on windows) to create and share wallpapers. I will also upload some wallpapers as well. Please reach out or add to the thread on here or reddit if you have any ideas for some features you would like to see on our online library/ wallpaper creation tool.





