Skip to content

Commit 4304485

Browse files
committed
锁屏动画支持开关
1 parent 79c6a31 commit 4304485

File tree

8 files changed

+73
-37
lines changed

8 files changed

+73
-37
lines changed

src/AppSettings.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ public class AppSettings
2222
/// </summary>
2323
public bool IsDisableWindowsLock { get; set; } = true;
2424

25+
/// <summary>
26+
/// 锁定时显示动画
27+
/// </summary>
28+
public bool LockAnimation { get; set; } = true;
29+
2530
/// <summary>
2631
/// 自动锁定的秒数
2732
/// </summary>

src/LockService.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@ internal class LockService
1515
private readonly List<WindowBlankScreen> _blankScreens;
1616
private WindowPopup? _popup;
1717
private readonly IStringLocalizer<Lang> _lang;
18+
private readonly AppSettings _appSettings;
1819
public event EventHandler OnLock;
1920
public event EventHandler OnUnlock;
20-
public LockService(IServiceProvider serviceProvider, IStringLocalizer<Lang> lang)
21+
public LockService(IServiceProvider serviceProvider, IStringLocalizer<Lang> lang, AppSettings appSettings)
2122
{
2223
_serviceProvider = serviceProvider;
2324
_blankScreens = new List<WindowBlankScreen>();
2425
_lang = lang;
26+
_appSettings = appSettings;
2527
}
2628

2729
public void Lock()
@@ -37,7 +39,10 @@ public void Lock()
3739
}
3840

3941
_isLocked = true;
40-
ShowPopup();
42+
if (_appSettings.LockAnimation)
43+
{
44+
ShowPopup();
45+
}
4146

4247
TaskManagerHook.DisabledTaskManager();
4348
_systemKeyHook.DisableSystemKey();

src/Pages/Index.razor

Lines changed: 41 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@
4242
Label="@(Lang["MouseDownActivePwd"])"
4343
Color="Color.Primary" />
4444

45+
<MudSwitch @bind-Checked="@(AppSettings.LockAnimation)"
46+
@bind-Checked:after="SaveSettings"
47+
Label="@(Lang["LockAnimation"])"
48+
Color="Color.Primary" />
49+
4550
<div class="d-flex align-center mt-2">
4651
<MudText Typo="Typo.button">@(Lang["LockShortcutKey"])</MudText>
4752
<MudButton Class="ml-3"
@@ -53,42 +58,45 @@
5358
</MudButton>
5459
@if (AppSettings.ShortcutKeyForLock.IsNotEmpty())
5560
{
56-
<MudIconButton Icon="@Icons.Material.Filled.Delete"
57-
Size="Size.Small"
58-
OnClick="ClearShortcutKey" />
61+
<MudTooltip Text="删除快捷键" Delay="600">
62+
<MudIconButton Icon="@Icons.Material.Filled.Delete"
63+
Size="Size.Small"
64+
OnClick="ClearShortcutKey" />
65+
</MudTooltip>
5966
}
60-
6167
</div>
6268

63-
<MudSelect T="int"
64-
Label="@(Lang["AutoLock"])"
65-
Value="@(AppSettings.AutoLockSecond)"
66-
Class="mt-4"
67-
ValueChanged="AutoLockChanged"
68-
AnchorOrigin="Origin.CenterCenter"
69-
TransformOrigin="Origin.CenterCenter"
70-
Dense="true">
71-
<MudSelectItem Value="0">@(Lang["Never"])</MudSelectItem>
72-
<MudSelectItem Value="60">@(Lang["Minute1"])</MudSelectItem>
73-
<MudSelectItem Value="120">@(Lang["Minute2"])</MudSelectItem>
74-
<MudSelectItem Value="180">@(Lang["Minute3"])</MudSelectItem>
75-
<MudSelectItem Value="300">@(Lang["Minute5"])</MudSelectItem>
76-
<MudSelectItem Value="600">@(Lang["Minute10"])</MudSelectItem>
77-
</MudSelect>
78-
79-
<MudSelect T="ScreenLocationEnum"
80-
Label="@(Lang["PwdLocation"])"
81-
Value="@(AppSettings.PasswordInputLocation)"
82-
Class="mt-4"
83-
ValueChanged="PwdBoxLocationChanged"
84-
Dense="true">
85-
<MudSelectItem Value="@(ScreenLocationEnum.Center)">@(Lang["Center"])</MudSelectItem>
86-
<MudSelectItem Value="@(ScreenLocationEnum.TopLeft)">@(Lang["TopLeft"])</MudSelectItem>
87-
<MudSelectItem Value="@(ScreenLocationEnum.TopRight)">@(Lang["TopRight"])</MudSelectItem>
88-
<MudSelectItem Value="@(ScreenLocationEnum.BottomLeft)">@(Lang["BottomLeft"])</MudSelectItem>
89-
<MudSelectItem Value="@(ScreenLocationEnum.BottomRight)">@(Lang["BottomRight"])</MudSelectItem>
90-
</MudSelect>
91-
69+
<MudGrid>
70+
<MudItem xs="6">
71+
<MudSelect T="int"
72+
Label="@(Lang["AutoLock"])"
73+
Value="@(AppSettings.AutoLockSecond)"
74+
Class="mt-4"
75+
ValueChanged="AutoLockChanged"
76+
Dense="true">
77+
<MudSelectItem Value="0">@(Lang["Never"])</MudSelectItem>
78+
<MudSelectItem Value="60">@(Lang["Minute1"])</MudSelectItem>
79+
<MudSelectItem Value="120">@(Lang["Minute2"])</MudSelectItem>
80+
<MudSelectItem Value="180">@(Lang["Minute3"])</MudSelectItem>
81+
<MudSelectItem Value="300">@(Lang["Minute5"])</MudSelectItem>
82+
<MudSelectItem Value="600">@(Lang["Minute10"])</MudSelectItem>
83+
</MudSelect>
84+
</MudItem>
85+
<MudItem xs="6">
86+
<MudSelect T="ScreenLocationEnum"
87+
Label="@(Lang["PwdLocation"])"
88+
Value="@(AppSettings.PasswordInputLocation)"
89+
Class="mt-4"
90+
ValueChanged="PwdBoxLocationChanged"
91+
Dense="true">
92+
<MudSelectItem Value="@(ScreenLocationEnum.Center)">@(Lang["Center"])</MudSelectItem>
93+
<MudSelectItem Value="@(ScreenLocationEnum.TopLeft)">@(Lang["TopLeft"])</MudSelectItem>
94+
<MudSelectItem Value="@(ScreenLocationEnum.TopRight)">@(Lang["TopRight"])</MudSelectItem>
95+
<MudSelectItem Value="@(ScreenLocationEnum.BottomLeft)">@(Lang["BottomLeft"])</MudSelectItem>
96+
<MudSelectItem Value="@(ScreenLocationEnum.BottomRight)">@(Lang["BottomRight"])</MudSelectItem>
97+
</MudSelect>
98+
</MudItem>
99+
</MudGrid>
92100

93101
<div class="d-flex align-center mt-4">
94102
<MudButton Class="mr-3"

src/Resources/Lang.Designer.cs

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Resources/Lang.en.resx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@
244244
<value>Locked</value>
245245
</data>
246246
<data name="AutoLock" xml:space="preserve">
247-
<value>Auto Lock(Idle for the following time)</value>
247+
<value>Automatically lock after idle time</value>
248248
</data>
249249
<data name="Never" xml:space="preserve">
250250
<value>Never</value>
@@ -264,4 +264,7 @@
264264
<data name="Minute10" xml:space="preserve">
265265
<value>10 minute</value>
266266
</data>
267+
<data name="LockAnimation" xml:space="preserve">
268+
<value>Show animation when locked</value>
269+
</data>
267270
</root>

src/Resources/Lang.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,4 +244,7 @@
244244
<data name="Minute10" xml:space="preserve">
245245
<value></value>
246246
</data>
247+
<data name="LockAnimation" xml:space="preserve">
248+
<value></value>
249+
</data>
247250
</root>

src/Resources/Lang.zh.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -261,4 +261,7 @@
261261
<data name="Minute10" xml:space="preserve">
262262
<value>10 分钟</value>
263263
</data>
264+
<data name="LockAnimation" xml:space="preserve">
265+
<value>锁定时显示动画</value>
266+
</data>
264267
</root>

src/WindowMain.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
xmlns:ui="http://schemas.modernwpf.com/2019"
99
mc:Ignorable="d"
1010
Title="透明锁屏"
11-
Height="440"
11+
Height="420"
1212
Width="530"
1313
ResizeMode="NoResize"
1414
WindowState="Normal"

0 commit comments

Comments
 (0)