diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1720fa6..8151715 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,6 +18,9 @@ jobs: - name: Checkout Code uses: actions/checkout@v7 + - name: Checkout Avalonia.LayoutInspector + run: git clone https://github.com/spelech/Avalonia.LayoutInspector.git ../Avalonia.LayoutInspector + - name: Setup .NET SDK 10.0 uses: actions/setup-dotnet@v6 with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6a17fdf..0724b60 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,6 +17,9 @@ jobs: - name: Checkout Code uses: actions/checkout@v7 + - name: Checkout Avalonia.LayoutInspector + run: git clone https://github.com/spelech/Avalonia.LayoutInspector.git ../Avalonia.LayoutInspector + - name: Setup .NET 10 SDK uses: actions/setup-dotnet@v6 with: diff --git a/App.axaml b/App.axaml index c7598e1..ae42946 100644 --- a/App.axaml +++ b/App.axaml @@ -16,7 +16,7 @@ - + diff --git a/Endpoints/HealthEndpoints.cs b/Endpoints/HealthEndpoints.cs index 8c17e4f..86cdf6e 100644 --- a/Endpoints/HealthEndpoints.cs +++ b/Endpoints/HealthEndpoints.cs @@ -29,7 +29,7 @@ public static void MapHealthEndpoints(this WebApplication app) StableDiffusion = forgeHealthy ? "Online" : "Offline", ComfyUI = comfyHealthy ? "Online" : "Offline", PreferredImageEngine = settings.PreferredImageEngine, - Version = "3.15.1", + Version = "3.16.0", }); }); } diff --git a/LocalLLMServerManager.Shared/LocalLLMServerManager.Shared.csproj b/LocalLLMServerManager.Shared/LocalLLMServerManager.Shared.csproj index 9b4f059..266de56 100644 --- a/LocalLLMServerManager.Shared/LocalLLMServerManager.Shared.csproj +++ b/LocalLLMServerManager.Shared/LocalLLMServerManager.Shared.csproj @@ -4,9 +4,9 @@ net10.0 enable enable - 3.15.1 - 3.15.1.0 - 3.15.1.0 + 3.16.0 + 3.16.0.0 + 3.16.0.0 true diff --git a/LocalLLMServerManager.Shared/ViewModels/AiAssistantViewModel.cs b/LocalLLMServerManager.Shared/ViewModels/AiAssistantViewModel.cs index 0998b74..a96bccf 100644 --- a/LocalLLMServerManager.Shared/ViewModels/AiAssistantViewModel.cs +++ b/LocalLLMServerManager.Shared/ViewModels/AiAssistantViewModel.cs @@ -38,10 +38,20 @@ public partial class AiAssistantViewModel : ObservableObject public Action? OnPopOutNativeWindowRequested { get; set; } + [ObservableProperty] private bool _isDrawerOpen = false; + [RelayCommand] public void RequestPopOut() { - OnPopOutNativeWindowRequested?.Invoke(); + if (OnPopOutNativeWindowRequested != null) + { + IsDrawerOpen = false; + OnPopOutNativeWindowRequested.Invoke(); + } + else + { + IsDrawerOpen = !IsDrawerOpen; + } } [RelayCommand] diff --git a/LocalLLMServerManager.Shared/ViewModels/DocumentationViewModel.cs b/LocalLLMServerManager.Shared/ViewModels/DocumentationViewModel.cs index a5f15ac..7173c35 100644 --- a/LocalLLMServerManager.Shared/ViewModels/DocumentationViewModel.cs +++ b/LocalLLMServerManager.Shared/ViewModels/DocumentationViewModel.cs @@ -57,16 +57,19 @@ public partial class DocumentationViewModel : ObservableObject public Action? OnNavigateToTabRequested { get; set; } public Action? OnPopOutNativeWindowRequested { get; set; } + [ObservableProperty] private bool _isDrawerOpen = false; + [RelayCommand] public void PopOutNativeWindow() { if (OnPopOutNativeWindowRequested != null) { + IsDrawerOpen = false; OnPopOutNativeWindowRequested.Invoke(); } else { - ToggleFloatingOverlay(); + IsDrawerOpen = !IsDrawerOpen; } } diff --git a/LocalLLMServerManager.Shared/ViewModels/MainViewModel.cs b/LocalLLMServerManager.Shared/ViewModels/MainViewModel.cs index ad41ace..81497d9 100644 --- a/LocalLLMServerManager.Shared/ViewModels/MainViewModel.cs +++ b/LocalLLMServerManager.Shared/ViewModels/MainViewModel.cs @@ -98,6 +98,32 @@ public HttpClient Http [ObservableProperty] private int _selectedModelsTabIndex = 0; + [ObservableProperty] private bool _isAnyDrawerOpen = false; + + [RelayCommand] + public void ToggleDocumentationDrawer() + { + Assistant.IsDrawerOpen = false; + Documentation.IsDrawerOpen = !Documentation.IsDrawerOpen; + IsAnyDrawerOpen = Documentation.IsDrawerOpen; + } + + [RelayCommand] + public void ToggleAiAssistDrawer() + { + Documentation.IsDrawerOpen = false; + Assistant.IsDrawerOpen = !Assistant.IsDrawerOpen; + IsAnyDrawerOpen = Assistant.IsDrawerOpen; + } + + [RelayCommand] + public void CloseDrawers() + { + Documentation.IsDrawerOpen = false; + Assistant.IsDrawerOpen = false; + IsAnyDrawerOpen = false; + } + [ObservableProperty] private string _appVersionText = $"LocalLLMServerManager v{typeof(MainViewModel).Assembly.GetName().Version?.ToString(3) ?? "3.15.1"} — Unified WASM & Desktop UI"; diff --git a/LocalLLMServerManager.Shared/Views/Controls/AiAssistantTabControl.axaml b/LocalLLMServerManager.Shared/Views/Controls/AiAssistantTabControl.axaml index d1386fb..8392b59 100644 --- a/LocalLLMServerManager.Shared/Views/Controls/AiAssistantTabControl.axaml +++ b/LocalLLMServerManager.Shared/Views/Controls/AiAssistantTabControl.axaml @@ -43,9 +43,15 @@ @@ -268,37 +274,33 @@ - - - @@ -98,6 +98,53 @@ + + + + + + + + + + + + + +