diff options
| author | lvw <lvw@e10066b5-e1e2-0310-b819-94efdf66514b> | 2004-09-30 21:30:34 +0000 |
|---|---|---|
| committer | lvw <lvw@e10066b5-e1e2-0310-b819-94efdf66514b> | 2004-09-30 21:30:34 +0000 |
| commit | 337922bbcbf423f49df389602551c297131eeaab (patch) | |
| tree | ae0f645247d9d1aabb5bb993c045fb7bcb0b1e6d /muggle-plugin | |
| parent | e26a817c9cd81e767dd5e34417921e11c274f723 (diff) | |
| download | vdr-plugin-muggle-337922bbcbf423f49df389602551c297131eeaab.tar.gz vdr-plugin-muggle-337922bbcbf423f49df389602551c297131eeaab.tar.bz2 | |
Added progress display for VDR 1.3.7+
git-svn-id: https://vdr-muggle.svn.sourceforge.net/svnroot/vdr-muggle/trunk@191 e10066b5-e1e2-0310-b819-94efdf66514b
Diffstat (limited to 'muggle-plugin')
| -rw-r--r-- | muggle-plugin/vdr_player.c | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/muggle-plugin/vdr_player.c b/muggle-plugin/vdr_player.c index 1629a0b..4ef339c 100644 --- a/muggle-plugin/vdr_player.c +++ b/muggle-plugin/vdr_player.c @@ -868,6 +868,7 @@ mgPlayerControl::mgPlayerControl( mgPlaylist *plist ) { MGLOG( "mgPlayerControl::mgPlayerControl" ); + m_display = NULL; m_visible = false; m_has_osd = false; } @@ -989,14 +990,15 @@ void mgPlayerControl::ShowProgress() // now an osd is open, go on #if VDRVERSNUM >= 10307 - cSkinDisplayReplay *m_display; - - m_display = Skins.Current()->DisplayReplay(false); + if( !m_display ) + { + m_display = Skins.Current()->DisplayReplay(false); + } if( m_player && m_display ) { int current_frame, total_frames; m_player->GetIndex( current_frame, total_frames ); - + m_display->SetProgress( current_frame, total_frames ); m_display->SetCurrent( IndexToHMSF( current_frame ) ); m_display->SetTotal( IndexToHMSF( total_frames ) ); @@ -1004,11 +1006,13 @@ void mgPlayerControl::ShowProgress() char *buf; asprintf( &buf, "%s", m_player->GetCurrent()->getTitle().c_str() ); m_display->SetTitle( buf ); - free( buf ); - + // free( buf ); + bool play = true, forward = true; int speed = -1; m_display->SetMode( play, forward, speed ); + + m_display->Flush(); } #else int w = Interface->Width(); @@ -1033,8 +1037,15 @@ void mgPlayerControl::Hide() if( m_has_osd ) { #if VDRVERSNUM >= 10307 + /* osd->Flush(); delete osd; + */ + if( m_display ) + { + delete m_display; + m_display = NULL; + } #else Interface->Close(); #endif |
