diff --git a/src/libtomahawk/playlist/infobar/infobar.cpp b/src/libtomahawk/playlist/infobar/infobar.cpp index c1873ef89..7c3fb874c 100644 --- a/src/libtomahawk/playlist/infobar/infobar.cpp +++ b/src/libtomahawk/playlist/infobar/infobar.cpp @@ -22,6 +22,7 @@ #include #include +#include "viewmanager.h" #include "thirdparty/Qocoa/qsearchfield.h" #include "utils/tomahawkutils.h" #include "utils/logger.h" @@ -77,6 +78,8 @@ InfoBar::InfoBar( QWidget* parent ) ui->horizontalLayout->addWidget( m_searchWidget ); setAutoFillBackground( true ); + + connect( ViewManager::instance(), SIGNAL( filterAvailable( bool ) ), SLOT( setFilterAvailable( bool ) ) ); } @@ -124,6 +127,20 @@ InfoBar::setPixmap( const QPixmap& p ) } +void +InfoBar::setFilter( const QString& filter ) +{ + m_searchWidget->setText( filter ); +} + + +void +InfoBar::setFilterAvailable( bool b ) +{ + m_searchWidget->setVisible( b ); +} + + void InfoBar::onFilterEdited() { diff --git a/src/libtomahawk/playlist/infobar/infobar.h b/src/libtomahawk/playlist/infobar/infobar.h index 2399d6656..13a5d8af1 100644 --- a/src/libtomahawk/playlist/infobar/infobar.h +++ b/src/libtomahawk/playlist/infobar/infobar.h @@ -47,6 +47,9 @@ public slots: void setLongDescription( const QString& s ); void setPixmap( const QPixmap& p ); + void setFilter( const QString& filter ); + void setFilterAvailable( bool b ); + signals: void filterTextChanged( const QString& filter ); diff --git a/src/libtomahawk/viewmanager.cpp b/src/libtomahawk/viewmanager.cpp index c4550965c..aae9cdd05 100644 --- a/src/libtomahawk/viewmanager.cpp +++ b/src/libtomahawk/viewmanager.cpp @@ -630,7 +630,7 @@ ViewManager::updateView() connect( currentPlaylistInterface()->object(), SIGNAL( shuffleModeChanged( bool ) ), SIGNAL( shuffleModeChanged( bool ) ) ); -// m_topbar->setFilter( currentPlaylistInterface()->filter() ); + m_infobar->setFilter( currentPlaylistInterface()->filter() ); } if ( currentPage()->showStatsBar() && currentPlaylistInterface() )