diff --git a/.idea/.idea.Nebula/.idea/avalonia.xml b/.idea/.idea.Nebula/.idea/avalonia.xml
index 473f82b..206214a 100644
--- a/.idea/.idea.Nebula/.idea/avalonia.xml
+++ b/.idea/.idea.Nebula/.idea/avalonia.xml
@@ -14,6 +14,7 @@
+
diff --git a/Nebula.Launcher/Assets/star-full.png b/Nebula.Launcher/Assets/star-full.png
new file mode 100644
index 0000000..56e2a3e
Binary files /dev/null and b/Nebula.Launcher/Assets/star-full.png differ
diff --git a/Nebula.Launcher/Assets/star.png b/Nebula.Launcher/Assets/star.png
new file mode 100644
index 0000000..dc02027
Binary files /dev/null and b/Nebula.Launcher/Assets/star.png differ
diff --git a/Nebula.Launcher/ViewModels/ContentBrowserViewModel.cs b/Nebula.Launcher/ViewModels/ContentBrowserViewModel.cs
index 0bbe79a..768f8f5 100644
--- a/Nebula.Launcher/ViewModels/ContentBrowserViewModel.cs
+++ b/Nebula.Launcher/ViewModels/ContentBrowserViewModel.cs
@@ -143,6 +143,7 @@ public sealed partial class ContentBrowserViewModel : ViewModelBase
if (path.Pathes.Count > 0 && (path.Pathes[0].StartsWith("ss14://") || path.Pathes[0].StartsWith("ss14s://")))
{
ServerText = path.Pathes[0];
+ path = new ContentPath("");
}
if (string.IsNullOrEmpty(ServerText))
@@ -157,14 +158,14 @@ public sealed partial class ContentBrowserViewModel : ViewModelBase
SelectedEntry = await CreateEntry(ServerText);
}
- _debugService.Debug(path.Path);
+ _debugService.Debug("Going to:" + path.Path);
var oriPath = path.Clone();
try
{
if (SelectedEntry == null || !SelectedEntry.GetRoot().TryGetEntry(path, out var centry))
{
- throw new Exception("Not found!");
+ throw new Exception("Not found! " + oriPath.Path);
}
if (appendHistory)
diff --git a/Nebula.Launcher/ViewModels/FavoriteServerListViewModel.cs b/Nebula.Launcher/ViewModels/FavoriteServerListViewModel.cs
new file mode 100644
index 0000000..f202e9c
--- /dev/null
+++ b/Nebula.Launcher/ViewModels/FavoriteServerListViewModel.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.ObjectModel;
+using Nebula.Shared.Models;
+
+namespace Nebula.Launcher.ViewModels;
+
+public class FavoriteServerListViewModel : ViewModelBase
+{
+ public FavoriteServerListViewModel() : base(){}
+ public FavoriteServerListViewModel(IServiceProvider provider) : base(provider){}
+
+ public ObservableCollection Servers = new();
+}
\ No newline at end of file
diff --git a/Nebula.Launcher/Views/Pages/ContentBrowserView.axaml b/Nebula.Launcher/Views/Pages/ContentBrowserView.axaml
index c02c0a1..451d2b2 100644
--- a/Nebula.Launcher/Views/Pages/ContentBrowserView.axaml
+++ b/Nebula.Launcher/Views/Pages/ContentBrowserView.axaml
@@ -13,44 +13,58 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+ Padding="0,0,0,0">
@@ -71,5 +85,5 @@
-
+
diff --git a/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml b/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml
new file mode 100644
index 0000000..c11ccaa
--- /dev/null
+++ b/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml
@@ -0,0 +1,11 @@
+
+ Welcome to Avalonia!
+
diff --git a/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml.cs b/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml.cs
new file mode 100644
index 0000000..02727b8
--- /dev/null
+++ b/Nebula.Launcher/Views/Pages/FavoriteServerListView.axaml.cs
@@ -0,0 +1,13 @@
+using Avalonia;
+using Avalonia.Controls;
+using Avalonia.Markup.Xaml;
+
+namespace Nebula.Launcher.Views.Pages;
+
+public partial class FavoriteServerListView : UserControl
+{
+ public FavoriteServerListView()
+ {
+ InitializeComponent();
+ }
+}
\ No newline at end of file