Skip to content

Commit 59c259c

Browse files
committed
Removing 1st file from list no longer clears stream list and instead loads details of new 1st file
1 parent a9efedb commit 59c259c

File tree

6 files changed

+25
-16
lines changed

6 files changed

+25
-16
lines changed

ff-utils-winforms/Forms/MainForm.cs

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ private async void MainForm_Shown(object sender, EventArgs e)
7878
encAudioCodec_SelectedIndexChanged(null, null);
7979
encSubCodec_SelectedIndexChanged(null, null);
8080
av1anAudCodec_SelectedIndexChanged(null, null);
81-
RefreshFileListUi();
81+
await RefreshFileListUi();
8282
initialized = true;
8383

8484
if (Program.args.Where(x => x.StartsWith("package=")).Count() == 1)
@@ -285,7 +285,7 @@ public void SetButtonActive(Control c, bool state)
285285

286286
#region FileList
287287

288-
public void RefreshFileListUi()
288+
public async Task RefreshFileListUi()
289289
{
290290
bool anySelected = fileList.SelectedItems.Count > 0;
291291
bool oneSelected = fileList.SelectedItems.Count == 1;
@@ -301,7 +301,12 @@ public void RefreshFileListUi()
301301
$"{(count > 1 && RunTask.currentFileListMode == RunTask.FileListMode.Mux ? "Double click any of them or use the Load Tracks button to load their tracks." : "")}";
302302

303303
if (TrackList.current != null && !fileList.Items.Cast<ListViewItem>().Select(x => ((FileListEntry)x.Tag)).Any(x => x.File.Equals(TrackList.current.File)))
304+
{
304305
TrackList.ClearCurrentFile();
306+
307+
if (RunTask.currentFileListMode == RunTask.FileListMode.Mux)
308+
await TrackList.SetAsMainFile(fileList.Items[0], false);
309+
}
305310
}
306311

307312
private async void fileListMode_SelectedIndexChanged(object sender, EventArgs e)
@@ -317,12 +322,12 @@ private async void fileListMode_SelectedIndexChanged(object sender, EventArgs e)
317322
Text = $"NMKODER [{(RunTask.currentFileListMode == RunTask.FileListMode.Mux ? "Mux" : "Batch")}]";
318323

319324
SaveUiConfig();
320-
RefreshFileListUi();
325+
await RefreshFileListUi();
321326

322327
if (oldMode == RunTask.FileListMode.Batch && newMode == RunTask.FileListMode.Mux)
323328
{
324329
if (fileList.Items.Count == 1 && !AreAnyTracksLoaded())
325-
await TrackList.LoadFirstFile(fileList.Items[0]);
330+
await TrackList.SetAsMainFile(fileList.Items[0]);
326331
}
327332
}
328333

@@ -332,10 +337,13 @@ private async void addTracksFromFileBtn_Click(object sender, EventArgs e)
332337

333338
foreach (ListViewItem item in fileList.SelectedItems.Cast<ListViewItem>())
334339
{
335-
if (AreAnyTracksLoaded())
340+
//if (AreAnyTracksLoaded())
336341
await TrackList.AddStreamsToList(((FileListEntry)item.Tag).File, item.BackColor, true);
337-
else
338-
await TrackList.LoadFirstFile(item);
342+
//else
343+
// await TrackList.SetAsMainFile(item);
344+
345+
if (TrackList.current == null)
346+
await TrackList.SetAsMainFile(item);
339347
}
340348

341349
QuickConvertUi.LoadMetadataGrid();

ff-utils-winforms/Main/RunTask.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ public static async Task StartBatch()
116116
FileListEntry entry = (FileListEntry)taskItems[i].Tag;
117117
Logger.Log($"Queue: Starting task {i + 1}/{taskItems.Length} for {entry.File.Name}.");
118118
TrackList.ClearCurrentFile();
119-
await TrackList.LoadFirstFile(taskItems[i], false, false); // Load file info
119+
await TrackList.SetAsMainFile(taskItems[i], false, false); // Load file info
120120
await Start(batchTask); // Run task
121121
}
122122

ff-utils-winforms/UI/FileList.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,10 @@ public static async Task HandleFiles(string[] paths, bool clearExisting)
5151
LoadFiles(paths, clearExisting);
5252

5353
if (RunTask.currentFileListMode == RunTask.FileListMode.Mux && Program.mainForm.fileListBox.Items.Count == 1)
54-
await TrackList.LoadFirstFile(Program.mainForm.fileListBox.Items[0]);
54+
{
55+
await TrackList.SetAsMainFile(Program.mainForm.fileListBox.Items[0]);
56+
await TrackList.AddStreamsToList(((FileListEntry)Program.mainForm.fileListBox.Items[0].Tag).File, Program.mainForm.fileListBox.Items[0].BackColor, true);
57+
}
5558

5659
if (runInstantly)
5760
Program.mainForm.runBtn_Click();

ff-utils-winforms/UI/Tasks/Av1an.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public static async Task RunResumeWithNewArgs(string sourceFile, string override
4040
Program.mainForm.fileListBox.Items.Cast<ListViewItem>().ToList().ForEach(x => x.Selected = false);
4141
Program.mainForm.fileListBox.Items.Cast<ListViewItem>().First().Selected = true; // Force MFM
4242
FileList.LoadFiles(new string[1] { sourceFile }, true); // Add input file
43-
await TrackList.LoadFirstFile(Program.mainForm.fileListBox.Items[0]); // Load file
43+
await TrackList.SetAsMainFile(Program.mainForm.fileListBox.Items[0]); // Load file
4444
}
4545

4646
await Run(true, overrideTempDir, "");

ff-utils-winforms/UI/ThumbnailView.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,16 +79,14 @@ public static async Task GenerateThumbs(string path)
7979

8080
foreach (FileInfo pick in picks)
8181
{
82-
8382
pick.CopyTo(Path.Combine(Paths.GetThumbsPath(), $"thumb{idx}{pick.Extension}"));
84-
//IoUtils.GetImage(pick.FullName).Save(Path.Combine(Paths.GetThumbsPath(), $"thumb{idx}.{format}"), ImageFormat.Jpeg);
8583
idx++;
8684
}
8785
}
8886
}
8987
catch (Exception e)
9088
{
91-
Logger.Log("GetThumbnails Error: " + e.Message, true);
89+
Logger.Log($"GetThumbnails Error: {e.Message}\n{e.StackTrace}", true);
9290
}
9391

9492
RemoveInvalidImages();

ff-utils-winforms/UI/TrackList.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public static void ClearCurrentFile()
2828
{
2929
current = null;
3030
Program.mainForm.FfmpegOutputBox.Text = "";
31-
Program.mainForm.streamList.Items.Clear();
31+
//Program.mainForm.streamList.Items.Clear();
3232
Program.mainForm.streamDetailsBox.Text = "";
3333
Program.mainForm.FormatInfoLabel.Text = "";
3434
Program.mainForm.MetaGrid.Columns.Clear();
@@ -38,7 +38,7 @@ public static void ClearCurrentFile()
3838
Av1anUi.currentCropValues = null;
3939
}
4040

41-
public static async Task LoadFirstFile(ListViewItem item, bool switchToTrackList = true, bool generateThumbs = true)
41+
public static async Task SetAsMainFile(ListViewItem item, bool switchToTrackList = true, bool generateThumbs = true)
4242
{
4343
MediaFile mediaFile = ((FileListEntry)item.Tag).File;
4444
int streamCount = await FfmpegUtils.GetStreamCount(mediaFile.ImportPath);
@@ -53,7 +53,7 @@ public static async Task LoadFirstFile(ListViewItem item, bool switchToTrackList
5353
Program.mainForm.FormatInfoLabel.Text = $"{titleStr}Format: {current.File.Format} - Duration: {dur}{br} - Size: {FormatUtils.Bytes(current.File.Size)}";
5454
Program.mainForm.streamList.Items.Clear();
5555
currentAudioConfig = null;
56-
await AddStreamsToList(current.File, item.BackColor, switchToTrackList);
56+
//await AddStreamsToList(current.File, item.BackColor, switchToTrackList);
5757

5858
QuickConvertUi.InitFile(current.File.SourcePath);
5959
Av1anUi.InitFile(current.File.SourcePath);

0 commit comments

Comments
 (0)