#include "menus.hpp"
#include <vlc_intf_strings.h>
#include "input_manager.hpp"
+#include "recents.hpp"
/* The dialogs */
#include "dialogs/playlist.hpp"
QObject( NULL ), p_intf( _p_intf )
{
b_isDying = false;
- fixed_timer = new QTimer( this );
- fixed_timer->start( 150 /* milliseconds */ );
menusMapper = new QSignalMapper();
CONNECT( menusMapper, mapped(QObject *), this, menuAction( QObject *) );
UpdateDialog::killInstance();
#endif
- fixed_timer->stop();
delete menusMapper;
delete menusUpdateMapper;
delete SDMapper;
fileTypes.replace(QString(";*"), QString(" *"));
return QFileDialog::getOpenFileNames( NULL,
- help.isNull() ? qfu(I_OP_SEL_FILES ) : help,
- path.isNull() ? qfu( p_intf->p_sys->psz_filepath ) : path,
+ help.isEmpty() ? qfu(I_OP_SEL_FILES ) : help,
+ path.isEmpty() ? qfu( p_intf->p_sys->psz_filepath ) : path,
fileTypes );
}
int i = 0;
foreach( QString file, files )
{
- const char * psz_utf8 = qtu( toNativeSeparators( file ) );
- playlist_Add( THEPL, psz_utf8, NULL,
+ playlist_Add( THEPL, qtu( toNativeSeparators( file ) ), NULL,
go ? ( PLAYLIST_APPEND | ( i ? 0 : PLAYLIST_GO ) |
( i ? PLAYLIST_PREPARSE : 0 ) )
: ( PLAYLIST_APPEND | PLAYLIST_PREPARSE ),
PLAYLIST_END,
pl ? true : false, false );
+ RecentsMRL::getInstance( p_intf )->addRecent(
+ toNativeSeparators( file ) );
i++;
}
}
if (!dir.isEmpty() )
{
- input_item_t *p_input = input_item_NewExt( THEPL,
- qtu( "directory://" + toNativeSeparators(dir) ),
+ QString mrl = dir.endsWith( "VIDEO_TS", Qt::CaseInsensitive )
+ ? "dvd://" : "directory://" + toNativeSeparators( dir );
+ msg_Dbg( p_intf, "Directory opening: %s", qtu( dir ) );
+ input_item_t *p_input = input_item_NewExt( THEPL, qtu( mrl ),
NULL, 0, NULL, -1 );
/* FIXME: playlist_AddInput() can fail */
playlist_AddInput( THEPL, p_input,
go ? ( PLAYLIST_APPEND | PLAYLIST_GO ) : PLAYLIST_APPEND,
PLAYLIST_END, pl, pl_Unlocked );
+ RecentsMRL::getInstance( p_intf )->addRecent( mrl );
if( !go )
input_Read( THEPL, p_input, true );
vlc_gc_decref( p_input );
playlist_AddExt( THEPL, qtu( mrl ), "Streaming",
PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END,
-1, &psz_option, 1, true, pl_Unlocked );
+ RecentsMRL::getInstance( p_intf )->addRecent( mrl );
}
}
qtu( qsFile ) );
}
}
+
+/**
+ * Play the MRL contained in the Recently played menu.
+ **/
+void DialogsProvider::playMRL( const QString &mrl )
+{
+ input_item_t *p_input = input_item_New( p_intf,
+ qtu( mrl ), NULL );
+ playlist_AddInput( THEPL, p_input, PLAYLIST_GO,
+ PLAYLIST_END, true, pl_Unlocked );
+ vlc_gc_decref( p_input );
+
+ RecentsMRL::getInstance( p_intf )->addRecent( mrl );
+}