From: jmarshallnz Date: Mon, 28 Apr 2014 06:02:21 +0000 (+1200) Subject: Merge pull request #4601 from jmarshallnz/play_media_sort_order X-Git-Tag: 13.0-Gotham~9 X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_xbmc;a=commitdiff_plain;h=70cdc8433793f41725676550973ff3dbe184168d Merge pull request #4601 from jmarshallnz/play_media_sort_order [builtins] PlayMedia() should use a sort order appropriate for the items --- diff --git a/xbmc/interfaces/Builtins.cpp b/xbmc/interfaces/Builtins.cpp index 68cb1bd..1201cd6 100644 --- a/xbmc/interfaces/Builtins.cpp +++ b/xbmc/interfaces/Builtins.cpp @@ -675,7 +675,6 @@ int CBuiltins::Execute(const CStdString& execString) CFileItemList items; CStdString extensions = g_advancedSettings.m_videoExtensions + "|" + g_advancedSettings.m_musicExtensions; CDirectory::GetDirectory(item.GetPath(),items,extensions); - items.Sort(SortByLabel, SortOrderAscending); bool containsMusic = false, containsVideo = false; for (int i = 0; i < items.Size(); i++) @@ -687,7 +686,13 @@ int CBuiltins::Execute(const CStdString& execString) if (containsMusic && containsVideo) break; } - + + CGUIViewState *state = CGUIViewState::GetViewState(containsVideo ? WINDOW_VIDEO_NAV : WINDOW_MUSIC, items); + if (state) + items.Sort(state->GetSortMethod()); + else + items.Sort(SortByLabel, SortOrderAscending); + int playlist = containsVideo? PLAYLIST_VIDEO : PLAYLIST_MUSIC;; if (containsMusic && containsVideo) //mixed content found in the folder {