History log of /haiku/src/bin/desklink/MixerControl.cpp
Revision Date Author Comments
# e79dc1ff 10-Feb-2020 Jérôme Duval <jerome.duval@gmail.com>

desklink: recycle MixerControl and correctly release media nodes.

Change-Id: Id00a7fdb3bfd995bf6891bac85d21931f527606c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2237
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>


# 79b9bd9f 15-Jan-2017 Jessica Hamilton <jessica.l.hamilton@gmail.com>

desklink: use media_server notifications instead of polling.

* This removes Pulse(), which would constantly reconnect to
the mixer. With the previous changes to the
DefaultMediaTheme, this also makes changes to the muted
state instaneous when modified by some other app.


# 1c3d7e0c 28-Aug-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

MixerControl: Add more safeness for Roster() errors


# 3f5483c7 27-Jul-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

desklink: Fix problems with BMediaRoster Quit

* Improved the situation so that it should be always
synchronized. Improved error message, and detection
of media services not being run.


# df612ac9 13-Dec-2013 Rene Gollent <rene@gollent.com>

Fix #10302.

- In the case of an error while unflattening, BMediaRoster::GetParameterWebFor()
would allocate a new parameter web object into the passed in web pointer, and
then delete it again. This would result in the desklink MixerControl object having
a bogus pointer in its fParameterWeb member, leading to a crash. As such, create
the object in a local variable first, and only overwrite the passed in pointer on
success. Furthermore, explicitly reset said pointer to NULL in desklink on failure,
as _Disconnect() tries to delete it unconditionally.


# eb8e4edc 05-Dec-2013 Puck Meerburg <puck@puckipedia.nl>

MediaReplicant: Middle button mute/unmute support

* Add mute/unmute support by clicking middle mouse button
on media replicant;
* Fixes #7468.

- GCI 2013


# 8627cb38 16-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

CID 1515 : Wrong pointer type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38137 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da30b4bf 30-Jun-2009 Axel Dörfler <axeld@pinc-software.de>

* With the help of Stippi's "I Will Survive" article, the VolumeControl
replicant should now handle media server restarts, or late starts gracefully.
* This fixed ticket #4002.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31322 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3d2abd1b 09-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* The mixer node is now exported.
* The node is no longer allocated separately.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30060 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 037d4a2f 08-Apr-2009 François Revol <revol@free.fr>

Missing include for strcmp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30035 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab987355 08-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Restructured the sources a bit, renamed SliderView to VolumeControl,
VolumeSlider to VolumeWindow.
* The VolumeControl is now a replicant, and be be dragged to the Tracker.
* Hence, moved all volume control stuff from VolumeWindow into the
VolumeControl class directly.
* Changed menu a bit. Note that controlling the physical output currently
does not work, but that's a problem of the media node in question (probably
the multi audio add-on, I'll have a look).
* Added a small delay when clicking on the slider directly before the window
is hidden, so that you'll get some feedback of your action.
* Added --add-volume, and --volume-control options to "desklink", the former
adds the volume control icon to the deskbar, the latter opens the volume
control window directly.
* Further cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30031 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b494a17f 07-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Replaced the volume slider with one looking just like any other slider.
* This is still work in progress, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30014 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1c3d7e0c688650e6b100f36a0472a7a5d45358b0 28-Aug-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

MixerControl: Add more safeness for Roster() errors


# 3f5483c79b52ee74da056700fa56fe7fbb7805d4 27-Jul-2015 Dario Casalinuovo <b.vitruvio@gmail.com>

desklink: Fix problems with BMediaRoster Quit

* Improved the situation so that it should be always
synchronized. Improved error message, and detection
of media services not being run.


# df612ac9b3f05f1f2ddfd5dfd4891f956759e3db 13-Dec-2013 Rene Gollent <rene@gollent.com>

Fix #10302.

- In the case of an error while unflattening, BMediaRoster::GetParameterWebFor()
would allocate a new parameter web object into the passed in web pointer, and
then delete it again. This would result in the desklink MixerControl object having
a bogus pointer in its fParameterWeb member, leading to a crash. As such, create
the object in a local variable first, and only overwrite the passed in pointer on
success. Furthermore, explicitly reset said pointer to NULL in desklink on failure,
as _Disconnect() tries to delete it unconditionally.


# eb8e4edca5f59b409c8a0f22cde9e7efd99348af 05-Dec-2013 Puck Meerburg <puck@puckipedia.nl>

MediaReplicant: Middle button mute/unmute support

* Add mute/unmute support by clicking middle mouse button
on media replicant;
* Fixes #7468.

- GCI 2013


# 8627cb38c143762dc6106b03a9297c03ec6e7875 16-Aug-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

CID 1515 : Wrong pointer type.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38137 a95241bf-73f2-0310-859d-f6bbb57e9c96


# da30b4bf83d8c142830ade0d8e45be548452f843 30-Jun-2009 Axel Dörfler <axeld@pinc-software.de>

* With the help of Stippi's "I Will Survive" article, the VolumeControl
replicant should now handle media server restarts, or late starts gracefully.
* This fixed ticket #4002.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31322 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3d2abd1bc8a8b1151378eceb469a10d3826e433e 09-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* The mixer node is now exported.
* The node is no longer allocated separately.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30060 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 037d4a2f46c6bbeec1a9e14ae83de5866c1a741f 08-Apr-2009 François Revol <revol@free.fr>

Missing include for strcmp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30035 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ab9873555a6d8ba5ee85bb5e3163780cf44458a3 08-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Restructured the sources a bit, renamed SliderView to VolumeControl,
VolumeSlider to VolumeWindow.
* The VolumeControl is now a replicant, and be be dragged to the Tracker.
* Hence, moved all volume control stuff from VolumeWindow into the
VolumeControl class directly.
* Changed menu a bit. Note that controlling the physical output currently
does not work, but that's a problem of the media node in question (probably
the multi audio add-on, I'll have a look).
* Added a small delay when clicking on the slider directly before the window
is hidden, so that you'll get some feedback of your action.
* Added --add-volume, and --volume-control options to "desklink", the former
adds the volume control icon to the deskbar, the latter opens the volume
control window directly.
* Further cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30031 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b494a17f1ca6a3bb2207722aab58ec528cdad525 07-Apr-2009 Axel Dörfler <axeld@pinc-software.de>

* Replaced the volume slider with one looking just like any other slider.
* This is still work in progress, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30014 a95241bf-73f2-0310-859d-f6bbb57e9c96