[feat] integrate progress manager into speaker name prompts for better coordination

This commit is contained in:
2025-08-12 09:04:45 +02:00
parent 9b4bd545dd
commit eb1bf9e02d

View File

@@ -133,7 +133,12 @@ fn sanitize_speaker_name(raw: &str) -> String {
raw.to_string()
}
fn prompt_speaker_name_for_path(path: &Path, default_name: &str, enabled: bool) -> String {
fn prompt_speaker_name_for_path(
path: &Path,
default_name: &str,
enabled: bool,
_pm: Option<&polyscribe::ui::progress::ProgressManager>,
) -> String {
if !enabled {
return default_name.to_string();
}
@@ -323,6 +328,12 @@ fn run() -> Result<()> {
));
}
// Initialize progress manager early to coordinate prompts
let mut pm = polyscribe::ui::progress::ProgressManager::default_for_files(inputs.len());
// Initialize progress manager early to coordinate prompts
let mut pm = polyscribe::ui::progress::ProgressManager::default_for_files(inputs.len());
// Collect all speaker names up front (one per input), before any file reading/transcription
let speakers: Vec<String> = inputs
.iter()
@@ -333,7 +344,7 @@ fn run() -> Result<()> {
.and_then(|s| s.to_str())
.unwrap_or("speaker"),
);
prompt_speaker_name_for_path(path, &default_speaker, args.set_speaker_names)
prompt_speaker_name_for_path(path, &default_speaker, args.set_speaker_names, Some(&pm))
})
.collect();