Skip to content

feat(waybar): add recording indicator - #1561

Merged
dhh merged 27 commits into
omacom:devfrom
eifr:screen-rec-indicator
Sep 10, 2025
Merged

feat(waybar): add recording indicator#1561
dhh merged 27 commits into
omacom:devfrom
eifr:screen-rec-indicator

Conversation

@eifr

@eifr eifr commented Sep 10, 2025

Copy link
Copy Markdown
Contributor

Summary

Adds a custom Waybar module that shows an indicator when screen recording with recording is active.

Details

  • Introduced a screen-rec-indicator.sh script in ~/.config/waybar/scripts/
  • Waybar config updated with a custom/screen-rec-indicator module
  • Indicator shows a red ⏺ while recording, hidden when idle

Why

This makes it immediately clear when a screen recording is running, helping avoid accidental recordings and improving usability.

Notes

  • Styling for the indicator is defined in style.css (.recording in red, .idle hidden).
  • Can be extended later to support clickable start/stop actions.
Comment thread config/waybar/config.jsonc Outdated
"custom/screen-rec-indicator": {
"on-click": "omarchy-cmd-screenrecord",
"exec": "~/.config/waybar/scripts/screen-rec-indicator.sh",
"interval": 1,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This is a bad solution. Waybar supports calling scripts via signals. You don't want polling every second even though you aren't recording at all.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

updated to use signals, wdyt?

@dhh
dhh changed the base branch from master to dev September 10, 2025 11:16
Comment thread config/waybar/style.css
@dhh
dhh merged commit a57060e into omacom:dev Sep 10, 2025
@dhh

dhh commented Sep 10, 2025

Copy link
Copy Markdown
Contributor

This is excellent! Much nicer than having to store state. Great suggestion re: signals, @abenz1267 👌

jardahrazdera pushed a commit to jardahrazdera/omarchy that referenced this pull request Sep 12, 2025
* init

* remove comment
format

* add pulse animation

* change to signals

* Move file to an internal location, match signal with what's being sent

* Need to sleep a second to ensure that the recording has either started or stopped before we render config

* Put it in a more prominent place

* Use OMARCHY_PATH

* Sharpen icons and add on-click to stop

* Drop animation but reserve space

* Lean entirely on waybar indicator rather than notification when starting

* Use an explaining function instead of comments

* Give time to ensure the process is dead before updating the indicator

* No longer needed

* Don't need to repeat the on-click

* Don't need a full second

* Naming

* SIRGTMIN shouldn't be here

* Don't need any of this that isn't seen or used

* Explain the sleep

* Mirror start/stop functions

* Go all-in on explaining functions

* Inline audio toggle

* Better just to move the clock rather than have it be permanently offset

* Fix all parameters and name them

* Add migration

* There is now a later omarchy-refresh-waybar offer

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
manuel1618 pushed a commit to manuel1618/omarchy that referenced this pull request Sep 15, 2025
* init

* remove comment
format

* add pulse animation

* change to signals

* Move file to an internal location, match signal with what's being sent

* Need to sleep a second to ensure that the recording has either started or stopped before we render config

* Put it in a more prominent place

* Use OMARCHY_PATH

* Sharpen icons and add on-click to stop

* Drop animation but reserve space

* Lean entirely on waybar indicator rather than notification when starting

* Use an explaining function instead of comments

* Give time to ensure the process is dead before updating the indicator

* No longer needed

* Don't need to repeat the on-click

* Don't need a full second

* Naming

* SIRGTMIN shouldn't be here

* Don't need any of this that isn't seen or used

* Explain the sleep

* Mirror start/stop functions

* Go all-in on explaining functions

* Inline audio toggle

* Better just to move the clock rather than have it be permanently offset

* Fix all parameters and name them

* Add migration

* There is now a later omarchy-refresh-waybar offer

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
hamidriaz1998 pushed a commit to hamidriaz1998/omarchy that referenced this pull request Sep 18, 2025
* init

* remove comment
format

* add pulse animation

* change to signals

* Move file to an internal location, match signal with what's being sent

* Need to sleep a second to ensure that the recording has either started or stopped before we render config

* Put it in a more prominent place

* Use OMARCHY_PATH

* Sharpen icons and add on-click to stop

* Drop animation but reserve space

* Lean entirely on waybar indicator rather than notification when starting

* Use an explaining function instead of comments

* Give time to ensure the process is dead before updating the indicator

* No longer needed

* Don't need to repeat the on-click

* Don't need a full second

* Naming

* SIRGTMIN shouldn't be here

* Don't need any of this that isn't seen or used

* Explain the sleep

* Mirror start/stop functions

* Go all-in on explaining functions

* Inline audio toggle

* Better just to move the clock rather than have it be permanently offset

* Fix all parameters and name them

* Add migration

* There is now a later omarchy-refresh-waybar offer

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
dhcrzf pushed a commit to dhcrzf/omarchy that referenced this pull request Sep 18, 2025
* init

* remove comment
format

* add pulse animation

* change to signals

* Move file to an internal location, match signal with what's being sent

* Need to sleep a second to ensure that the recording has either started or stopped before we render config

* Put it in a more prominent place

* Use OMARCHY_PATH

* Sharpen icons and add on-click to stop

* Drop animation but reserve space

* Lean entirely on waybar indicator rather than notification when starting

* Use an explaining function instead of comments

* Give time to ensure the process is dead before updating the indicator

* No longer needed

* Don't need to repeat the on-click

* Don't need a full second

* Naming

* SIRGTMIN shouldn't be here

* Don't need any of this that isn't seen or used

* Explain the sleep

* Mirror start/stop functions

* Go all-in on explaining functions

* Inline audio toggle

* Better just to move the clock rather than have it be permanently offset

* Fix all parameters and name them

* Add migration

* There is now a later omarchy-refresh-waybar offer

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

3 participants