Commit Graph

430 Commits

Author SHA1 Message Date
Tanu Kaskinen 191a66df77 .gitignore: add compile 2016-04-26 17:12:07 +03:00
Arun Raghavan fd98c921ae mainwindow: Don't add a border on the outermost vbox
It adds a thick border around along the edges that looks quite ugly.
2016-03-31 17:13:39 +05:30
Arun Raghavan d7445a3feb build-sys: Add m4 file for AX_CXX_COMPILE_STDCXX_11 2016-02-02 17:05:36 +05:30
Arun Raghavan 13eb23cdfa doc: Update link to git repository
And we no longer need to link to the git homepage either.
2016-01-26 08:34:30 +05:30
Arun Raghavan 4acb3ef020 build-sys: Use C++11 for building
This requirement was added by gtkmm at some point:

http://www.murrayc.com/permalink/2015/07/31/gtkmm-now-uses-c11/
2016-01-25 08:42:34 +05:30
Pino Toscano 4db50bc09a Remove Encoding key from .desktop file
Long time deprecated.
2016-01-25 08:36:40 +05:30
Antonio Ospite 9b307dcfe2 i18n: improve one Italian string
The previous translation may sound like "Lock up the channels", better
to add the "together" (insieme) in there like in the English version
which gives more the idea of aggregation.
2016-01-12 08:44:48 +05:30
Antonio Ospite 5c2c7d94dc i18n: Some fixes for the Italian translation
Some fixes for strings which show up on the GUI.

In particular "Blocca entrambi i canali" (which translates back to
"Block both channels") sounded weird with devices with more than
2 channels.
2016-01-08 09:17:59 +05:30
Peter Meerwald 290485e8ab Add --version command line option
allow pavucontrol to display its --version
see https://bugs.freedesktop.org/show_bug.cgi?id=83147

Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net>
2015-05-20 23:07:55 +02:00
Arun Raghavan d271f628d8 build-sys: Depend on libpulse >= 5.0
This is required for pa_card_profile_info2 (where we just started
querying profile availability).
2015-04-10 18:24:08 +05:30
David Kreuter c4fcb1c772 mainwindow: unavailable profiles are marked as such in their description 2015-04-10 18:13:01 +05:30
Piotr Drąg c1b3a353c3 i18n: Updated Polish translation 2015-04-01 20:00:45 +03:00
David Henningsson 4dd4c0fb69 build-sys: Release pavucontrol 3.0
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2015-03-24 15:38:34 +01:00
Alexander E. Patrakov 5d98266d7c doc: Adapt the sed expression for cleaning up links
Some lynx versions produce links of the form file:///..., others produce
file://localhost/..., so catch both forms.

Reported-by: Peter Mattern <matternp@arcor.de>
Signed-off-by: Alexander E. Patrakov <patrakov@gmail.com>
2015-03-24 14:56:55 +01:00
Arun Raghavan 015c06042b build-sys: Don't dist m4/ChangeLog
Doesn't exist, and if it did, would likely be irrelevant.
2015-03-23 23:35:39 +05:30
Arun Raghavan 2505798a84 build-sys: Fix README building
Fixes for out-of-tree build, as well as making --disable-lynx work
correctly. Note that make dist will fail if lynx support is disabled (as
it should, since README will then not be available to put in the
tarball).
2015-03-23 23:34:43 +05:30
Steven Dwy 762cca5519 mainwindow: Remember device visibility selections
stores the type of devices that are shown for Playback,
Recording, Output Devices, Input Devices, resp.
2015-02-26 22:55:46 +01:00
Ivan Ivanov dd0ccda382 devicewidget, streamwidget: Show only one volume slider when channels are locked 2015-02-26 22:55:46 +01:00
Martin Steghöfer ed140c230c mainwindow: Catch Gdk::PixbufError
Due to another bug the MIME type guessing of PNG files was broken on my
Ubuntu system. This made pavucontrol crash on startup (while loading the
necessary icons) without a helpful error message (requiring a lot of
debugging effort). Although this is not originally pavucontrol's fault,
I think that pavucontrol could be more robust about such a problem,
especially because:

A) In a complex database like the one to guess MIME types (that is populated
from hundres of different packages) this can happen from time to time and
B) pavucontrol already has some fallback options in place - they are just not
active in this specific case.

BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=88813
2015-02-16 11:29:29 +01:00
Felipe Sateler f2e32ea305 Handle IO errors in icon setting code
If gtk cannot load the file, it may throw a Gio::Error. In that case
fall back to setting the name.

BugLink: https://bugs.debian.org/765725
2014-10-28 11:36:28 +02:00
Christer Stenbrenden c71e9d5b51 Don't crash if pa_stream_peek returns NULL
pa_stream_peek can return NULL if either the buffer is empty or if it
has a hole. In either case we need to avoid derefencing the data
pointer. Additionally, if there is a hole, we need to call pa_stream_drop,
if the buffer is empty we should not call it.

BugLink: https://bugs.debian.org/735898
2014-10-28 11:32:45 +02:00
Hans de Goede e83660bbd6 Do not instantiate cardwidget, devicewidget and rolewidget with a type of EventBox
RoleWidget::create contains:
    x->get_widget_derived("streamWidget", w);

But streamWidget is defined as following in the glade file:
<object class="GtkEventBox" id="streamWidget">

Where as RoleWidget is derived from [Minimal]StreamWidget, which is derived
from Gtk::VBox, so this is clearly wrong.

Adding:
printf("rolewidget type: %s\n", g_type_name(G_TYPE_FROM_INSTANCE(w->gobj())));
for debugging shows that this really leads to RoleWidget being instantiated
as an EventBox (yet things still work due to sheer luck).

This commit fixes this, by putting the streamWidget id at the right level of
the hierarchy in the glade file (and likewise for cardWidget and deviceWidget).

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-09-07 13:58:51 +03:00
Hans de Goede b2362f2223 Reference the widget before returning it from ::create methods
Widgets (unlike Windows and Dialogs) returned by Gtk::Builder::get_widget*
start owned by the GtkBuilder object, the idea being that they will get
added to a container before the scope of the GtkBuilder object ends, and it
thus automatically gets destroyed.

But in the various ::create methods in pavucontrol, a pointer to the widget
gets returned, so that it can be added to a cointainer by the caller.
However as soon as the ::create method exits the GtkBuilder object owning
the widget, and thus also the widget gets destroyed, and we end up returning
free-ed memory.

This commit fixes this by making all ::create methods take a reference on
the widget before returning it, and having all the callers unreference the
widget after adding it to a container.

https://bugs.freedesktop.org/show_bug.cgi?id=83144
https://bugzilla.redhat.com/show_bug.cgi?id=1133339

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-09-07 13:51:27 +03:00
Simon Johansson 0254dfb2ab Add horizontal scrollbars automatically
Add a horizontal scrollbar inside each tab automatically when the window
is not wide enough. Add arrows for scrolling the tab bar when the tabs
don't fit inside the window.
2014-06-24 13:38:08 +03:00
Tanu Kaskinen f8315478e4 Add TRANSLATORS_README.txt
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=69535
2014-03-24 09:31:26 +02:00
Pierre Zurek dc4bdf091f Add a --maximize command line option 2014-03-07 16:04:32 +02:00
Alexander E. Patrakov 35e844d2b2 pavucontrol: ellipsize labels to fix window resizing
ellipsize labels to make the window resizable even with long label text
and add tooltips to provide a way to read the full text

Originally from Sebastian Wick <sebastian@sebastianwick.net>
2013-12-13 15:18:42 +02:00
Tanu Kaskinen 1f037dc341 build-sys: Use autoreconf in bootstrap.sh
Most of the stuff in bootstrap.sh seemed to reimplement autoreconf,
badly. I don't understand the wisdom behind the run_versioned
trickery. configure.ac states that we require Automake 1.11, so
apparently the VERSION variable in bootstrap.sh was out of date.
Instead of bumping the version number, I replaced the cruft with
an autoreconf call.
2013-03-25 08:45:24 +02:00
Akihiro Tsukada cbf3acb543 sinkwidget: add support for AAC pass-through 2013-03-13 11:35:59 +02:00
Alam Arias 0d7cbc57a0 added back support for gtkmm-2.4 builds 2013-03-11 13:23:06 +02:00
Arun Raghavan 85e09f48a9 build-sys: Drop ChangeLog generation from git
The changelog generation script is not maintained, not installed on most
devs' systems, and the from-git changelog is mostly not useful.
2013-03-08 13:25:44 +05:30
Arun Raghavan 52e41d27ab build-sys: Prepare for a 2.0 release 2013-03-08 13:19:41 +05:30
Arun Raghavan 5132a24b35 sinkwidget: Move format selection options to 'Advanced' expander
There's no reason to present this for all S/PDIF and HDMI cases. The
user can select it when required.
2012-12-17 15:20:42 +05:30
Arun Raghavan c69cffecdc devicewidget: Move latency offset into an expander
We don't want to flood users with this option, let's just leave it
closed by default for those who need it.
2012-12-17 15:20:42 +05:30
Tanu Kaskinen cc06ae9029 mainwindow: Fix iterator dereferencing style. 2012-11-24 16:39:05 +02:00
poljar (Damir Jelić) 1bff6399d6 mainwindow: Show the availability of the ports and profiles.
If we know if a certain port is available/unavailable, we can print
that out, as a help to the user (and as debugging for ourselves).
A profile is also available/unavailable if all ports which have that
profile are available/unavailable.

Credit goes to David Henningson for the original idea and some of the code.
2012-11-24 16:35:12 +02:00
Tanu Kaskinen f0853f0810 mainwindow: Don't clear the "updating" flag in updateCard() too early.
The prepareMenu() call can change the active profile selection, which
in turn will cause a "set card profile" command to be sent to the
server if the "updating" flag is not set, so the "updating" flag needs
to be set when calling prepareMenu() from updateCard().

This caused a problem with disconnecting bluetooth headsets: as part
of the disconnection procedure, module-bluetooth-device sets the card
profile to "off". At that point module-card-restore doesn't do
anything, because the change is marked as "don't save". But the
profile change event is then sent to pavucontrol, which updates its
view, and pavucontrol sends the new profile ("off") back to
pulseaudio, and this time the profile change iss marked as "please
save", so module-card-restore restores the "off" profile when the
device is connected again, even though the user never requested the
"off" profile to be chosen.
2012-11-19 15:16:22 +02:00
Tanu Kaskinen f817265821 Enable Automake's silent-rules option. 2012-10-30 16:45:30 +02:00
Colin Guthrie 27d915d041 Add a few known peak-detect stream clients to a source-output blacklist 2012-09-28 00:08:10 +01:00
poljar (Damir Jelić) d03f9ffac2 devicewidget: Add a latency offset spinbutton
This change adds the ability to change the latency offset of a port with
pavucontrol.
2012-07-27 09:25:14 +03:00
poljar (Damir Jelić) 8af6520c60 sink/sourcewidget: Move the index and card_index to the devicewidget
This is a minor cleanup that moves the index of the sink/source and the
card_index from the sink/source widget to the device widget.
2012-07-27 08:56:02 +03:00
poljar (Damir Jelić) 1a23cdfe6d cardwidget: Add a port class
The cardwidget should cache all the relevant data for the ports.

This change introduces a new port class which holds the port info for
the card.
2012-07-27 08:54:10 +03:00
Tanu Kaskinen abeb68dcf2 bootstrap: Enable the pre-commit hook. 2012-07-21 10:03:08 +03:00
Tanu Kaskinen 241b23cc83 gitignore: Add *.swp. 2012-07-04 12:57:53 +03:00
Frédéric Dalleau ba868cc0b0 Add --retry command line option
As a developper, I find it annoying to restart pavucontrol everytime I restart
pulseaudio, moreover the error dialog sometimes needs an additional click
before restarting.
Add it as a command line option so that default behavior is not changed.
2012-07-04 12:35:52 +03:00
Cosimo Cecchi fb278932a4 Fix theme under gtk3
We need to set the visible_window property to ensure
the theme background colour shines through.

https://bugzilla.gnome.org/show_bug.cgi?id=655635
2011-10-25 11:31:37 +02:00
Colin Guthrie 035be40028 build-sys: Prepare 1.0 2011-09-27 09:19:00 +01:00
Colin Guthrie 08e3dd92ed build-sys: Switch to the tar-ustar format (as per a lot of GNOME stuff for 3.2) and distribute .xz files.
We will drop .gz support after 1.0
Also bumped automake version to 1.11 to match PA itself
and for the dist-xz option
2011-09-27 09:19:00 +01:00
Colin Guthrie 235157ec1e i18n: Add devicewidget to POTFILES.in 2011-09-27 09:19:00 +01:00
Arun Raghavan 8e359a8f71 source: Only autosuspend network sources
This makes sure we inhibit autosuspend only for network sources (which
was the main purpose of adding autosuspend, since constantly monitoring
those is network heavy).
2011-09-23 08:21:07 +05:30