mirror of
https://github.com/rmcrackan/Libation.git
synced 2026-09-13 14:17:15 -04:00
Review #1885: Avalonia parity, and cap concurrency by processor count
Chardonnay had parallel downloads with no way to configure them, since the queue logic lives in shared UI code but each UI supplies its own controls. Adds the Auto-scroll toggle and the 'At once' spinner to Chardonnay's queue panel, bound to the same view model properties the WinForms panel uses. Also uses Environment.ProcessorCount as the spinner's ceiling rather than its default: min(ProcessorCount, 10). Downloading is bound by Audible's license throttling rather than local CPU, so core count says nothing about how many concurrent downloads will succeed - it only bounds how many decrypts can usefully run at once. The default stays 3. Spinner bounds are bound rather than hardcoded, so the two UIs cannot drift apart.
This commit is contained in:
1 parent
2db63a8edd
commit
986dda5eaa
4 files changed
+46
-12
No files matched your search
@@ -40,8 +40,8 @@ internal partial class ProcessQueueControl : UserControl
|
||||
ViewModel.ProcessStart += Book_ProcessStart;
|
||||
autoScrollChk.CheckedChanged += (s, e) => ViewModel.AutoScrollQueue = autoScrollChk.Checked;
|
||||
|
||||
concurrencyNum.Minimum = ProcessQueueViewModel.MinConcurrentDownloads;
|
||||
concurrencyNum.Maximum = ProcessQueueViewModel.MaxAllowedConcurrentDownloads;
|
||||
concurrencyNum.Minimum = ViewModel.MinConcurrentDownloads;
|
||||
concurrencyNum.Maximum = ViewModel.MaxAllowedConcurrentDownloads;
|
||||
concurrencyNum.ValueChanged += (s, e) => ViewModel.MaxConcurrentDownloads = (int)concurrencyNum.Value;
|
||||
ProcessQueue_PropertyChanged(this, new PropertyChangedEventArgs(null));
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user