style(ui): island layout with Warm Charcoal theme (Rider-style)

Replace flat columns with rounded island panels on a dark base.
Remove GridSplitters, add gap-based spacing between islands.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Mika Kuns
2026-04-14 10:52:52 +02:00
parent 5f51fe9621
commit c3fed45481
2 changed files with 83 additions and 76 deletions

View File

@@ -18,9 +18,11 @@
<SolidColorBrush x:Key="TextDimBrush" Color="#475569"/>
<!-- Borders & Backgrounds -->
<SolidColorBrush x:Key="BorderSubtleBrush" Color="#3a4560"/>
<SolidColorBrush x:Key="SidebarBgBrush" Color="#1a1a2e"/>
<SolidColorBrush x:Key="ContentBgBrush" Color="#16162a"/>
<SolidColorBrush x:Key="BorderSubtleBrush" Color="#3a3f46"/>
<SolidColorBrush x:Key="WindowBgBrush" Color="#1c1e21"/>
<SolidColorBrush x:Key="IslandBgBrush" Color="#272a2e"/>
<SolidColorBrush x:Key="SidebarBgBrush" Color="#272a2e"/>
<SolidColorBrush x:Key="ContentBgBrush" Color="#272a2e"/>
<!-- Status colors (for checkboxes) -->
<SolidColorBrush x:Key="StatusGrayBrush" Color="#475569"/>

View File

@@ -11,14 +11,15 @@
MinWidth="800" MinHeight="500"
KeyDown="OnGlobalKeyDown">
<DockPanel>
<DockPanel Background="{StaticResource WindowBgBrush}">
<v:StatusBarView DockPanel.Dock="Bottom" DataContext="{Binding StatusBar}" />
<Grid ColumnDefinitions="1*,Auto,2*,Auto,1.5*">
<DockPanel Grid.Column="0" MinWidth="180" MaxWidth="320"
Background="{StaticResource SidebarBgBrush}">
<Grid ColumnDefinitions="1*,2*,1.5*" Margin="8,8,8,0">
<!-- Lists island -->
<Border Grid.Column="0" CornerRadius="12" Background="{StaticResource IslandBgBrush}"
MinWidth="180" MaxWidth="320" Margin="0,0,4,8" ClipToBounds="True">
<DockPanel>
<TextBlock DockPanel.Dock="Top"
Text="Lists" FontWeight="SemiBold" FontSize="13"
Foreground="{StaticResource TextSecondaryBrush}"
@@ -77,10 +78,12 @@
</ListBox.ItemTemplate>
</ListBox>
</DockPanel>
</Border>
<GridSplitter Grid.Column="1" Width="4" ResizeDirection="Columns"/>
<DockPanel Grid.Column="2" Background="{StaticResource ContentBgBrush}">
<!-- Tasks island -->
<Border Grid.Column="1" CornerRadius="12" Background="{StaticResource IslandBgBrush}"
Margin="4,0,4,8" ClipToBounds="True">
<DockPanel>
<TextBlock DockPanel.Dock="Top"
Text="{Binding TaskList.ListName, FallbackValue='Tasks'}"
FontWeight="SemiBold" FontSize="16"
@@ -88,11 +91,13 @@
Margin="16,14,16,10"/>
<v:TaskListView DataContext="{Binding TaskList}" />
</DockPanel>
</Border>
<GridSplitter Grid.Column="3" Width="4" ResizeDirection="Columns"/>
<v:TaskDetailView Grid.Column="4" DataContext="{Binding TaskDetail}"
MinWidth="280" MaxWidth="500" />
<!-- Detail island -->
<Border Grid.Column="2" CornerRadius="12" Background="{StaticResource IslandBgBrush}"
MinWidth="280" MaxWidth="500" Margin="4,0,0,8" ClipToBounds="True">
<v:TaskDetailView DataContext="{Binding TaskDetail}" />
</Border>
</Grid>
</DockPanel>
</Window>