Display progress bars in taskbar/dock
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 7
Description
## Proposal
Currently, progress bars are only displayed inside LMMS, and a user must have the window open and visible to see when a task is finished. By displaying progress in the taskbar or dock, users would be able to see task completion with the LMMS window hidden or closed. This allows them to more efficiently use their time, doing something else while LMMS loads a project*, renders, or performs some other long-running operation.
Support for this varies by OS:
### Windows

*MPC-HC Displaying playback position when paused (left) and playing (right)*
Taskbar icons on windows can have one of five progress states, listed here:
[TaskbarItemProgressState Enumeration (System.Windows.Shell)](https://msdn.microsoft.com/en-us/library/system.windows.shell.taskbaritemprogressstate(v=vs.110).aspx)
These are set with the
[TaskbarItemInfo.ProgressState Property (System.Windows.Shell)](https://msdn.microsoft.com/en-us/library/system.windows.shell.taskbariteminfo.progressstate(v=vs.110).aspx)
And the progress percentage itself is set via
[TaskbarItemInfo.ProgressValue Property (System.Windows.Shell)](https://msdn.microsoft.com/en-us/library/system.windows.shell.taskbariteminfo.progressvalue(v=vs.110).aspx)
[This seems to be supported by qt.](https://doc.qt.io/qt-5/qwintaskbarprogress.html)
### macOS

*Downloads folder with progress bar*
I can't seem to find documentation for this, but I did find [a BSD licenced thing on GitHub](https://github.com/hokein/DockProgressBar), and a [StackOverflow question](https://stackoverflow.com/questions/43347722/qt-show-progress-bar-in-dock-macos/43372236).
### Linux

*Unity dock shows firefox download progress*
This doesn't seem to be possible (yet) in gnome, [according to this bug report](https://bugzilla.gnome.org/show_bug.cgi?id=701402)
However, it is possible with Unity, using the [LauncherAPI](https://wiki.ubuntu.com/Unity/LauncherAPI#Progress)
### Footnote
*If issue #3769 is fixed.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the platform-specific requirements in this proposal and the linked Qt QWinTaskbarProgress documentation. Compare what progress indicators are supported on Windows, macOS, and Linux, then define completion as showing LMMS long-running task progress in the taskbar or dock where the platform permits it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100