X-Git-Url: https://git.sur5r.net/?p=minitube;a=blobdiff_plain;f=src%2Fplaylistmodel.cpp;h=be0819479e1a5096b6bfe58d7c05bc218d0fc903;hp=1ddc1dea263b8f9b9f823b4c8160471056fde009;hb=9337294c49c89c5cb01db726835da60af566821f;hpb=be5ee6ccd9b29c9d5ca59e4a3d4adf53bac6bc8d diff --git a/src/playlistmodel.cpp b/src/playlistmodel.cpp index 1ddc1de..be08194 100644 --- a/src/playlistmodel.cpp +++ b/src/playlistmodel.cpp @@ -25,12 +25,7 @@ $END_LICENSE */ #include "videomimedata.h" #include "videosource.h" -#include "ivchannelsource.h" -#include "ivsearch.h" -#include "ytsearch.h" - -#include "ytjschannelsource.h" -#include "ytjssearch.h" +#include "searchvideosource.h" namespace { const QString recentKeywordsKey = "recentKeywords"; @@ -262,30 +257,12 @@ void PlaylistModel::handleFirstVideo(Video *video) { } auto clazz = videoSource->metaObject()->className(); - if (clazz == QLatin1String("YTSearch") || clazz == QLatin1String("IVSearch") || - clazz == QLatin1String("IVChannelSource") || clazz == QLatin1String("YTJSSearch") || - clazz == QLatin1String("YTJSChannelSource")) { - static const int maxRecentElements = 10; - - SearchParams *searchParams; - if (clazz == QLatin1String("YTSearch")) { - auto search = qobject_cast(videoSource); - searchParams = search->getSearchParams(); - } else if (clazz == QLatin1String("IVSearch")) { - auto search = qobject_cast(videoSource); - searchParams = search->getSearchParams(); - } else if (clazz == QLatin1String("IVChannelSource")) { - auto search = qobject_cast(videoSource); - searchParams = search->getSearchParams(); - } else if (clazz == QLatin1String("YTJSSearch")) { - auto search = qobject_cast(videoSource); - searchParams = search->getSearchParams(); - } else if (clazz == QLatin1String("YTJSChannelSource")) { - auto search = qobject_cast(videoSource); - searchParams = search->getSearchParams(); - } + if (clazz == QLatin1String("SearchVideoSource")) { + auto search = qobject_cast(videoSource); + SearchParams *searchParams = search->getSearchParams(); // save keyword + static const int maxRecentElements = 10; QString query = searchParams->keywords(); if (!query.isEmpty() && !searchParams->isTransient()) { if (query.startsWith("http://")) { @@ -434,7 +411,11 @@ bool PlaylistModel::dropMimeData(const QMimeData *data, // and then add them again at the new position beginInsertRows(QModelIndex(), beginRow, beginRow); - videos.insert(beginRow, video); + if (beginRow >= videos.size()) { + videos.push_back(video); + } else { + videos.insert(beginRow, video); + } endInsertRows(); }