Skip to content

Commit a0cce4d

Browse files
v1.0.1
1 parent bcd8f3d commit a0cce4d

6 files changed

Lines changed: 69 additions & 5 deletions

File tree

AboutDialog.axaml

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
<StackPanel Spacing="4">
2929
<TextBlock Text="JustLauncher" FontSize="28" FontWeight="Black" Foreground="{DynamicResource PrimaryText}" HorizontalAlignment="Center"/>
30-
<TextBlock Text="Version 1.0.0" FontSize="14" Foreground="{DynamicResource SecondaryText}" HorizontalAlignment="Center" Opacity="0.8"/>
30+
<TextBlock Text="{Binding Version, StringFormat='Version {0}'}" FontSize="14" Foreground="{DynamicResource SecondaryText}" HorizontalAlignment="Center" Opacity="0.8"/>
3131
</StackPanel>
3232

3333
<TextBlock Text="A modern, high-performance Minecraft launcher built with Avalonia."
@@ -37,11 +37,27 @@
3737
<i:Icon Value="fa-solid fa-code" Foreground="{DynamicResource SuccessBrush}" VerticalAlignment="Center"/>
3838
<TextBlock Text="Created by JustNeki" FontSize="13" FontWeight="Bold" Foreground="{DynamicResource PrimaryText}" VerticalAlignment="Center"/>
3939
</StackPanel>
40+
41+
<!-- Social Links -->
42+
<StackPanel Orientation="Horizontal" Spacing="12" HorizontalAlignment="Center" Margin="0,8,0,0">
43+
<Button x:Name="GitHubButton" Classes="Secondary" Padding="10,8" CornerRadius="8" ToolTip.Tip="View on GitHub">
44+
<StackPanel Orientation="Horizontal" Spacing="8">
45+
<i:Icon Value="fa-brands fa-github" FontSize="16"/>
46+
<TextBlock Text="GitHub" FontSize="12" FontWeight="Medium"/>
47+
</StackPanel>
48+
</Button>
49+
<Button x:Name="WebsiteButton" Classes="Secondary" Padding="10,8" CornerRadius="8" ToolTip.Tip="Visit Website">
50+
<StackPanel Orientation="Horizontal" Spacing="8">
51+
<i:Icon Value="fa-solid fa-globe" FontSize="16"/>
52+
<TextBlock Text="Website" FontSize="12" FontWeight="Medium"/>
53+
</StackPanel>
54+
</Button>
55+
</StackPanel>
4056
</StackPanel>
4157

4258
<!-- Footer -->
43-
<StackPanel Grid.Row="2" HorizontalAlignment="Center" Margin="0,32,0,0">
44-
<TextBlock Text="© 2026 JustNeki • Open Source" FontSize="11" Foreground="{DynamicResource SecondaryText}" Opacity="0.5"/>
59+
<StackPanel Grid.Row="2" HorizontalAlignment="Center" Margin="0,24,0,0">
60+
<TextBlock Text="{Binding Copyright}" FontSize="11" Foreground="{DynamicResource SecondaryText}" Opacity="0.5"/>
4561
</StackPanel>
4662
</Grid>
4763
</Border>

AboutDialog.axaml.cs

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,20 @@
11
using Avalonia.Controls;
22
using Avalonia.Markup.Xaml;
33
using JustLauncher.Services;
4+
using System.Diagnostics;
5+
using System.Runtime.InteropServices;
46

57
namespace JustLauncher;
68

79
public partial class AboutDialog : UserControl
810
{
11+
public string Version => AppVersion.Version;
12+
public string Copyright => AppVersion.Copyright;
13+
914
public AboutDialog()
1015
{
1116
InitializeComponent();
17+
DataContext = this;
1218
}
1319

1420
private void InitializeComponent()
@@ -17,5 +23,34 @@ private void InitializeComponent()
1723

1824
var closeBtn = this.FindControl<Button>("CloseButton");
1925
if (closeBtn != null) closeBtn.Click += (s, e) => OverlayService.Close();
26+
27+
var githubBtn = this.FindControl<Button>("GitHubButton");
28+
if (githubBtn != null) githubBtn.Click += (s, e) => OpenUrl("https://github.com/PinkLittleKitty/JustLauncher");
29+
30+
var websiteBtn = this.FindControl<Button>("WebsiteButton");
31+
if (websiteBtn != null) websiteBtn.Click += (s, e) => OpenUrl("https://justneki.com");
32+
}
33+
34+
private void OpenUrl(string url)
35+
{
36+
try
37+
{
38+
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
39+
{
40+
Process.Start(new ProcessStartInfo(url) { UseShellExecute = true });
41+
}
42+
else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
43+
{
44+
Process.Start("xdg-open", url);
45+
}
46+
else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
47+
{
48+
Process.Start("open", url);
49+
}
50+
}
51+
catch
52+
{
53+
// Silently fail if URL opening is not supported
54+
}
2055
}
2156
}

AppVersion.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
namespace JustLauncher;
2+
3+
public static class AppVersion
4+
{
5+
public const string Version = "1.0.1";
6+
7+
public const string Name = "JustLauncher";
8+
9+
public static string FullName => $"{Name} {Version}";
10+
11+
public const string Copyright = "© 2026 JustNeki • Open Source";
12+
}

LaunchCommandBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public static string BuildArguments(Installation installation, Account account,
4747
args.Add("-Djava.library.path=" + EscapePath(nativesDir));
4848

4949
args.Add("-Dminecraft.launcher.brand=JustLauncher");
50-
args.Add("-Dminecraft.launcher.version=1.0.0");
50+
args.Add("-Dminecraft.launcher.version=" + AppVersion.Version);
5151

5252
if (account.AccountType == "ElyBy")
5353
{

PlayPage.axaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
<i:Icon Value="fa-solid fa-bolt" FontSize="14" Foreground="{DynamicResource SuccessBrush}" VerticalAlignment="Center"/>
8585
<TextBlock x:Name="StatusText" Text="Ready to Play" FontSize="14" Foreground="{DynamicResource PrimaryText}" VerticalAlignment="Center" FontWeight="Bold"/>
8686
</StackPanel>
87-
<TextBlock Grid.Column="1" Text="JustLauncher 1.0.0" FontSize="12" Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center" Opacity="0.5"/>
87+
<TextBlock Grid.Column="1" Text="{Binding AppVersionText}" FontSize="12" Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center" Opacity="0.5"/>
8888
</Grid>
8989
<ProgressBar x:Name="ProgressBar" Height="4" IsVisible="False" IsIndeterminate="True" Foreground="{DynamicResource SuccessBrush}" Background="{DynamicResource ContentBackground}" CornerRadius="2"/>
9090
</StackPanel>

PlayPage.axaml.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ public partial class PlayPage : UserControl
2121
private InstallationsConfig installationsConfig = new();
2222
private string minecraftDirectory = string.Empty;
2323
private MinecraftService _minecraftService = default!;
24+
public string AppVersionText => AppVersion.FullName;
2425

2526
public PlayPage() : this("Player") { }
2627

0 commit comments

Comments
 (0)