add transfer bps to service interface (requires touching enigma_python.i)
[enigma2.git] / lib / service / listboxservice.cpp
index f136d70a7888ee5b0cee82b620edb84c4cbe1d37..05aaf73148bbaed3857ddf005f112f406817c912 100644 (file)
@@ -67,7 +67,7 @@ void eListboxServiceContent::setRoot(const eServiceReference &root, bool justSet
                m_lst=0;
                return;
        }
-       assert(m_service_center);
+       ASSERT(m_service_center);
        
        if (m_service_center->list(m_root, m_lst))
                eDebug("no list available!");
@@ -528,7 +528,7 @@ void eListboxServiceContent::paint(gPainter &painter, eWindowStyle &style, const
                eServiceReference ref = *m_cursor;
                bool isPlayable = !(ref.flags & eServiceReference::isDirectory || ref.flags & eServiceReference::isMarker);
 
-               if (!marked && isPlayable && service_info && !service_info->isPlayable(*m_cursor, m_is_playable_ignore))
+               if (!marked && isPlayable && service_info && m_is_playable_ignore.valid() && !service_info->isPlayable(*m_cursor, m_is_playable_ignore))
                {
                        if (m_color_set[serviceNotAvail])
                                painter.setForegroundColor(m_color[serviceNotAvail]);
@@ -584,7 +584,7 @@ void eListboxServiceContent::paint(gPainter &painter, eWindowStyle &style, const
                                case celServiceInfo:
                                {
                                        ePtr<eServiceEvent> evt;
-                                       if ( service_info && !service_info->getEvent(*m_cursor, evt) )
+                                       if ( isPlayable && service_info && !service_info->getEvent(*m_cursor, evt) )
                                        {
                                                std::string name = evt->getEventName();
                                                if (!name.length())
@@ -690,6 +690,8 @@ void eListboxServiceContent::paint(gPainter &painter, eWindowStyle &style, const
 void eListboxServiceContent::setIgnoreService( const eServiceReference &service )
 {
        m_is_playable_ignore=service;
+       if (m_listbox && m_listbox->isVisible())
+               m_listbox->invalidate();
 }
 
 void eListboxServiceContent::setItemHeight(int height)