A fork of Gnome-control-center with some tweaks
Find a file
Hui Wang 0f18a662be sound: update the volume-slider after getting a valid stream
In the ubuntu 20.04, we met an issue about the output volume-slider
on the machine with the legacy HDA audio driver, the output device
is the Speaker first (analog-stereo pa sink), then we connect a hdmi
monitor, the HDMI audio is in the output combo-box, we select the
hdmi audio (hdmi-stereo pa sink) from the combo-box, the hdmi audio
becomes the active output device now, we adjust the output volume from
the volume-slider, the slider UI is changed, but the output sound
is not changed with the UI.

The root cause is when the speaker is active, the pulseaudio only
keeps the analog-stereo sink, the sink hdmi-stereo is unlinked, when
users select the hdmi audio from UI, the pulseaudio will unlink
analo-stereo sink and create hdmi-stereo sink, but before hdmi-stereo
is created, the output_device_changed_cb() is called and
gvc_mixer_control_get_stream_from_device() returns a NULL since the
hdmi-stereo sink is not created yet in the pulseaudio. Because stream
is NULL, the output_volume_slider->stream is NULL, users can't change
the output volume via the volume-slider.

To fix it, we add a output_volume_slider->stream check in the
device_update_cb(), if it is NULL, get the stream and set it to
volume-slider. In this function, the sink hdmi-stereo is created
already, so the stream is not NULL. And this change also applies to
input as well.

Signed-off-by: Hui Wang <hui.wang@canonical.com>
2021-08-01 22:12:11 +00:00
.gitlab/issue_templates docs: Document the Communication Guidelines 2019-04-02 09:06:00 -03:00
build-aux flatpak: Use meson for gsound 2021-07-28 04:48:13 +03:00
data/icons icon: minor update to the app icon 2020-06-02 14:54:36 +02:00
docs docs: Fix markdown formatting 2019-07-22 20:23:19 +00:00
gettext/its build: Fix translation context missing from keyboard entries 2018-01-24 20:43:34 +01:00
man Updating "info" to "info-overview" in man page 2020-03-15 08:07:51 +00:00
panels sound: update the volume-slider after getting a valid stream 2021-08-01 22:12:11 +00:00
po Update Portuguese translation 2021-07-31 21:31:42 +00:00
search-provider search-provider: Replace ifdefs with #pragma once 2019-11-27 21:56:10 +00:00
shell shell: Avoid handling map events from other windows 2021-04-21 20:54:06 +02:00
subprojects Bump libhandy to 1.2.0 2021-05-07 03:23:31 +00:00
tests Disable the canonicalization test 2020-09-05 11:56:24 -03:00
.gitignore project: Update gitignore 2018-05-12 20:56:04 -03:00
.gitlab-ci.yml ci: Fix gnome-40 CI 2021-07-21 12:48:40 +02:00
.gitmodules meson: Replace libhandy-0.0 by libhandy-1 2020-07-20 08:04:28 +02:00
COPYING build: Update COPYING with new mailing address 2012-08-22 15:33:18 +01:00
gnome-control-center.doap doap: Remove myself from maintainers 2021-02-09 11:56:57 +01:00
meson.build Post-release version bump 2021-07-29 19:29:11 -03:00
meson_options.txt applications: Integrate with malcontent's restrictions 2020-06-17 12:56:43 +01:00
NEWS 41.alpha 2021-07-29 18:58:13 -03:00
README.md docs: Fix pipeline badge in README.md 2020-08-07 00:02:57 +00:00

Build Status Coverage report License

GNOME Settings

GNOME Settings is GNOME's main interface for configuration of various aspects of your desktop.

Contributing

See docs/CONTRIBUTING.md for details on the contribution process, and docs/HACKING.md for the coding style guidelines.

Reporting Bugs

Before reporting any bugs or opening feature requests, read the communication guidelines.

Bugs should be reported to the GNOME bug tracking system under the product gnome-control-center. It is available at GitLab Issues.

In the report please include the following information:

  • Operating system and version
  • For Linux, version of the C library
  • Exact error message
  • Steps to reproduce the bug
  • If the bug is a visual defect, attach a screenshot
  • If the bug is a crash, attach a backtrace if possible [see below]

How to get a backtrace

If the crash is reproducible, follow the steps to obtain a backtrace:

Install debug symbols for gnome-control-center.

Run the program in gdb [the GNU debugger] or any other debugger.

gdb gnome-control-center

Start the program.

(gdb) run

Reproduce the crash and when the program exits to (gdb) prompt, get the backtrace.

(gdb) bt full

Once you have the backtrace, copy and paste it into the 'Comments' field or attach it as a file to the bug report.

Testing Unstable Settings

It is quite easy to test and give feedback about the development version of GNOME Settings. Just access https://gitlab.gnome.org/GNOME/gnome-control-center/environments, get the latest version, download it, double-click the file, install and run.

Note that GNOME Settings Flatpak will only work if you are running the latest GNOME version in your host system.