Opened 11 years ago

Last modified 2 years ago

#1876 new bug

Media preferences, clicking on some checkboxes switches back to first tab

Reported by: aldeck Owned by: marcusoverhagen
Priority: normal Milestone: R1
Component: Add-Ons/Media/Mixer Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

In Media preflet, go to the audio mixer's "Setup" tab, click some (not all shows the behavior) checkbox and the tabview will switch back to the first tab (Gain controls).

haiku hrev24155, vmware, this is not a recent bug.

Change History (10)

comment:1 Changed 11 years ago by korli

Component: Preferences/MediaAudio & Video
Owner: changed from korli to marcusoverhagen

I think it's because these checkboxes change the display of the audio mixer (a feature)

comment:2 in reply to:  1 Changed 11 years ago by aldeck

Replying to korli:

I think it's because these checkboxes change the display of the audio mixer (a feature)

Ahh, i see! Not sure if it's nice though, especially when there's no mixer (no supported hardware) :-)

comment:3 Changed 11 years ago by stpere

Is there a way we could rather notify the user that something changed in the mixer? it felt like a bug to me, having the setup slip under my feets suddenly when clicking a button, without having pressed apply or anything.

comment:4 Changed 10 years ago by agildehaus

This is an issue I would also like to see addressed. Completely confused me when I first came across it. There's really no reason for the tab switch.

comment:5 Changed 10 years ago by anevilyak

The problem is with the way that it's done currently, the mixer generates a new parameter web when its settings are changed, since as mentioned previously some of those settings cause more options to appear/disappear. As a consequence when the new parameter web is put in place, the old is in effect destroyed and the new put in place. In other words, the reason you see a tab switch is because the TabView/Settings panel you clicked the checkbox in no longer exists, a freshly created one was put in place which knows nothing about where you were previously. Right now I see no easy way to change that.

comment:6 Changed 10 years ago by axeld

A BParameterGroup has a name, and the panel could just remember the current one, and try to make it active again after changes.

comment:7 Changed 10 years ago by anevilyak

I thought I posted an update to this last night, but apparently not: the real problem is that some of the parameter change notifications from the media server aren't being reacted to appropriately. From a quick glance I assume this needs to be happening in BMediaTheme but I may be wrong. The current mechanism of forcing the whole web to be rebuilt is an intentional hack to work around that (cf. src/add-ons/media/media-addons/mixer/AudioMixer.cpp line 1642). Your way would work, certainly, but it still leaves a hack in place that hides the real problem.

comment:8 Changed 10 years ago by axeld

Oh, good point. When a parameter web is changed, a certain notification is sent, and obviously ignored in the default BMediaTheme. So yes, it would be preferred to fix this the right way.

comment:9 Changed 7 years ago by diver

Component: Audio & VideoAdd-Ons/Media/Mixer
Version: R1/pre-alpha1R1/Development

comment:10 Changed 2 years ago by vidrep

I tried this one out and it is still a problem with hrev50450 x86_gcc2.

Note: See TracTickets for help on using tickets.