| Summary: | No IEC958 Playback switch for Intel HDA | ||
|---|---|---|---|
| Product: | [Applications] kmix | Reporter: | Francois Cartegnie <bugzilla77> |
| Component: | Soundcard specific | Assignee: | Christian Esken <esken> |
| Status: | RESOLVED FIXED | ||
| Severity: | wishlist | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Francois Cartegnie
2006-03-13 19:02:53 UTC
Dear bug reporter, I am quite sure this issue has been fixed while fixing bug 110807 (it is about playback/capture controls here), and also relates to bug 121827. So I do advise to upgrade to KDE3.5.1 and try it - if it doesn't, please just reopen this bug report. I upgraded those packages: kdemultimedia-kmix-3.5.1-1mdk libkdemultimedia1-kmix-3.5.1-1mdk no changes. Francois, thanks for the quick feedback. I took a closer look, and now understand what is going wrong here. Accepting bug. Reproducable with nForce2 card, Simple mixer control 'IEC958' . Work on this has started. Target milestone: KDE4.0 For the files. this is the "pswitch cswitch" issue SVN commit 676707 by esken:
Finalized optimal ALSA support. The last open issue (pswitch cswitch) is
now resolved.
BUGS: 123560
BUGS: 135729
BUGS: 126012
BUGS: 125772
M +30 -15 mdwslider.cpp
--- trunk/KDE/kdemultimedia/kmix/mdwslider.cpp #676706:676707
@@ -234,22 +234,36 @@
- // --- SLIDERS ---------------------------
- QBoxLayout *volLayout;
- if ( _orientation == Qt::Vertical ) {
- volLayout = new QHBoxLayout( );
- volLayout->setAlignment(Qt::AlignVCenter);
- }
- else {
- volLayout = new QVBoxLayout( );
- volLayout->setAlignment(Qt::AlignHCenter);
- }
- sliLayout->addItem( volLayout );
+ // --- SLIDERS ---------------------------
+ QBoxLayout *volLayout;
+ if ( _orientation == Qt::Vertical ) {
+ volLayout = new QHBoxLayout( );
+ volLayout->setAlignment(Qt::AlignVCenter);
+ }
+ else {
+ volLayout = new QVBoxLayout( );
+ volLayout->setAlignment(Qt::AlignHCenter);
+ }
+ sliLayout->addItem( volLayout );
- if ( m_mixdevice->playbackVolume().count() > 0 )
- addSliders( volLayout, 'p' );
- if ( m_mixdevice->captureVolume().count() > 0 )
+ if ( m_mixdevice->playbackVolume().count() > 0 )
+ addSliders( volLayout, 'p' );
+ if ( m_mixdevice->captureVolume().count() > 0 )
addSliders( volLayout, 'c' );
+ if ( m_mixdevice->playbackVolume().count() == 0 && m_mixdevice->captureVolume().count() == 0 )
+ { // no siders => put a label with the name.
+ // But I won't add " (capture)" as on the sliders, because there is only one "column"
+ if ( _orientation == Qt::Vertical ) {
+ m_label = new VerticalText( this, m_mixdevice->readableName() );
+ }
+ else {
+ m_label = new QLabel(this);
+ static_cast<QLabel*>(m_label)->setText(m_mixdevice->readableName());
+ }
+ volLayout->addWidget( m_label );
+ m_label->installEventFilter( this );
+ m_label->setToolTip( m_mixdevice->readableName() ); // @todo: Whatsthis, explaining the device
+ }
// --- RECORD SOURCE LED --------------------------
if ( showRecordLED )
@@ -277,7 +291,8 @@
reclayout->addWidget( m_recordLED );
connect(m_recordLED, SIGNAL(stateChanged(bool)), this, SLOT(setRecsrc(bool)));
m_recordLED->installEventFilter( this );
- m_recordLED->setToolTip( i18n( "Record" ) );
+ QString muteTip( i18n( "Capture/Uncapture %1", m_mixdevice->readableName() ) );
+ m_recordLED->setToolTip( muteTip ); // @todo: Whatsthis, explaining the device
} // has Record LED
else
{
|