Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<VersionPrefix>11.3.12</VersionPrefix>
<VersionSuffix>preview.1</VersionSuffix>
<VersionPrefix>12.0.0</VersionPrefix>
<VersionSuffix></VersionSuffix>
<Authors>Wiesław Šoltés</Authors>
<Company>Wiesław Šoltés</Company>
<Description>A docking layout system.</Description>
Expand Down
18 changes: 6 additions & 12 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<AvaloniaVersion>11.3.12</AvaloniaVersion>
<AvaloniaVersion>12.0.0</AvaloniaVersion>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="Avalonia" Version="$(AvaloniaVersion)" />
Expand All @@ -12,26 +12,20 @@
<PackageVersion Include="Avalonia.Browser" Version="$(AvaloniaVersion)" />
<PackageVersion Include="Avalonia.Controls.DataGrid" Version="$(AvaloniaVersion)" />
<PackageVersion Include="Avalonia.Headless.XUnit" Version="$(AvaloniaVersion)" />
<PackageVersion Include="Avalonia.AvaloniaEdit" Version="11.3.0" />
<PackageVersion Include="AvaloniaEdit.TextMate" Version="11.3.0" />
<PackageVersion Include="Avalonia.ReactiveUI" Version="11.3.9" />
<PackageVersion Include="Avalonia.AvaloniaEdit" Version="11.4.1" />
<PackageVersion Include="AvaloniaEdit.TextMate" Version="11.4.1" />
<PackageVersion Include="ReactiveUI.Avalonia" Version="11.3.8" />
<PackageVersion Include="ReactiveUI.SourceGenerators" Version="2.6.1" />
<PackageVersion Include="StaticViewLocator" Version="0.1.0" />
<PackageVersion Include="reactiveui" Version="20.4.1" />
<PackageVersion Include="reactiveui" Version="22.2.1" />
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.0" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.4" />
<PackageVersion Include="YamlDotNet" Version="16.3.0" />
<PackageVersion Include="ReactiveMarbles.PropertyChanged" Version="2.0.27" />
<PackageVersion Include="System.Text.Json" Version="10.0.2" />
<PackageVersion Include="WebViewControl-Avalonia" Version="3.120.10" />
<PackageVersion Include="WebViewControl-Avalonia-ARM64" Version="3.120.10" />
<PackageVersion Include="xunit" Version="2.9.3" />
<PackageVersion Include="xunit.abstractions" Version="2.0.3" />
<PackageVersion Include="xunit.assert" Version="2.9.3" />
<PackageVersion Include="xunit.core" Version="2.9.3" />
<PackageVersion Include="xunit.extensibility.core" Version="2.9.3" />
<PackageVersion Include="xunit.extensibility.execution" Version="2.9.3" />
<PackageVersion Include="xunit.runner.console" Version="2.9.3" />
<PackageVersion Include="xunit.v3" Version="3.2.1" />
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
Expand Down
2 changes: 1 addition & 1 deletion build/Avalonia.ReactiveUI.props
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<PackageReference Include="Avalonia.ReactiveUI" />
<PackageReference Include="ReactiveUI.Avalonia" />
</ItemGroup>
</Project>
11 changes: 4 additions & 7 deletions build/XUnit.props
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<OutputType>Exe</OutputType>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="xunit" />
<PackageReference Include="xunit.abstractions" />
<PackageReference Include="xunit.assert" />
<PackageReference Include="xunit.core" />
<PackageReference Include="xunit.extensibility.core" />
<PackageReference Include="xunit.extensibility.execution" />
<PackageReference Include="xunit.runner.console" />
<PackageReference Include="xunit.v3" />
<PackageReference Include="xunit.runner.visualstudio" />
<PackageReference Include="Microsoft.NET.Test.Sdk" />
</ItemGroup>
Expand Down
5 changes: 3 additions & 2 deletions docfx/articles/dock-styling.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,9 @@ Example overriding the modified indicator:
Dock controls mark important elements in their templates with `PART_` names. When
copying these templates keep the parts intact so features such as window dragging
continue to work. For example `ToolChromeControl` defines `PART_Grip`,
`PART_CloseButton` and `PART_MaximizeRestoreButton`, while `HostWindow` exposes
`PART_TitleBar`.
`PART_CloseButton` and `PART_MaximizeRestoreButton`. `HostWindow` now relies on
Avalonia `WindowDrawnDecorations` for standard caption chrome rather than a Dock
title-bar template part.

Controls also toggle pseudo classes to reflect their current state. These can be
targeted in selectors to customize the appearance:
Expand Down
2 changes: 1 addition & 1 deletion docfx/articles/dock-window-creation-overrides.md
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ Managed windows should look and feel like real windows. The goal is to reuse exi
- Avoid duplicating theme XAML by referencing shared resources in `Dock.Avalonia.Themes.*` (Fluent/Simple).

### Theme resource locations (current)
- `DockFluentTheme.axaml` includes window-related templates from `src/Dock.Avalonia.Themes.Fluent/Controls/*.axaml` (for example `HostWindow.axaml`, `HostWindowTitleBar.axaml`, `DragPreviewWindow.axaml`, `PinnedDockWindow.axaml`, `DockAdornerWindow.axaml`, `MdiDocumentWindow.axaml`, `ManagedWindowLayer.axaml`, `WindowChromeResources.axaml`).
- `DockFluentTheme.axaml` includes window-related templates from `src/Dock.Avalonia.Themes.Fluent/Controls/*.axaml` (for example `HostWindow.axaml`, `WindowDrawnDecorations.axaml`, `HostWindowTitleBar.axaml`, `DragPreviewWindow.axaml`, `PinnedDockWindow.axaml`, `DockAdornerWindow.axaml`, `MdiDocumentWindow.axaml`, `ManagedWindowLayer.axaml`, `WindowChromeResources.axaml`).
- `DockSimpleTheme.axaml` includes the same `/Controls/*.axaml` resources; the Simple theme links Fluent control resources via `Dock.Avalonia.Themes.Simple.csproj` (see `AvaloniaResource` link to `Dock.Avalonia.Themes.Fluent/Controls`).
- New managed-window templates/resources should be added to `src/Dock.Avalonia.Themes.Fluent/Controls/` and referenced in both `DockFluentTheme.axaml` and `DockSimpleTheme.axaml`.

Expand Down
3 changes: 2 additions & 1 deletion samples/BrowserTabTheme/App.axaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<Application xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:core="using:Dock.Model.Core"
xmlns:controls="using:Dock.Model.Controls"
xmlns:themes="using:Dock.Avalonia.Themes.Browser"
x:Class="BrowserTabTheme.App"
RequestedThemeVariant="Dark">
Expand Down Expand Up @@ -45,7 +46,7 @@

<Style Selector="DocumentTabStrip">
<Setter Property="CreateButtonTemplate">
<DataTemplate>
<DataTemplate x:DataType="controls:IDocumentDock">
<Button Command="{Binding CreateDocument}"
Theme="{DynamicResource ButtonCreateDocument}">
<Path Stretch="Uniform"
Expand Down
4 changes: 0 additions & 4 deletions samples/BrowserTabTheme/App.axaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,5 @@ public override void OnFrameworkInitializationCompleted()
}

base.OnFrameworkInitializationCompleted();

#if DEBUG
this.AttachDevTools();
#endif
}
}
1 change: 0 additions & 1 deletion samples/BrowserTabTheme/BrowserTabTheme.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
2 changes: 1 addition & 1 deletion samples/BrowserTabTheme/MainWindow.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
Background="{DynamicResource DockSurfaceHeaderBrush}"
ExtendClientAreaToDecorationsHint="True"
ExtendClientAreaTitleBarHeightHint="-1"
ExtendClientAreaChromeHints="Default, PreferSystemChrome, OSXThickTitleBar">
>
<DockControl Name="DockControl" Margin="6" />

</Window>
4 changes: 2 additions & 2 deletions samples/BrowserTabTheme/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This sample backports a browser-tab visual style from StackWich into the origina
## What this sample demonstrates

- Browser-like document and tool tab visuals.
- Custom window chrome styling via `HostWindowTitleBar` and custom `CaptionButtons`.
- Browser-style window chrome driven by Avalonia drawn decorations and Dock theme resources.
- Dock drag/drop, float, pin, and document creation behavior preserved.
- Theme dictionaries for both Light (`Default`) and Dark variants.

Expand Down Expand Up @@ -37,5 +37,5 @@ dotnet build Dock.slnx
Capture a screenshot after launch to validate:

- Browser-style tab states: default, hover, selected, selected+hover.
- Custom title bar and caption buttons.
- Custom drawn caption buttons aligned with the browser-style chrome.
- Dock target indicators and drag preview visuals.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
1 change: 0 additions & 1 deletion samples/DockCodeOnlySample/DockCodeOnlySample.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
3 changes: 1 addition & 2 deletions samples/DockCodeOnlySample/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -155,8 +155,7 @@ void RestoreWorkspace(DockWorkspace? workspace)
loadWorkspaceB.Click += (_, _) => RestoreWorkspace(workspaceB);

var lockLayout = new CheckBox { Content = "Lock layout" };
lockLayout.Checked += (_, _) => dockControl.IsDockingEnabled = false;
lockLayout.Unchecked += (_, _) => dockControl.IsDockingEnabled = true;
lockLayout.IsCheckedChanged += (_, _) => dockControl.IsDockingEnabled = lockLayout.IsChecked != true;

var toolbar = new StackPanel
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Controls.DeferredContentControl\Dock.Controls.DeferredContentControl.csproj" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
3 changes: 0 additions & 3 deletions samples/DockFigmaSample/App.axaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,5 @@ public override void OnFrameworkInitializationCompleted()
}

base.OnFrameworkInitializationCompleted();
#if DEBUG
this.AttachDevTools();
#endif
}
}
1 change: 0 additions & 1 deletion samples/DockFigmaSample/DockFigmaSample.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.ReactiveUI.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />
<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model.ReactiveUI.Services\Dock.Model.ReactiveUI.Services.csproj" />
<ProjectReference Include="..\..\src\Dock.Model.ReactiveUI\Dock.Model.ReactiveUI.csproj" />
Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Program.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System;
using Avalonia;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<UserControl x:Class="DockFigmaSample.Views.Documents.CanvasDocumentView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:rxui="clr-namespace:Avalonia.ReactiveUI;assembly=Avalonia.ReactiveUI"
xmlns:rxui="clr-namespace:ReactiveUI.Avalonia;assembly=ReactiveUI.Avalonia"
xmlns:vm="using:DockFigmaSample.ViewModels.Documents"
x:DataType="vm:CanvasDocumentViewModel" x:CompileBindings="True">
<Grid>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Documents;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Documents;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Documents;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Documents;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Documents;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Documents;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Documents;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Documents;

Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Views/HomeView.axaml.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views;

Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Views/MainWindow.axaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Window xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:rxui="clr-namespace:Avalonia.ReactiveUI;assembly=Avalonia.ReactiveUI"
xmlns:rxui="clr-namespace:ReactiveUI.Avalonia;assembly=ReactiveUI.Avalonia"
xmlns:vm="using:DockFigmaSample.ViewModels"
x:Class="DockFigmaSample.Views.MainWindow"
x:DataType="vm:MainWindowViewModel" x:CompileBindings="True"
Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Views/MainWindow.axaml.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<UserControl x:Class="DockFigmaSample.Views.Tools.InspectorToolView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:rxui="clr-namespace:Avalonia.ReactiveUI;assembly=Avalonia.ReactiveUI"
xmlns:rxui="clr-namespace:ReactiveUI.Avalonia;assembly=ReactiveUI.Avalonia"
xmlns:vm="using:DockFigmaSample.ViewModels.Tools"
x:DataType="vm:InspectorToolViewModel" x:CompileBindings="True">
<Border Background="{DynamicResource PanelBackgroundBrush}" Padding="12">
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels.Tools;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views.Tools;

Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Views/WorkspaceView.axaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<UserControl x:Class="DockFigmaSample.Views.WorkspaceView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:rxui="clr-namespace:Avalonia.ReactiveUI;assembly=Avalonia.ReactiveUI"
xmlns:rxui="clr-namespace:ReactiveUI.Avalonia;assembly=ReactiveUI.Avalonia"
xmlns:vm="using:DockFigmaSample.ViewModels"
x:DataType="vm:WorkspaceViewModel" x:CompileBindings="True">
<Grid RowDefinitions="Auto,*,Auto">
Expand Down
2 changes: 1 addition & 1 deletion samples/DockFigmaSample/Views/WorkspaceView.axaml.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Avalonia.Markup.Xaml;
using DockFigmaSample.ViewModels;
using Avalonia.ReactiveUI;
using ReactiveUI.Avalonia;

namespace DockFigmaSample.Views;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
<Import Project="..\..\build\Avalonia.props" />
<Import Project="..\..\build\Avalonia.Themes.Fluent.props" />
<Import Project="..\..\build\Avalonia.Desktop.props" />
<Import Project="..\..\build\Avalonia.Diagnostics.props" />

<ItemGroup>
<ProjectReference Include="..\..\src\Dock.Model\Dock.Model.csproj" />
Expand Down
Loading
Loading