- Added splashscreen

- Added Copy Login to Context Menu
- UI and localization improvements
This commit is contained in:
Давид Чернопятов
2024-09-15 16:45:20 +03:00
parent 89ca08f6cf
commit e6ae762d5a
10 changed files with 151 additions and 12 deletions
+1
View File
@@ -23,6 +23,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "changelog", "changelog", "{
changelog\1.4.9.html = changelog\1.4.9.html changelog\1.4.9.html = changelog\1.4.9.html
changelog\1.5.0.html = changelog\1.5.0.html changelog\1.5.0.html = changelog\1.5.0.html
changelog\1.5.1.html = changelog\1.5.1.html changelog\1.5.1.html = changelog\1.5.1.html
changelog\1.5.2.html = changelog\1.5.2.html
EndProjectSection EndProjectSection
EndProject EndProject
Global Global
+8 -3
View File
@@ -137,6 +137,7 @@
<ListBox Grid.Row="0" w:FontScaleWindow.Scale="0.8" w:FontScaleWindow.ResizeFont="True" Margin="10,15,10,15" DisplayMemberPath="AccountName" ItemsSource="{Binding MaFiles}" SelectedValue="{Binding SelectedMafile}"> <ListBox Grid.Row="0" w:FontScaleWindow.Scale="0.8" w:FontScaleWindow.ResizeFont="True" Margin="10,15,10,15" DisplayMemberPath="AccountName" ItemsSource="{Binding MaFiles}" SelectedValue="{Binding SelectedMafile}">
<FrameworkElement.ContextMenu> <FrameworkElement.ContextMenu>
<ContextMenu> <ContextMenu>
<MenuItem Header="{Tr MainWindow.ContextMenus.Mafile.CopyLogin}" Command="{Binding CopyLoginCommand}" CommandParameter="{Binding PlacementTarget.SelectedValue, RelativeSource={RelativeSource AncestorType=ContextMenu}}"></MenuItem>
<MenuItem Header="{Tr MainWindow.ContextMenus.Mafile.AddToGroup}" ItemsSource="{Binding Groups}"> <MenuItem Header="{Tr MainWindow.ContextMenus.Mafile.AddToGroup}" ItemsSource="{Binding Groups}">
<ItemsControl.ItemContainerStyle> <ItemsControl.ItemContainerStyle>
<Style BasedOn="{StaticResource MaterialDesignMenuItem}" TargetType="{x:Type MenuItem}"> <Style BasedOn="{StaticResource MaterialDesignMenuItem}" TargetType="{x:Type MenuItem}">
@@ -156,11 +157,15 @@
</ContextMenu> </ContextMenu>
</FrameworkElement.ContextMenu> </FrameworkElement.ContextMenu>
</ListBox> </ListBox>
<TextBlock Visibility="{Binding MaFiles.Count, Converter={StaticResource AnyMafilesToVisibilityConverter}, Mode=OneWay}" Margin="5" FontSize="16" Grid.Row="0" TextWrapping="WrapWithOverflow" Text="{Tr MainWindow.Global.StartTip}"> <Border Grid.Row="0" Margin="10" Padding="5" Visibility="{Binding MaFiles.Count, Converter={StaticResource AnyMafilesToVisibilityConverter}, Mode=OneWay}">
<TextBlock.Background> <Border.Background>
<SolidColorBrush Color="DarkGray" Opacity="0.5"/> <SolidColorBrush Color="DarkGray" Opacity="0.5"/>
</TextBlock.Background> </Border.Background>
<TextBlock TextWrapping="WrapWithOverflow" FontSize="16" Text="{Tr MainWindow.Global.StartTip}">
</TextBlock> </TextBlock>
</Border>
<TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" md:TextFieldAssist.HasClearButton="True" w:FontScaleWindow.Scale="0.7" w:FontScaleWindow.ResizeFont="True" Grid.Row="1" Margin="10" md:HintAssist.Hint="{Tr MainWindow.LeftPart.SearchBoxHint}" Text="{Binding SearchText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> <TextBox Style="{StaticResource MaterialDesignFloatingHintTextBox}" md:TextFieldAssist.HasClearButton="True" w:FontScaleWindow.Scale="0.7" w:FontScaleWindow.ResizeFont="True" Grid.Row="1" Margin="10" md:HintAssist.Hint="{Tr MainWindow.LeftPart.SearchBoxHint}" Text="{Binding SearchText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</Grid> </Grid>
<md:Card Grid.Column="1" Margin="10,10,15,10" UniformCornerRadius="15"> <md:Card Grid.Column="1" Margin="10,10,15,10" UniformCornerRadius="15">
+7 -1
View File
@@ -10,12 +10,14 @@
<SatelliteResourceLanguages>en;ru;ua</SatelliteResourceLanguages> <SatelliteResourceLanguages>en;ru;ua</SatelliteResourceLanguages>
<ApplicationIcon>Theme\lock.ico</ApplicationIcon> <ApplicationIcon>Theme\lock.ico</ApplicationIcon>
<SupportedOSPlatformVersion>7.0</SupportedOSPlatformVersion> <SupportedOSPlatformVersion>7.0</SupportedOSPlatformVersion>
<AssemblyVersion>1.5.1</AssemblyVersion> <AssemblyVersion>1.5.2</AssemblyVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<None Remove="Theme\1140x641.jpg" />
<None Remove="Theme\Background.jpg" /> <None Remove="Theme\Background.jpg" />
<None Remove="Theme\lock.ico" /> <None Remove="Theme\lock.ico" />
<None Remove="Theme\SplashScreen.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@@ -48,6 +50,10 @@
<ProjectReference Include="..\SteamLibForked\SteamLibForked.csproj" /> <ProjectReference Include="..\SteamLibForked\SteamLibForked.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<SplashScreen Include="Theme\SplashScreen.png" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Update="View\Dialogs\LoginAgainOnImportDialog.xaml.cs"> <Compile Update="View\Dialogs\LoginAgainOnImportDialog.xaml.cs">
<SubType>Code</SubType> <SubType>Code</SubType>
Binary file not shown.

After

Width:  |  Height:  |  Size: 413 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 213 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

+1 -1
View File
@@ -45,7 +45,7 @@
<ComboBox Style="{StaticResource MaterialDesignFloatingHintComboBox}" Margin="0,20,0,0" FontSize="16" ItemsSource="{Binding Languages}" DisplayMemberPath="Value" SelectedValuePath="Key" SelectedValue="{Binding Language}" materialDesign:HintAssist.Hint="{Tr LanguageWord}" ></ComboBox> <ComboBox Style="{StaticResource MaterialDesignFloatingHintComboBox}" Margin="0,20,0,0" FontSize="16" ItemsSource="{Binding Languages}" DisplayMemberPath="Value" SelectedValuePath="Key" SelectedValue="{Binding Language}" materialDesign:HintAssist.Hint="{Tr LanguageWord}" ></ComboBox>
<CheckBox Margin="0,20,0,0" FontSize="16" IsChecked="{Binding DisableTimersOnChange}" Content="{Tr SettingsDialog.DisableTimersOnSwitch}"/> <CheckBox Margin="0,20,0,0" FontSize="16" IsChecked="{Binding DisableTimersOnChange}" Content="{Tr SettingsDialog.DisableTimersOnSwitch}"/>
<CheckBox Margin="0,10,0,0" FontSize="16" IsChecked="{Binding HideToTray}" Content="{Tr SettingsDialog.MinimizeToTray}"/> <CheckBox Margin="0,10,0,0" FontSize="16" IsChecked="{Binding HideToTray}" Content="{Tr SettingsDialog.MinimizeToTray}"/>
<CheckBox Margin="0,10,0,0" FontSize="16" IsChecked="{Binding UseIcon}" Content="{Tr SettingsDialog.UseIndicator}"/> <CheckBox Margin="0,10,0,0" FontSize="16" IsChecked="{Binding UseIcon}" Content="{Tr SettingsDialog.UseIndicator}" ToolTip="{Tr SettingsDialog.UseIndicatorHint}"/>
<materialDesign:ColorPicker IsEnabled="{Binding UseIcon}" Color="{Binding IconColor, Delay=50}" /> <materialDesign:ColorPicker IsEnabled="{Binding UseIcon}" Color="{Binding IconColor, Delay=50}" />
<CheckBox Margin="0,10,0,5" FontSize="16" IsChecked="{Binding UseBackground}" Content="{Tr SettingsDialog.UseCustomColor}"/> <CheckBox Margin="0,10,0,5" FontSize="16" IsChecked="{Binding UseBackground}" Content="{Tr SettingsDialog.UseCustomColor}"/>
+27
View File
@@ -17,6 +17,7 @@ using NebulaAuth.Model.Entities;
using SteamLib.Exceptions; using SteamLib.Exceptions;
using NebulaAuth.Utility; using NebulaAuth.Utility;
using NebulaAuth.View.Dialogs; using NebulaAuth.View.Dialogs;
using AutoUpdaterDotNET;
namespace NebulaAuth.ViewModel; namespace NebulaAuth.ViewModel;
@@ -238,4 +239,30 @@ public partial class MainVM //File //TODO: Refactor
await AddMafile(arr); await AddMafile(arr);
} }
[RelayCommand]
private void CopyLogin(object? mafile)
{
if(mafile is not Mafile maf) return;
var i = 0;
while (i < 20)
{
try
{
Clipboard.SetText(maf.AccountName);
SnackbarController.SendSnackbar(GetLocalizationOrDefault("LoginCopied"));
return;
}
catch (Exception ex)
{
if (i == 19)
{
Shell.Logger.Error(ex);
SnackbarController.SendSnackbar(LocManager.GetCommonOrDefault("Error", "Error"));
}
}
i++;
}
}
} }
+22 -7
View File
@@ -242,6 +242,11 @@
}, },
"ContextMenus": { "ContextMenus": {
"Mafile": { "Mafile": {
"CopyLogin": {
"en": "Copy login",
"ru": "Скопировать логин",
"ua": "Скопіювати логін"
},
"AddToGroup": { "AddToGroup": {
"en": "Add to group", "en": "Add to group",
"ru": "Добавить в группу", "ru": "Добавить в группу",
@@ -256,13 +261,13 @@
"Proxy": { "Proxy": {
"Copy": { "Copy": {
"en": "Copy", "en": "Copy",
"ru": "Копировать", "ru": "Скопировать",
"ua": "Копіювати" "ua": "Скопіювати"
}, },
"CopyAddress": { "CopyAddress": {
"en": "Copy address", "en": "Copy address",
"ru": "Копировать адрес", "ru": "Скопировать адрес",
"ua": "Копіювати адресу" "ua": "Скопіювати адресу"
} }
} }
} }
@@ -310,6 +315,11 @@
"ru": "Использовать индикатор", "ru": "Использовать индикатор",
"ua": "Використовувати індикатор" "ua": "Використовувати індикатор"
}, },
"UseIndicatorHint": {
"en": "Small color indicator in windows toolbar to identify program instance",
"ru": "Маленький цветной индикатор в панели задач для идентификации экземпляра программы",
"ua": "Малий кольоровий індикатор в панелі завдань для ідентифікації екземпляра програми"
},
"UseCustomColor": { "UseCustomColor": {
"en": "Custom window color", "en": "Custom window color",
"ru": "Свой цвет окна", "ru": "Свой цвет окна",
@@ -576,9 +586,9 @@
"ua": "помилки:" "ua": "помилки:"
}, },
"RemoveMafileConfirmation": { "RemoveMafileConfirmation": {
"ru": "Удалить мафайл? Это действие переместит мафайл в mafiles_removed", "ru": "Удалить мафайл? Это действие переместит мафайл в папку 'mafiles_removed' (Это действие не удаляет Steam Guard с аккаунта)",
"en": "Remove mafile? This action will move mafile to mafiles_removed", "en": "Remove mafile? This action will move mafile to 'mafiles_removed' (This action does not remove the Steam Guard from the account)",
"ua": "Видалити мафайл? Ця дія перемістить мафайл в mafiles_removed" "ua": "Видалити мафайл? Ця дія перемістить мафайл у каталог 'mafiles_removed' (Ця дія не видаляє автентифікатор з облікового запису)"
}, },
"CantRemoveAlreadyExist": { "CantRemoveAlreadyExist": {
"ru": "Не удалось переместить мафайл, возможно в папке уже существует мафайл с таким именем.", "ru": "Не удалось переместить мафайл, возможно в папке уже существует мафайл с таким именем.",
@@ -629,6 +639,11 @@
"ru": "Не удалось получить SteamID из мафайла и сохранить изменения. Необходимо сделать релогин. Отменено", "ru": "Не удалось получить SteamID из мафайла и сохранить изменения. Необходимо сделать релогин. Отменено",
"en": "Can't retrieve SteamID from mafile to save changes. Need to relogin. Canceled", "en": "Can't retrieve SteamID from mafile to save changes. Need to relogin. Canceled",
"ua": "Не вдалося отримати SteamID з мафайла та зберегти зміни. Потрібно зробити релогін. Скасовано" "ua": "Не вдалося отримати SteamID з мафайла та зберегти зміни. Потрібно зробити релогін. Скасовано"
},
"LoginCopied": {
"en": "Login copied",
"ru": "Логин скопирован",
"ua": "Логін скопійовано"
} }
}, },
"ErrorTranslator": { "ErrorTranslator": {
+85
View File
@@ -0,0 +1,85 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Changelog</title>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: #eeeeee;
color: #333;
line-height: 1.6;
}
.changelog-container {
background-color: #fff;
border-radius: 10px;
padding: 25px;
margin: 25px auto;
max-width: 800px;
box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}
.change {
margin-bottom: 20px;
padding: 0;
border-left: 4px solid #a50ec7;
background-color: #f9f9f9;
}
.version {
font-weight: 600;
font-size: 1.5em;
color: #a50ec7;
margin-left: 10px;
}
.date {
font-style: italic;
color: #888;
margin-bottom: 10px;
margin-left: 15px;
}
.description {
font-size: 1em;
padding: 0 15px;
}
.description ul {
list-style: inside square;
padding: 0;
}
@media only screen and (max-width: 600px) {
.changelog-container {
width: 90%;
margin: 25px auto;
padding: 25px;
}
}
</style>
</head>
<body>
<div class="changelog-container">
<!-- Changelog entry -->
<div class="change">
<div class="version">Version 1.5.2</div>
<div class="date">DATE</div>
<div class="description">
- FIX: Potentially fixed problem with memory-leak on some devices (Windows 10, 11 Home/Professional)<br />
- FIX: Small performance improvements<br />
- UI: Added splash screen on application start <br/>
- UI: Added "Copy Login" in context menu of account on right-click. <br/>
- UI: Small localization update <br/>
- UI: Added tooltip to "Use Indicator" setting <br/>
- UI: Small design improvements <br/>
- UPDATE: most of the libraries were updated to the last version<br />
</div>
</div>
</div>
</body>
</html>