When pressing the mute button after the volume slider is manually moved
to 0 (and so the GVS "is-muted" property is still FALSE), set the volume
to 25% instead of actually muting the stream.
Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/520.
The logic inside it is a bit reworked to make it more consistent. The
mute button and the slider now only communicate directly with GVC. The
notify callbacks are now used to change the UI states.
This fixes the UI problem of the mute button being "raised" when pressed
(see https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/520).
This is useful for the next commit because the stream list will be moved
in a separate window and to do that we need an always-updated list of
the playing streams. Without this approach, we would lose all the
streams that played before the user opens the stream list window. Also,
this allows us to decuple data and UI, which is definitely not a bad
thing.
If the previously shown panel had a custom sidebar, we were not switching
back to the main list if the currently shown panel doesn't have one.
This will result in the sidebar having empty content.
Fix it by always switching to main sidebar view if no custom sidebar widget
is set.
Fixes#2261
The rows in this panel are created dynamically depending on the type
of content they show. We don't want to show an artwork_box when there's
no artwork in a given row, but when there is, we still need to call
gtk_widget_show. Same for suffix widgets.
This reverts commit 82b26b9861.
Mutter's XWayland option requires Wayland option to be enabled and
XWayland run-time dependecy to be present. Both conditions aren't met,
and that's why the flatpak build was failing for me.
GtkStyleContext will be deprecated in gtk 4.10.
https://docs.gtk.org/gtk4/class.StyleContext.html
This preserves code blocks where additional GtkStyleContext operations
were used, such as gtk_style_context_save/restore.
- There is a typo in a string: "avaliable" instead of "available"
- "Starting Device Security" string doesn't use an ellipsis char
- Some strings aren't marked as translatable
This commit marks the strings as translatable, fixes the typo and adds the necessary ellipsis char.
The libcanberra event-sound-cache that stores the resolved paths for
sound names can get stuck with the fallback sound (bell) after trying to
play an invalid symlink, such as can happen after updating to 43 which
removed some sounds which might have been selected as alert sounds
before.
Neither changing the symlink nor touching the theme directory seems to
invalidate that cache, but touching the sounds directory does.
This now updates the sounds directory mtime before triggering purging
the sound sample cache in the sound server via g-s-d so libcanberra will
load the correct sounds when repopulating the sample cache afterwards.
Closes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/2277