]> git.sesse.net Git - vlc/commitdiff
Always show something in the statusLabel, even if you don't have ANY metadata.
authorJean-Baptiste Kempf <jb@videolan.org>
Sat, 13 Sep 2008 08:31:51 +0000 (01:31 -0700)
committerJean-Baptiste Kempf <jb@videolan.org>
Sat, 13 Sep 2008 08:41:26 +0000 (01:41 -0700)
This will slow a few complaints from many people.
(cherry picked from commit 70d1cb5f057a993ef84c89cc26b8adb6ccfde8e7)

Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
modules/gui/qt4/input_manager.cpp

index 6c0848f804e62491ea3f9b68d322e7b45a5487a9..bcef265499f9f97a57203ea3c807039955298eab 100644 (file)
@@ -305,6 +305,7 @@ void InputManager::UpdateMeta()
     /* Update text, name and nowplaying */
     QString text;
 
+    /* Try to get the Title, then the Name */
     char *psz_name = input_item_GetTitle( input_GetItem( p_input ) );
     if( EMPTY_STR( psz_name ) )
     {
@@ -312,28 +313,37 @@ void InputManager::UpdateMeta()
         psz_name = input_item_GetName( input_GetItem( p_input ) );
     }
 
+    /* Try to get the nowplaying */
     char *psz_nowplaying =
         input_item_GetNowPlaying( input_GetItem( p_input ) );
     if( !EMPTY_STR( psz_nowplaying ) )
     {
         text.sprintf( "%s - %s", psz_nowplaying, psz_name );
     }
-    else
+    else  /* Do it ourself */
     {
         char *psz_artist = input_item_GetArtist( input_GetItem( p_input ) );
+
         if( !EMPTY_STR( psz_artist ) )
-        {
             text.sprintf( "%s - %s", psz_artist, psz_name );
-        }
         else
-        {
             text.sprintf( "%s", psz_name );
-        }
+
         free( psz_artist );
     }
+    /* Free everything */
     free( psz_name );
     free( psz_nowplaying );
 
+    /* If we have Nothing */
+    if( text.isEmpty() )
+    {
+        psz_name = input_item_GetURI( input_GetItem( p_input ) );
+        text.sprintf( "%s", psz_name );
+        text = text.remove( 0, text.lastIndexOf( DIR_SEP ) + 1 );
+        free( psz_name );
+    }
+
     if( old_name != text )
     {
         emit nameChanged( text );