From b18d5a11f3b37f8e4427fb37670ad1938c337fb3 Mon Sep 17 00:00:00 2001 From: Dave Friedel Date: Sun, 28 Dec 2025 09:26:04 -0500 Subject: [PATCH] RC1: Full XAML support with BindableProperty, VSM, and data binding MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 1 - BindableProperty Foundation: - SkiaLayoutView: Convert Spacing, Padding, ClipToBounds to BindableProperty - SkiaStackLayout: Convert Orientation to BindableProperty - SkiaGrid: Convert RowSpacing, ColumnSpacing to BindableProperty - SkiaCollectionView: Convert all 12 properties to BindableProperty - SkiaShell: Convert all 12 properties to BindableProperty Phase 2 - Visual State Manager: - Add VSM integration to SkiaImageButton pointer handlers - Support Normal, PointerOver, Pressed, Disabled states Phase 3-4 - XAML/Data Binding: - Type converters for SKColor, SKRect, SKSize, SKPoint - BindingContext propagation through visual tree - Full handler registration for all MAUI controls Documentation: - README: Add styling/binding examples, update roadmap - Add RC1-ROADMAP.md with implementation details Version: 1.0.0-rc.1 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- OpenMaui.Controls.Linux.csproj | 6 +- README.md | 50 +++++ Views/SkiaCollectionView.cs | 361 ++++++++++++++++++++++----------- Views/SkiaImageButton.cs | 8 + Views/SkiaLayoutView.cs | 110 +++++++++- Views/SkiaShell.cs | 235 +++++++++++++++++---- docs/RC1-ROADMAP.md | 234 +++++++++++++++++++++ 7 files changed, 844 insertions(+), 160 deletions(-) create mode 100644 docs/RC1-ROADMAP.md diff --git a/OpenMaui.Controls.Linux.csproj b/OpenMaui.Controls.Linux.csproj index 7ae1bf9..c3d5c70 100644 --- a/OpenMaui.Controls.Linux.csproj +++ b/OpenMaui.Controls.Linux.csproj @@ -9,10 +9,12 @@ true true $(NoWarn);CS0108;CS1591;CS0618 + false + false OpenMaui.Controls.Linux - 1.0.0-preview.4 + 1.0.0-rc.1 MarketAlly LLC, David H. Friedel Jr. MarketAlly LLC OpenMaui Linux Controls @@ -23,7 +25,7 @@ https://git.marketally.com/open-maui/maui-linux.git git maui;linux;desktop;skia;gui;cross-platform;dotnet;x11;wayland;openmaui - Preview 4: Fixed handler rendering for layouts, text wrapping, and scrollbar measurement issues. + RC1: Full XAML support with BindableProperty for all controls, Visual State Manager integration, data binding, and XAML styles. README.md icon.png false diff --git a/README.md b/README.md index 00e3ac5..59a7eb6 100644 --- a/README.md +++ b/README.md @@ -210,6 +210,52 @@ We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) f └─────────────────────────────────────────────────┘ ``` +## Styling and Data Binding + +OpenMaui supports the full MAUI styling and data binding infrastructure: + +### XAML Styles +```xml + + + #5C6BC0 + + + +``` + +### Data Binding +```xml +