Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add UI-only mode for SwayOSD (without backend integration). #115

Open
SherLock707 opened this issue Dec 8, 2024 · 2 comments
Open

Add UI-only mode for SwayOSD (without backend integration). #115

SherLock707 opened this issue Dec 8, 2024 · 2 comments

Comments

@SherLock707
Copy link

I would like to request a feature for SwayOSD that allows it to operate in a UI-only mode, without relying on backend control. This would be particularly useful for scenarios where brightness or audio control is managed through external tools or scripts.

Use Case:
I use ddcutil to control my monitor's brightness, as it does not appear under brightnessctl. In such cases, I want to:

  1. Execute a script to adjust the brightness.
  2. Use SwayOSD to display the UI with a specified brightness level, without direct integration with the backend.

This functionality could also extend to other controls, such as audio volume or mute/unmute states.

Proposed Solution:
Introduce a UI-only mode where SwayOSD:

  • Accepts external inputs (e.g., brightness level or volume) via command-line arguments or an API.
  • Displays the corresponding UI without attempting to interact with the backend.

Example:

swayosd-client --brightness mock 20
swayosd-client --output-volume mock 50
swayosd-client --output-volume mock 0

Benefits:

  • Increases flexibility for users managing brightness or volume via custom tools or scripts.

Thank you for considering this enhancement!

@ansxor
Copy link

ansxor commented Dec 25, 2024

I don't know if you're still interested in this but I had this same problem and ended up making my own OSD. I tried approaching this one, but it just felt way too tightly coupled to specific backends or implementations like pactl. (it's WIP but it works for me, so)
https://github.com/ansxor/wayland-osd
You run the server and then use the client like the following to change brightness:

wayland-osd-client brightness 50

I also include a Wireplumber monitoring program for output audio devices that uses the same CLI if you use that.

@SherLock707
Copy link
Author

I don't know if you're still interested in this but I had this same problem and ended up making my own OSD. I tried approaching this one, but it just felt way too tightly coupled to specific backends or implementations like pactl. (it's WIP but it works for me, so) https://github.com/ansxor/wayland-osd You run the server and then use the client like the following to change brightness:

wayland-osd-client brightness 50

I also include a Wireplumber monitoring program for output audio devices that uses the same CLI if you use that.

Thanks, I'll check it out!

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

No branches or pull requests

2 participants