Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c6a3f4acc4 | |||
| 8a5ad459ed |
@@ -50,7 +50,7 @@ jobs:
|
|||||||
for pkg in ./nupkg/*.nupkg; do
|
for pkg in ./nupkg/*.nupkg; do
|
||||||
dotnet nuget push "$pkg" \
|
dotnet nuget push "$pkg" \
|
||||||
--api-key ${{ secrets.GITEATOKEN }} \
|
--api-key ${{ secrets.GITEATOKEN }} \
|
||||||
--source https://git.marketally.com/api/packages/${{ gitea.repository_owner }}/nuget/index.json \
|
--source https://git.marketally.ai/api/packages/${{ gitea.repository_owner }}/nuget/index.json \
|
||||||
--skip-duplicate
|
--skip-duplicate
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
@@ -4,9 +4,9 @@ All notable changes to this project will be documented in this file.
|
|||||||
|
|
||||||
Version numbers are aligned with .NET / MAUI versions (e.g., OpenMaui 9.0.x targets .NET 9 / MAUI 9).
|
Version numbers are aligned with .NET / MAUI versions (e.g., OpenMaui 9.0.x targets .NET 9 / MAUI 9).
|
||||||
|
|
||||||
## [9.0.0] - 2026-03-06
|
## [9.0.40] - 2026-03-07
|
||||||
|
|
||||||
> Version realigned from 1.0.0 to match .NET 9 / MAUI 9.0.x versioning.
|
> Version aligned with MAUI 9.0.40. Previously released as 1.0.0.
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
- 35+ Skia-rendered controls: Button, Label, Entry, Editor, CheckBox, Switch, RadioButton, Slider, Stepper, Picker, DatePicker, TimePicker, SearchBar, Image, ImageButton, ProgressBar, ActivityIndicator, BoxView, Border, Frame, ScrollView, CollectionView, CarouselView, IndicatorView, SwipeView, RefreshView, GraphicsView, WebView, MenuBar
|
- 35+ Skia-rendered controls: Button, Label, Entry, Editor, CheckBox, Switch, RadioButton, Slider, Stepper, Picker, DatePicker, TimePicker, SearchBar, Image, ImageButton, ProgressBar, ActivityIndicator, BoxView, Border, Frame, ScrollView, CollectionView, CarouselView, IndicatorView, SwipeView, RefreshView, GraphicsView, WebView, MenuBar
|
||||||
@@ -42,7 +42,7 @@ Version numbers are aligned with .NET / MAUI versions (e.g., OpenMaui 9.0.x targ
|
|||||||
|
|
||||||
## [1.0.0] - 2026-03-06 [DEPRECATED]
|
## [1.0.0] - 2026-03-06 [DEPRECATED]
|
||||||
|
|
||||||
> Superseded by 9.0.0. Identical codebase, version renumbered to align with .NET/MAUI versioning.
|
> Superseded by 9.0.40. Identical codebase, version renumbered to align with MAUI versioning.
|
||||||
|
|
||||||
## [1.0.0-rc.1] - 2026-02-01
|
## [1.0.0-rc.1] - 2026-02-01
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Contributing to .NET MAUI Linux Platform
|
# Contributing to .NET MAUI Linux Platform
|
||||||
|
|
||||||
Thank you for your interest in contributing to the .NET MAUI Linux Platform! This project is developed and maintained by [MarketAlly Pte Ltd](https://marketally.com) under the leadership of David H. Friedel Jr.
|
Thank you for your interest in contributing to the .NET MAUI Linux Platform! This project is developed and maintained by [MarketAlly Pte Ltd](https://marketally.sg) under the leadership of David H. Friedel Jr.
|
||||||
|
|
||||||
This document provides guidelines and information for contributors.
|
This document provides guidelines and information for contributors.
|
||||||
|
|
||||||
|
|||||||
@@ -14,18 +14,18 @@
|
|||||||
|
|
||||||
<!-- NuGet Package Properties -->
|
<!-- NuGet Package Properties -->
|
||||||
<PackageId>OpenMaui.Controls.Linux</PackageId>
|
<PackageId>OpenMaui.Controls.Linux</PackageId>
|
||||||
<Version>9.0.0</Version>
|
<Version>9.0.40</Version>
|
||||||
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
|
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
|
||||||
<Company>MarketAlly Pte Ltd</Company>
|
<Company>MarketAlly Pte Ltd</Company>
|
||||||
<Product>OpenMaui Linux Controls</Product>
|
<Product>OpenMaui Linux Controls</Product>
|
||||||
<Description>Linux desktop support for .NET MAUI applications using SkiaSharp rendering. Supports X11 and Wayland display servers with 35+ controls, platform services, and accessibility support.</Description>
|
<Description>Linux desktop support for .NET MAUI applications using SkiaSharp rendering. Supports X11 and Wayland display servers with 35+ controls, platform services, and accessibility support.</Description>
|
||||||
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>
|
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>
|
||||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||||
<PackageProjectUrl>https://git.marketally.com/open-maui/maui-linux</PackageProjectUrl>
|
<PackageProjectUrl>https://git.marketally.ai/open-maui/maui-linux</PackageProjectUrl>
|
||||||
<RepositoryUrl>https://git.marketally.com/open-maui/maui-linux.git</RepositoryUrl>
|
<RepositoryUrl>https://git.marketally.ai/open-maui/maui-linux.git</RepositoryUrl>
|
||||||
<RepositoryType>git</RepositoryType>
|
<RepositoryType>git</RepositoryType>
|
||||||
<PackageTags>maui;linux;desktop;skia;gui;cross-platform;dotnet;x11;wayland;openmaui</PackageTags>
|
<PackageTags>maui;linux;desktop;skia;gui;cross-platform;dotnet;x11;wayland;openmaui</PackageTags>
|
||||||
<PackageReleaseNotes>9.0: Version aligned with .NET 9 / MAUI 9. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, Visual State Manager, data binding, XAML styles. 541 passing tests. Previously released as 1.0.0.</PackageReleaseNotes>
|
<PackageReleaseNotes>9.0.40: Version aligned with MAUI 9.0.40. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, Visual State Manager, data binding, XAML styles. 541 passing tests. Previously released as 1.0.0.</PackageReleaseNotes>
|
||||||
<PackageReadmeFile>README.md</PackageReadmeFile>
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
<PackageIcon>icon.png</PackageIcon>
|
<PackageIcon>icon.png</PackageIcon>
|
||||||
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
|
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>OpenMaui.Controls.Linux</id>
|
<id>OpenMaui.Controls.Linux</id>
|
||||||
<version>9.0.0</version>
|
<version>9.0.40</version>
|
||||||
<title>OpenMaui Linux Controls</title>
|
<title>OpenMaui Linux Controls</title>
|
||||||
<authors>MarketAlly Pte Ltd, David H. Friedel Jr.</authors>
|
<authors>MarketAlly Pte Ltd, David H. Friedel Jr.</authors>
|
||||||
<owners>MarketAlly Pte Ltd</owners>
|
<owners>MarketAlly Pte Ltd</owners>
|
||||||
<license type="expression">MIT</license>
|
<license type="expression">MIT</license>
|
||||||
<projectUrl>https://git.marketally.com/open-maui/maui-linux</projectUrl>
|
<projectUrl>https://git.marketally.ai/open-maui/maui-linux</projectUrl>
|
||||||
<iconUrl>https://git.marketally.com/open-maui/maui-linux/raw/branch/main/assets/icon.png</iconUrl>
|
<iconUrl>https://git.marketally.ai/open-maui/maui-linux/raw/branch/main/assets/icon.png</iconUrl>
|
||||||
<description>
|
<description>
|
||||||
Linux desktop support for .NET MAUI applications. This package enables running MAUI applications on Linux desktop environments using SkiaSharp for rendering.
|
Linux desktop support for .NET MAUI applications. This package enables running MAUI applications on Linux desktop environments using SkiaSharp for rendering.
|
||||||
|
|
||||||
@@ -24,11 +24,11 @@ Features:
|
|||||||
Developed by MarketAlly Pte Ltd. Lead Architect: David H. Friedel Jr.
|
Developed by MarketAlly Pte Ltd. Lead Architect: David H. Friedel Jr.
|
||||||
</description>
|
</description>
|
||||||
<releaseNotes>
|
<releaseNotes>
|
||||||
9.0: Version aligned with .NET 9 / MAUI 9. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, SkiaSharp rendering, X11 window management, 35+ controls, 18 platform services, accessibility support. 541 passing tests. Previously released as 1.0.0.
|
9.0.40: Version aligned with MAUI 9.0.40. 100% .NET MAUI API compliance - all public APIs use MAUI types. Full XAML support, SkiaSharp rendering, X11 window management, 35+ controls, 18 platform services, accessibility support. 541 passing tests. Previously released as 1.0.0.
|
||||||
</releaseNotes>
|
</releaseNotes>
|
||||||
<copyright>Copyright 2025-2026 MarketAlly Pte Ltd</copyright>
|
<copyright>Copyright 2025-2026 MarketAlly Pte Ltd</copyright>
|
||||||
<tags>maui linux desktop skia gui cross-platform dotnet openmaui</tags>
|
<tags>maui linux desktop skia gui cross-platform dotnet openmaui</tags>
|
||||||
<repository type="git" url="https://git.marketally.com/open-maui/maui-linux.git" />
|
<repository type="git" url="https://git.marketally.ai/open-maui/maui-linux.git" />
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<group targetFramework="net9.0">
|
<group targetFramework="net9.0">
|
||||||
<dependency id="Microsoft.Maui.Controls" version="9.0.40" />
|
<dependency id="Microsoft.Maui.Controls" version="9.0.40" />
|
||||||
|
|||||||
12
README.md
12
README.md
@@ -5,7 +5,7 @@ A comprehensive Linux platform implementation for .NET MAUI using SkiaSharp rend
|
|||||||
[](https://www.nuget.org/packages/OpenMaui.Controls.Linux)
|
[](https://www.nuget.org/packages/OpenMaui.Controls.Linux)
|
||||||
[](LICENSE)
|
[](LICENSE)
|
||||||
|
|
||||||
**Developed by [MarketAlly Pte Ltd](https://marketally.com)**
|
**Developed by [MarketAlly Pte Ltd](https://marketally.sg)**
|
||||||
**Lead Architect: David H. Friedel Jr.**
|
**Lead Architect: David H. Friedel Jr.**
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
@@ -135,12 +135,12 @@ sudo dnf install libX11-devel libXrandr-devel libXcursor-devel libXi-devel mesa-
|
|||||||
|
|
||||||
## Sample Applications
|
## Sample Applications
|
||||||
|
|
||||||
Full sample applications are available in the [maui-linux-samples](https://git.marketally.com/open-maui/maui-linux-samples) repository:
|
Full sample applications are available in the [maui-linux-samples](https://git.marketally.ai/open-maui/maui-linux-samples) repository:
|
||||||
|
|
||||||
| Sample | Description |
|
| Sample | Description |
|
||||||
|--------|-------------|
|
|--------|-------------|
|
||||||
| **[TodoApp](https://git.marketally.com/open-maui/maui-linux-samples/src/branch/main/TodoApp)** | Task manager with NavigationPage, XAML data binding, CollectionView |
|
| **[TodoApp](https://git.marketally.ai/open-maui/maui-linux-samples/src/branch/main/TodoApp)** | Task manager with NavigationPage, XAML data binding, CollectionView |
|
||||||
| **[ShellDemo](https://git.marketally.com/open-maui/maui-linux-samples/src/branch/main/ShellDemo)** | Control showcase with Shell navigation and flyout menu |
|
| **[ShellDemo](https://git.marketally.ai/open-maui/maui-linux-samples/src/branch/main/ShellDemo)** | Control showcase with Shell navigation and flyout menu |
|
||||||
|
|
||||||
## Quick Example
|
## Quick Example
|
||||||
|
|
||||||
@@ -179,7 +179,7 @@ app.Run();
|
|||||||
## Building from Source
|
## Building from Source
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://git.marketally.com/open-maui/maui-linux.git
|
git clone https://git.marketally.ai/open-maui/maui-linux.git
|
||||||
cd maui-linux
|
cd maui-linux
|
||||||
dotnet build
|
dotnet build
|
||||||
dotnet test
|
dotnet test
|
||||||
@@ -279,7 +279,7 @@ Copyright (c) 2025-2026 MarketAlly Pte Ltd. Licensed under the MIT License - see
|
|||||||
|
|
||||||
## Acknowledgments
|
## Acknowledgments
|
||||||
|
|
||||||
- [MarketAlly Pte Ltd](https://marketally.com) - Project development and maintenance
|
- [MarketAlly Pte Ltd](https://marketally.sg) - Project development and maintenance
|
||||||
- [SkiaSharp](https://github.com/mono/SkiaSharp) - 2D graphics library
|
- [SkiaSharp](https://github.com/mono/SkiaSharp) - 2D graphics library
|
||||||
- [.NET MAUI](https://github.com/dotnet/maui) - Cross-platform UI framework
|
- [.NET MAUI](https://github.com/dotnet/maui) - Cross-platform UI framework
|
||||||
- The .NET community
|
- The .NET community
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
// Licensed to the .NET Foundation under one or more agreements.
|
// Licensed to the .NET Foundation under one or more agreements.
|
||||||
// The .NET Foundation licenses this file to you under the MIT license.
|
// The .NET Foundation licenses this file to you under the MIT license.
|
||||||
|
|
||||||
|
using System.Collections.Concurrent;
|
||||||
using SkiaSharp;
|
using SkiaSharp;
|
||||||
|
|
||||||
namespace Microsoft.Maui.Platform.Linux.Services;
|
namespace Microsoft.Maui.Platform.Linux.Services;
|
||||||
@@ -81,7 +82,7 @@ public class FontFallbackManager
|
|||||||
|
|
||||||
// Cache for typeface lookups
|
// Cache for typeface lookups
|
||||||
private readonly Dictionary<string, SKTypeface?> _typefaceCache = new();
|
private readonly Dictionary<string, SKTypeface?> _typefaceCache = new();
|
||||||
private readonly Dictionary<(int codepoint, string preferredFont), SKTypeface?> _glyphCache = new();
|
private readonly ConcurrentDictionary<(int codepoint, string preferredFont), SKTypeface?> _glyphCache = new();
|
||||||
|
|
||||||
private FontFallbackManager()
|
private FontFallbackManager()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -224,7 +224,7 @@ public class VersionTrackingService : IVersionTracking
|
|||||||
{
|
{
|
||||||
var assembly = Assembly.GetEntryAssembly() ?? Assembly.GetExecutingAssembly();
|
var assembly = Assembly.GetEntryAssembly() ?? Assembly.GetExecutingAssembly();
|
||||||
var version = assembly.GetName().Version;
|
var version = assembly.GetName().Version;
|
||||||
return version != null ? $"{version.Major}.{version.Minor}.{version.Build}" : "9.0.0";
|
return version != null ? $"{version.Major}.{version.Minor}.{version.Build}" : "9.0.40";
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string GetAssemblyBuild()
|
private static string GetAssemblyBuild()
|
||||||
|
|||||||
@@ -304,4 +304,4 @@ jobs:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
*Developed by [MarketAlly Pte Ltd](https://marketally.com) • Lead Architect: David H. Friedel Jr.*
|
*Developed by [MarketAlly Pte Ltd](https://marketally.sg) • Lead Architect: David H. Friedel Jr.*
|
||||||
|
|||||||
@@ -79,13 +79,13 @@ See [CONTRIBUTING.md](../CONTRIBUTING.md) for details.
|
|||||||
|
|
||||||
| Milestone | .NET / MAUI | Target | Status |
|
| Milestone | .NET / MAUI | Target | Status |
|
||||||
|-----------|-------------|--------|--------|
|
|-----------|-------------|--------|--------|
|
||||||
| v1.0.0 (now v9.0.0) | .NET 9 / MAUI 9.0.x | Q1 2026 | ✅ Released |
|
| v9.0.40 | .NET 9 / MAUI 9.0.40 | Q1 2026 | ✅ Released |
|
||||||
| v9.0.x | .NET 9 / MAUI 9.0.x | Q1-Q2 2026 | 🔧 Maintenance |
|
| v9.0.x | .NET 9 / MAUI 9.0.x | Q1-Q2 2026 | 🔧 Maintenance |
|
||||||
| v10.0.0 | .NET 10 / MAUI 10.0.x | Q4 2026 | 📋 Planned |
|
| v10.0.0 | .NET 10 / MAUI 10.0.x | Q4 2026 | 📋 Planned |
|
||||||
|
|
||||||
## Feedback
|
## Feedback
|
||||||
|
|
||||||
- Issues: https://git.marketally.com/open-maui/maui-linux/issues
|
- Issues: https://git.marketally.ai/open-maui/maui-linux/issues
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<PackageType>Template</PackageType>
|
<PackageType>Template</PackageType>
|
||||||
<PackageVersion>9.0.0</PackageVersion>
|
<PackageVersion>9.0.40</PackageVersion>
|
||||||
<PackageId>OpenMaui.Linux.Templates</PackageId>
|
<PackageId>OpenMaui.Linux.Templates</PackageId>
|
||||||
<Title>OpenMaui Linux Project Templates</Title>
|
<Title>OpenMaui Linux Project Templates</Title>
|
||||||
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
|
<Authors>MarketAlly Pte Ltd, David H. Friedel Jr.</Authors>
|
||||||
@@ -13,7 +13,7 @@ Templates included:
|
|||||||
- openmaui-linux: Basic Linux app with code-based UI
|
- openmaui-linux: Basic Linux app with code-based UI
|
||||||
- openmaui-linux-xaml: Full XAML support with standard MAUI syntax</Description>
|
- openmaui-linux-xaml: Full XAML support with standard MAUI syntax</Description>
|
||||||
<PackageTags>dotnet-new;templates;maui;linux;desktop;openmaui;xaml</PackageTags>
|
<PackageTags>dotnet-new;templates;maui;linux;desktop;openmaui;xaml</PackageTags>
|
||||||
<PackageProjectUrl>https://git.marketally.com/open-maui/maui-linux</PackageProjectUrl>
|
<PackageProjectUrl>https://git.marketally.ai/open-maui/maui-linux</PackageProjectUrl>
|
||||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||||
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>
|
<Copyright>Copyright 2025-2026 MarketAlly Pte Ltd</Copyright>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user