Skip to content

add indicator controls for direct playback on mediaplayer - #898

Open
romanstingler wants to merge 1 commit into
MalpenZibo:mainfrom
romanstingler:feat/media-indicator-controls
Open

add indicator controls for direct playback on mediaplayer#898
romanstingler wants to merge 1 commit into
MalpenZibo:mainfrom
romanstingler:feat/media-indicator-controls

Conversation

@romanstingler

Copy link
Copy Markdown
Collaborator

Adds indicator_controls configuration option to enable direct media
playback controls on the bar indicator without opening the media menu.

When enabled, the indicator responds to left/middle/right clicks and
scroll wheel for previous, play/pause, next, and volume (5% steps).

Controls target the currently playing player, falling back to the last
active player when nothing is playing
. The media menu cannot be opened
from the bar when this option is enabled.

closes #884

@romanstingler
romanstingler force-pushed the feat/media-indicator-controls branch from 3a52536 to c1b04a6 Compare August 11, 2026 19:23

@MalpenZibo MalpenZibo left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a big fan of the left/middle/right mouse click (mainly because with a laptop it's a pain in the ass). We could probably create, in a follow-up PR, some control buttons directly in the status bar.

About this PR:

  • check how the src/modules/settings/audio.rs handles the scroll, maybe with this implementation we are losing some events because of the D-Bus round-trip
  • maybe we could use this config
[media_player.indicator_controls]
left = "PlayPause"   # Menu | Prev | PlayPause | Next | None
middle = "Menu"
right = "Next"
scroll = "Volume"

We lost the prev button (which, in my experience, maybe isn't as used as the others), but we can still open the menu. Also, play/pause on the left button seems a better alternative.

@romanstingler
romanstingler force-pushed the feat/media-indicator-controls branch from c1b04a6 to 25ebbdd Compare August 21, 2026 17:27
@impervius

Copy link
Copy Markdown
Contributor

Hey, thanks for implementing this

Regarding @MalpenZibo's comment, this is his project and he surely will decide what gets merged, but my 2 cents is that making this (and everything else in this project) configurable is the best way to make this project fit the need for as much people as possible, and to their use cases. While having the control buttons in the status bar is a cool new feature and I might try it, I feel like my idea of making it with left/right/middle click is more natural (and requires less attention, as you can click anywhere on the pill).

This PR doesn't change the default behavior and just adds an alternative way to control the media player, and I think that's OK. The config suggested by @MalpenZibo is cool too (and should allow also further customization, some people can choose to not use the "Menu" config at all, some can choose to use it exclusively, etc). But maybe that can be done in another PR and not be required for this one?

Also, I wonder for the general case if that should be added on another PR as a generic feature in ashell: allowing users to choose custom right/left/middle click for all the elements in the status bar (for example, middle clicking the time to run a custom timer script, right click on notifications to clear them, etc.).

@MalpenZibo

Copy link
Copy Markdown
Owner

The point is that adding too many configuration possibilities increases the project complexity. When I started ashell the idea was to have something easy to configure and ready to be used.

For this reason, we should carefully decide what to add

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Shorter media controls

3 participants