playlist shows current file

This commit is contained in:
Frank Skare
2021-06-28 23:09:09 +02:00
parent 6b6ae6bfef
commit 376f8226ab
3 changed files with 17 additions and 1 deletions

View File

@@ -2,6 +2,7 @@
5.4.9.2 Beta (2021-??-??)
- Manual translated to simplified Chinese (hooke007)
- Showing the playlist selects the currently played file/stream in the playlist.
5.4.9.1 Beta (2021-06-23)

View File

@@ -382,6 +382,7 @@ namespace mpvnet
{
CommandPalette.Instance.SetItems(CommandPalette.GetItems());
MainForm.Instance.ShowCommandPalette();
CommandPalette.Instance.SelectFirst();
}
public static void ShowPlaylist() => App.InvokeOnMainThread(ShowPlaylistInternal);
@@ -389,6 +390,8 @@ namespace mpvnet
static void ShowPlaylistInternal()
{
int count = Core.get_property_int("playlist-count");
string currentPath = Core.get_property_string("path");
CommandPaletteItem currentItem = null;
if (count <= 0)
return;
@@ -399,14 +402,27 @@ namespace mpvnet
{
int index = i;
string file = Core.get_property_string($"playlist/{i}/filename");
CommandPaletteItem item = new CommandPaletteItem() {
Text = PathHelp.GetFileName(file),
Action = () => Core.set_property_int("playlist-pos", index)
};
items.Add(item);
if (currentPath.ToLowerEx() == file.ToLowerEx())
currentItem = item;
}
CommandPalette.Instance.SetItems(items);
if (currentItem != null)
{
CommandPalette.Instance.MainListView.SelectedItem = currentItem;
CommandPalette.Instance.MainListView.ScrollIntoView(
CommandPalette.Instance.MainListView.SelectedItem);
}
MainForm.Instance.ShowCommandPalette();
}
}

View File

@@ -1063,7 +1063,6 @@ namespace mpvnet
AdjustCommandPaletteLeftAndWidth();
CommandPaletteHost.Child = CommandPalette.Instance;
CommandPalette.Instance.AdjustHeight();
CommandPalette.Instance.SelectFirst();
Controls.Add(CommandPaletteHost);
}
}