Skip to content

feat(media): add playback controls to desktop media widget - #4159

Open
dinhokusanagi wants to merge 5 commits into
noctalia-dev:mainfrom
dinhokusanagi:pr-media-controls
Open

feat(media): add playback controls to desktop media widget#4159
dinhokusanagi wants to merge 5 commits into
noctalia-dev:mainfrom
dinhokusanagi:pr-media-controls

Conversation

@dinhokusanagi

Copy link
Copy Markdown

gh pr create
--repo noctalia-dev/noctalia
--head dinhokusanagi:pr-media-controls
--base main
--title "feat(media): add playback controls to desktop media widget"
--body "$(cat <<'EOF'

Manual Coverage

  • Tested on Niri
  • Tested on Hyprland
  • Tested on Sway
  • Tested on another compositor:
  • Tested with different bar positions and density settings
  • Tested at different interface scaling values
  • Tested with multiple monitors

Screenshots / Videos

The horizontal media widget now displays the album artwork, track information, and playback controls in a single horizontal layout.

Example:

[ Artwork ] [ Title / Artist ] [ Previous Play/Pause Next ]

Checklist

  • This PR is ready for review, or it is marked as Draft.
  • I read and followed the relevant guidance in CONTRIBUTING.md.
  • I ran just format with clang-format v22+ installed, or this PR has no code changes.
  • I ran the relevant build or test commands, or explained why they were not run.
  • I self-reviewed the changes.
  • I checked for new warnings or errors.
  • I will update end-user documentation after merge, or this PR does not change user-facing configuration or behavior.
  • I added or updated assets/translations/en.json, or this PR adds no new user-facing strings.
  • I did not edit non-English translation files unless this PR is explicitly for translation tooling, an import/export sync, or a maintainer-requested locale change.
  • I used the existing canonical names for config keys, IPC names, paths, and identifiers.

Additional Notes

This PR adds playback controls to the horizontal desktop media widget and adjusts the layout so the controls are displayed alongside the track information. The existing vertical layout is preserved.
EOF
)"
Closes #4147

This PR implements the proposed media playback controls for the bar media widget and also improves the horizontal desktop media player layout.

@dinhokusanagi

dinhokusanagi commented Aug 29, 2026

Copy link
Copy Markdown
Author
recording_20260829_214523.mp4

Also adjusted the desktop media player title marquee scrolling speed.

I initially reduced setAutoScrollSpeed() to slow down the title, but 1.0F is the minimum value supported by Label, and the scrolling was still visually too fast. Instead of changing the global animation/motion system, the marquee duration is now multiplied by 3.0F, making the title take three times longer to travel the same distance.

This keeps the marquee independent from the global animation speed settings while providing a slower and more comfortable scrolling speed. Tested locally and confirmed the result looks much better.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add media playback controls to the bar media widget

1 participant