mirror of
https://github.com/LanZhan-Harmony/WindowsMusicPlayer-TheUntamedMusicPlayer.git
synced 2026-05-06 19:20:18 +08:00
优化歌词偏移代码
This commit is contained in:
@@ -47,8 +47,7 @@ public sealed partial class LyricManager
|
||||
/// <summary>
|
||||
/// 总偏移毫秒数
|
||||
/// </summary>
|
||||
private double TotalLyricOffset =>
|
||||
_isManuallyAdjusted ? _manualLyricOffset : _globalLyricOffset;
|
||||
public double TotalLyricOffset => _isManuallyAdjusted ? _manualLyricOffset : _globalLyricOffset;
|
||||
|
||||
/// <summary>
|
||||
/// 歌词偏移显示字符串
|
||||
@@ -125,10 +124,9 @@ public sealed partial class LyricManager
|
||||
/// <returns></returns>
|
||||
public int GetCurrentLyricIndex(double currentTime)
|
||||
{
|
||||
var offset = TotalLyricOffset;
|
||||
for (var i = 0; i < CurrentLyricSlices.Count; i++)
|
||||
{
|
||||
if (CurrentLyricSlices[i].StartTime + offset > currentTime)
|
||||
if (CurrentLyricSlices[i].StartTime + TotalLyricOffset > currentTime)
|
||||
{
|
||||
return i > 0 ? i - 1 : 0;
|
||||
}
|
||||
@@ -171,7 +169,7 @@ public sealed partial class LyricManager
|
||||
});
|
||||
}
|
||||
|
||||
public Task AddLyricAdjust()
|
||||
public void AddLyricAdjust()
|
||||
{
|
||||
if (!_isManuallyAdjusted)
|
||||
{
|
||||
@@ -180,10 +178,9 @@ public sealed partial class LyricManager
|
||||
}
|
||||
_manualLyricOffset += 300;
|
||||
UpdateLyricAdjustDisplay();
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public Task SubtractLyricAdjust()
|
||||
public void SubtractLyricAdjust()
|
||||
{
|
||||
if (!_isManuallyAdjusted)
|
||||
{
|
||||
@@ -192,7 +189,6 @@ public sealed partial class LyricManager
|
||||
}
|
||||
_manualLyricOffset -= 300;
|
||||
UpdateLyricAdjustDisplay();
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
private void UpdateLyricAdjustDisplay()
|
||||
|
||||
@@ -140,16 +140,12 @@ public sealed partial class LyricViewModel : ObservableObject, IDisposable
|
||||
|
||||
public async void AddLyricAdjustButton_Click(object sender, RoutedEventArgs _2)
|
||||
{
|
||||
(sender as Button)!.IsEnabled = false;
|
||||
await Data.LyricManager.AddLyricAdjust();
|
||||
(sender as Button)!.IsEnabled = true;
|
||||
Data.LyricManager.AddLyricAdjust();
|
||||
}
|
||||
|
||||
public async void SubtractLyricAdjustButton_Click(object sender, RoutedEventArgs _2)
|
||||
{
|
||||
(sender as Button)!.IsEnabled = false;
|
||||
await Data.LyricManager.SubtractLyricAdjust();
|
||||
(sender as Button)!.IsEnabled = true;
|
||||
Data.LyricManager.SubtractLyricAdjust();
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
|
||||
Reference in New Issue
Block a user