Browse Source

Rename MobileSandbox to Avalonia.SingleProjectSandbox (#15330)

* Define SupportedOSVersion variables shared between projects

* Rename MobileSandbox to Avalonia.SingleProjectSandbox
pull/15331/head
Max Katz 2 years ago
committed by GitHub
parent
commit
6f7a003c31
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      Avalonia.sln
  2. 18
      build/TargetFrameworks.props
  3. 2
      dirs.proj
  4. 13
      packages/Avalonia/AvaloniaSingleProject.targets
  5. 2
      samples/ControlCatalog.Android/ControlCatalog.Android.csproj
  6. 2
      samples/ControlCatalog.iOS/ControlCatalog.iOS.csproj
  7. 2
      samples/ControlCatalog.iOS/Info.plist
  8. 13
      samples/MobileSandbox/Platforms/Android/MainActivity.cs
  9. 21
      samples/MobileSandbox/Platforms/Desktop/Program.cs
  10. 20
      samples/MobileSandbox/Platforms/Tizen/Main.cs
  11. 16
      samples/MobileSandbox/Platforms/iOS/AppDelegate.cs
  12. 15
      samples/MobileSandbox/Platforms/iOS/Main.cs
  13. BIN
      samples/MobileSandbox/msbuild.binlog
  14. 2
      samples/SafeAreaDemo.Android/SafeAreaDemo.Android.csproj
  15. 2
      samples/SafeAreaDemo.iOS/Info.plist
  16. 2
      samples/SafeAreaDemo.iOS/SafeAreaDemo.iOS.csproj
  17. 4
      samples/SingleProjectSandbox/App.axaml
  18. 6
      samples/SingleProjectSandbox/App.axaml.cs
  19. 6
      samples/SingleProjectSandbox/MainView.axaml
  20. 2
      samples/SingleProjectSandbox/MainView.axaml.cs
  21. 7
      samples/SingleProjectSandbox/MainWindow.axaml
  22. 2
      samples/SingleProjectSandbox/MainWindow.axaml.cs
  23. 2
      samples/SingleProjectSandbox/Platforms/Android/AndroidManifest.xml
  24. 15
      samples/SingleProjectSandbox/Platforms/Android/MainActivity.cs
  25. 10
      samples/SingleProjectSandbox/Platforms/Browser/Program.cs
  26. 0
      samples/SingleProjectSandbox/Platforms/Browser/wwwroot/Logo.svg
  27. 0
      samples/SingleProjectSandbox/Platforms/Browser/wwwroot/app.css
  28. 0
      samples/SingleProjectSandbox/Platforms/Browser/wwwroot/favicon.ico
  29. 2
      samples/SingleProjectSandbox/Platforms/Browser/wwwroot/index.html
  30. 0
      samples/SingleProjectSandbox/Platforms/Browser/wwwroot/main.js
  31. 18
      samples/SingleProjectSandbox/Platforms/Desktop/Program.cs
  32. 0
      samples/SingleProjectSandbox/Platforms/Desktop/app.manifest
  33. 16
      samples/SingleProjectSandbox/Platforms/Tizen/Main.cs
  34. 0
      samples/SingleProjectSandbox/Platforms/Tizen/shared/res/Avalonia.png
  35. 2
      samples/SingleProjectSandbox/Platforms/Tizen/tizen-manifest.xml
  36. 24
      samples/SingleProjectSandbox/Platforms/iOS/AppDelegate.cs
  37. 0
      samples/SingleProjectSandbox/Platforms/iOS/Entitlements.plist
  38. 2
      samples/SingleProjectSandbox/Platforms/iOS/Info.plist
  39. 0
      samples/SingleProjectSandbox/Platforms/iOS/Resources/LaunchScreen.xib
  40. 6
      samples/SingleProjectSandbox/Platforms/macOS/Entitlements.plist
  41. 18
      samples/SingleProjectSandbox/Platforms/macOS/Info.plist
  42. 13
      samples/SingleProjectSandbox/Platforms/macOS/Program.cs
  43. 11
      samples/SingleProjectSandbox/SingleProjectSandbox.csproj
  44. 0
      samples/SingleProjectSandbox/runtimeconfig.template.json
  45. 2
      src/Android/Avalonia.Android/Avalonia.Android.csproj
  46. 3
      src/Tizen/Avalonia.Tizen/Avalonia.Tizen.csproj
  47. 6
      src/iOS/Avalonia.iOS/Avalonia.iOS.csproj

2
Avalonia.sln

@ -212,7 +212,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.DesignerSupport.Te
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "DevGenerators", "src\tools\DevGenerators\DevGenerators.csproj", "{1BBFAD42-B99E-47E0-B00A-A4BC6B6BB4BB}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MobileSandbox", "samples\MobileSandbox\MobileSandbox.csproj", "{3B8519C1-2F51-4F12-A348-120AB91D4532}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SingleProjectSandbox", "samples\SingleProjectSandbox\SingleProjectSandbox.csproj", "{3B8519C1-2F51-4F12-A348-120AB91D4532}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Avalonia.Browser", "src\Browser\Avalonia.Browser\Avalonia.Browser.csproj", "{4A39637C-9338-4925-A4DB-D072E292EC78}"
EndProject

18
build/TargetFrameworks.props

@ -2,9 +2,10 @@
<PropertyGroup>
<AvsCurrentTargetFramework>net8.0</AvsCurrentTargetFramework>
<AvsCurrentWindowsTargetFramework>$(AvsCurrentTargetFramework)-windows</AvsCurrentWindowsTargetFramework>
<AvsCurrentAndroidTargetFramework>$(AvsCurrentTargetFramework)-android34</AvsCurrentAndroidTargetFramework>
<AvsCurrentMacOSTargetFramework>$(AvsCurrentTargetFramework)-macos</AvsCurrentMacOSTargetFramework>
<AvsCurrentAndroidTargetFramework>$(AvsCurrentTargetFramework)-android34.0</AvsCurrentAndroidTargetFramework>
<AvsCurrentIOSTargetFramework>$(AvsCurrentTargetFramework)-ios17.0</AvsCurrentIOSTargetFramework>
<AvsCurrentTvOSTargetFramework>$(AvsCurrentTargetFramework)-tvos17</AvsCurrentTvOSTargetFramework>
<AvsCurrentTvOSTargetFramework>$(AvsCurrentTargetFramework)-tvos17.0</AvsCurrentTvOSTargetFramework>
<AvsCurrentBrowserTargetFramework>$(AvsCurrentTargetFramework)-browser</AvsCurrentBrowserTargetFramework>
<AvsCurrentTizenTargetFramework>$(AvsCurrentTargetFramework)-tizen</AvsCurrentTizenTargetFramework>
</PropertyGroup>
@ -12,4 +13,17 @@
<AvsLegacyTargetFrameworks>net6.0</AvsLegacyTargetFrameworks>
<AvsLegacyWindowsTargetFrameworks>net6.0-windows</AvsLegacyWindowsTargetFrameworks>
</PropertyGroup>
<PropertyGroup>
<!-- Keep in sync with AvaloniaSingleProject.targets -->
<!-- Min version is defined here, but target version is defined in AvsCurrentIOSTargetFramework. -->
<AvsMinSupportedIOSVersion>13.0</AvsMinSupportedIOSVersion>
<AvsMinSupportedTvOSVersion>13.0</AvsMinSupportedTvOSVersion>
<AvsMinSupportedMacCatalystVersion>13.1</AvsMinSupportedMacCatalystVersion>
<AvsMinSupportedTizenVersion>6.5</AvsMinSupportedTizenVersion>
<AvsMinSupportedAndroidVersion>21.0</AvsMinSupportedAndroidVersion>
<!-- Desktop OS min version is not set in any of ours backends, but only used in some samples. -->
<!-- Avalonia technically supports 10.12. -->
<AvsMinSupportedMacOsVersion>10.15</AvsMinSupportedMacOsVersion>
</PropertyGroup>
</Project>

2
dirs.proj

@ -14,7 +14,7 @@
<ProjectReference Remove="samples/*.Browser/*.csproj" />
<ProjectReference Remove="samples/*.Blazor/*.csproj" />
<ProjectReference Remove="samples/*.Tizen/*.csproj" />
<ProjectReference Remove="samples/MobileSandbox/*.csproj" />
<ProjectReference Remove="samples/SingleProjectSandbox/*.csproj" />
<ProjectReference Remove="samples/ControlCatalog.Desktop/*.*proj" />
</ItemGroup>

13
packages/Avalonia/AvaloniaSingleProject.targets

@ -25,9 +25,6 @@
AND (('$(AvaloniaSingleProjectTreatSharedAsDesktop)' == 'true' AND $([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == '')
OR ('$(AvaloniaSingleProjectTreatWindowsAsShared)' == 'true' AND $([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'windows'))">
<_AvaloniaDesktopTarget>true</_AvaloniaDesktopTarget>
<_AvaloniaWindowsTarget>true</_AvaloniaWindowsTarget>
<_AvaloniaMacOSTarget>true</_AvaloniaMacOSTarget>
<_AvaloniaLinuxTarget>true</_AvaloniaLinuxTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(_AvaloniaWindowsTarget)' == 'true' ">
@ -95,6 +92,16 @@
<MauiPlatformSpecificFolder Include="$(DesktopProjectFolder)" TargetPlatformIdentifier="" />
</ItemGroup>
<PropertyGroup Condition="'$(SupportedOSPlatformVersion)' == '' AND '$(AvaloniaSingleProject)' == 'true'">
<!-- Keep in sync with TargetFrameworks.props -->
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'tvos'">13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'macos'">10.15</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">13.1</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'">21.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'tizen'">6.5</SupportedOSPlatformVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(_AvaloniaAndroidTarget)' == 'true' ">
<AndroidManifest Condition=" Exists('$(AndroidProjectFolder)AndroidManifest.xml') ">$(AndroidProjectFolder)AndroidManifest.xml</AndroidManifest>
<MonoAndroidResourcePrefix>$(AndroidProjectFolder)Resources</MonoAndroidResourcePrefix>

2
samples/ControlCatalog.Android/ControlCatalog.Android.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>$(AvsCurrentAndroidTargetFramework)</TargetFramework>
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion>$(AvsMinSupportedAndroidVersion)</SupportedOSPlatformVersion>
<OutputType>Exe</OutputType>
<Nullable>enable</Nullable>
<ApplicationId>com.Avalonia.ControlCatalog</ApplicationId>

2
samples/ControlCatalog.iOS/ControlCatalog.iOS.csproj

@ -4,7 +4,7 @@
<ProvisioningType>manual</ProvisioningType>
<TargetFramework>$(AvsCurrentIOSTargetFramework)</TargetFramework>
<!-- <TargetFramework>$(AvsCurrentTvOSTargetFramework)</TargetFramework>-->
<SupportedOSPlatformVersion>13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion>$(AvsMinSupportedIOSVersion)</SupportedOSPlatformVersion>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\iOS\Avalonia.iOS\Avalonia.iOS.csproj" />

2
samples/ControlCatalog.iOS/Info.plist

@ -12,8 +12,6 @@
<string>1.0</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
<string>13.0</string>
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>

13
samples/MobileSandbox/Platforms/Android/MainActivity.cs

@ -1,13 +0,0 @@
using System;
using Android.App;
using Android.Content.PM;
using Android.OS;
using Avalonia;
using Avalonia.Android;
namespace MobileSandbox;
[Activity(Label = "MobileSandbox.Android", Theme = "@style/Theme.AppCompat.NoActionBar", MainLauncher = true, ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.ScreenSize)]
public class MainActivity : AvaloniaMainActivity<App>
{
}

21
samples/MobileSandbox/Platforms/Desktop/Program.cs

@ -1,21 +0,0 @@
using System;
using Avalonia;
namespace MobileSandbox.Desktop
{
static class Program
{
[STAThread]
static int Main(string[] args) =>
BuildAvaloniaApp()
.StartWithClassicDesktopLifetime(args);
/// <summary>
/// This method is needed for IDE previewer infrastructure
/// </summary>
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>()
.UsePlatformDetect()
.LogToTrace();
}
}

20
samples/MobileSandbox/Platforms/Tizen/Main.cs

@ -1,20 +0,0 @@
using System;
using Avalonia;
using Avalonia.Tizen;
using ElmSharp;
using SkiaSharp;
using Tizen.Applications;
namespace MobileSandbox;
class Program : NuiTizenApplication<App>
{
protected override AppBuilder CustomizeAppBuilder(AppBuilder builder) =>
base.CustomizeAppBuilder(builder);
static void Main(string[] args)
{
var app = new Program();
app.Run(args);
}
}

16
samples/MobileSandbox/Platforms/iOS/AppDelegate.cs

@ -1,16 +0,0 @@
using Foundation;
using UIKit;
using Avalonia;
using Avalonia.Controls;
using Avalonia.iOS;
namespace MobileSandbox
{
// The UIApplicationDelegate for the application. This class is responsible for launching the
// User Interface of the application, as well as listening (and optionally responding) to
// application events from iOS.
[Register("AppDelegate")]
public partial class AppDelegate : AvaloniaAppDelegate<App>
{
}
}

15
samples/MobileSandbox/Platforms/iOS/Main.cs

@ -1,15 +0,0 @@
using UIKit;
namespace MobileSandbox.iOS
{
public class Application
{
// This is the main entry point of the application.
static void Main(string[] args)
{
// if you want to use a different Application Delegate class from "AppDelegate"
// you can specify it here.
UIApplication.Main(args, null, typeof(AppDelegate));
}
}
}

BIN
samples/MobileSandbox/msbuild.binlog

Binary file not shown.

2
samples/SafeAreaDemo.Android/SafeAreaDemo.Android.csproj

@ -2,7 +2,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>$(AvsCurrentAndroidTargetFramework)</TargetFramework>
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion>$(AvsMinSupportedAndroidVersion)</SupportedOSPlatformVersion>
<Nullable>enable</Nullable>
<ApplicationId>com.avalonia.safeareademo</ApplicationId>
<ApplicationVersion>1</ApplicationVersion>

2
samples/SafeAreaDemo.iOS/Info.plist

@ -12,8 +12,6 @@
<string>1.0</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
<string>13.0</string>
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>

2
samples/SafeAreaDemo.iOS/SafeAreaDemo.iOS.csproj

@ -2,7 +2,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>$(AvsCurrentIOSTargetFramework)</TargetFramework>
<SupportedOSPlatformVersion>13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion>$(AvsMinSupportedIOSVersion)</SupportedOSPlatformVersion>
<ProvisioningType>manual</ProvisioningType>
<Nullable>enable</Nullable>
</PropertyGroup>

4
samples/MobileSandbox/App.axaml → samples/SingleProjectSandbox/App.axaml

@ -1,7 +1,7 @@
<Application xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Name="Mobile Sandbox"
x:Class="MobileSandbox.App">
Name="Single Project Sandbox"
x:Class="SingleProjectSandbox.App">
<Application.Styles>
<FluentTheme />
</Application.Styles>

6
samples/MobileSandbox/App.axaml.cs → samples/SingleProjectSandbox/App.axaml.cs

@ -2,10 +2,14 @@ using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
namespace MobileSandbox;
namespace SingleProjectSandbox;
public class App : Application
{
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>()
.LogToTrace();
public override void Initialize()
{
AvaloniaXamlLoader.Load(this);

6
samples/MobileSandbox/MainView.axaml → samples/SingleProjectSandbox/MainView.axaml

@ -1,8 +1,8 @@
<UserControl x:Class="MobileSandbox.MainView"
<UserControl x:Class="SingleProjectSandbox.MainView"
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mobileSandbox="using:MobileSandbox"
x:DataType="mobileSandbox:MainView">
xmlns:local="using:SingleProjectSandbox"
x:DataType="local:MainView">
<StackPanel Margin="100 50" Spacing="50">
<TextBlock Text="Login" Foreground="White" />
<TextBox TextInputOptions.Multiline="True" AcceptsReturn="True" Watermark="Text" Height="200" TextWrapping="Wrap"/>

2
samples/MobileSandbox/MainView.axaml.cs → samples/SingleProjectSandbox/MainView.axaml.cs

@ -3,7 +3,7 @@ using System.Windows.Input;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
namespace MobileSandbox;
namespace SingleProjectSandbox;
public partial class MainView : UserControl
{

7
samples/MobileSandbox/MainWindow.axaml → samples/SingleProjectSandbox/MainWindow.axaml

@ -1,11 +1,10 @@
<Window xmlns="https://github.com/avaloniaui"
xmlns:local="clr-namespace:MobileSandbox"
xmlns:local="using:SingleProjectSandbox"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
CanResize="False"
Width="720" Height="1280"
Title="Mobile Sandbox"
Icon="/Assets/test_icon.ico"
Title="Single Project Sandbox"
WindowStartupLocation="CenterScreen"
x:Class="MobileSandbox.MainWindow">
x:Class="SingleProjectSandbox.MainWindow">
<local:MainView />
</Window>

2
samples/MobileSandbox/MainWindow.axaml.cs → samples/SingleProjectSandbox/MainWindow.axaml.cs

@ -1,7 +1,7 @@
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
namespace MobileSandbox;
namespace SingleProjectSandbox;
public partial class MainWindow : Window
{

2
samples/MobileSandbox/Platforms/Android/AndroidManifest.xml → samples/SingleProjectSandbox/Platforms/Android/AndroidManifest.xml

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="auto">
<application android:label="MobileSandbox.Android"></application>
<application android:label="SingleProjectSandbox.Android"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>

15
samples/SingleProjectSandbox/Platforms/Android/MainActivity.cs

@ -0,0 +1,15 @@
using Android.App;
using Android.Content.PM;
using Avalonia;
using Avalonia.Android;
namespace SingleProjectSandbox;
[Activity(Label = "SingleProjectSandbox.Android", Theme = "@style/Theme.AppCompat.NoActionBar", MainLauncher = true, ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.ScreenSize)]
public class MainActivity : AvaloniaMainActivity<App>
{
protected override AppBuilder CreateAppBuilder()
{
return App.BuildAvaloniaApp().UseAndroid();
}
}

10
samples/MobileSandbox/Platforms/Browser/Program.cs → samples/SingleProjectSandbox/Platforms/Browser/Program.cs

@ -1,19 +1,15 @@
using System.Runtime.Versioning;
using System.Threading.Tasks;
using Avalonia;
using Avalonia.Browser;
using MobileSandbox;
using SingleProjectSandbox;
[assembly:SupportedOSPlatform("browser")]
internal partial class Program
internal static class Program
{
public static async Task Main(string[] args)
{
await BuildAvaloniaApp()
await App.BuildAvaloniaApp()
.StartBrowserAppAsync("out");
}
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>();
}

0
samples/MobileSandbox/Platforms/Browser/wwwroot/Logo.svg → samples/SingleProjectSandbox/Platforms/Browser/wwwroot/Logo.svg

Before

Width:  |  Height:  |  Size: 708 B

After

Width:  |  Height:  |  Size: 708 B

0
samples/MobileSandbox/Platforms/Browser/wwwroot/app.css → samples/SingleProjectSandbox/Platforms/Browser/wwwroot/app.css

0
samples/MobileSandbox/Platforms/Browser/wwwroot/favicon.ico → samples/SingleProjectSandbox/Platforms/Browser/wwwroot/favicon.ico

Before

Width:  |  Height:  |  Size: 172 KiB

After

Width:  |  Height:  |  Size: 172 KiB

2
samples/MobileSandbox/Platforms/Browser/wwwroot/index.html → samples/SingleProjectSandbox/Platforms/Browser/wwwroot/index.html

@ -2,7 +2,7 @@
<html>
<head>
<title>MobileSandbox.Browser</title>
<title>SingleProjectSandbox.Browser</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="/" />

0
samples/MobileSandbox/Platforms/Browser/wwwroot/main.js → samples/SingleProjectSandbox/Platforms/Browser/wwwroot/main.js

18
samples/SingleProjectSandbox/Platforms/Desktop/Program.cs

@ -0,0 +1,18 @@
using System;
using Avalonia;
namespace SingleProjectSandbox;
internal static class Program
{
[STAThread]
static int Main(string[] args) =>
BuildAvaloniaApp()
.StartWithClassicDesktopLifetime(args);
/// <summary>
/// This method is needed for IDE previewer infrastructure
/// </summary>
public static AppBuilder BuildAvaloniaApp()
=> App.BuildAvaloniaApp().UsePlatformDetect();
}

0
samples/MobileSandbox/Platforms/Desktop/app.manifest → samples/SingleProjectSandbox/Platforms/Desktop/app.manifest

16
samples/SingleProjectSandbox/Platforms/Tizen/Main.cs

@ -0,0 +1,16 @@
using Avalonia;
using Avalonia.Tizen;
namespace SingleProjectSandbox;
internal class Program : NuiTizenApplication<App>
{
protected override AppBuilder CreateAppBuilder() =>
App.BuildAvaloniaApp().UseTizen();
internal static void Main(string[] args)
{
var app = new Program();
app.Run(args);
}
}

0
samples/MobileSandbox/Platforms/Tizen/shared/res/Avalonia.png → samples/SingleProjectSandbox/Platforms/Tizen/shared/res/Avalonia.png

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

2
samples/MobileSandbox/Platforms/Tizen/tizen-manifest.xml → samples/SingleProjectSandbox/Platforms/Tizen/tizen-manifest.xml

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest package="com.avalonia.control-catalog" version="1.0.0" api-version="8.0" xmlns="http://tizen.org/ns/packages">
<profile name="common" />
<ui-application appid="com.avalonia.mobilesandbox" exec="MobileSandbox.dll" multiple="false" nodisplay="false" taskmanage="true" type="dotnet" hw-acceleration="on" launch_mode="single">
<ui-application appid="com.avalonia.SingleProjectSandbox" exec="SingleProjectSandbox.dll" multiple="false" nodisplay="false" taskmanage="true" type="dotnet" hw-acceleration="on" launch_mode="single">
<label>Avalonia</label>
<icon>Avalonia.png</icon>
<metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />

24
samples/SingleProjectSandbox/Platforms/iOS/AppDelegate.cs

@ -0,0 +1,24 @@
using Foundation;
using Avalonia;
using Avalonia.iOS;
using UIKit;
namespace SingleProjectSandbox;
// The UIApplicationDelegate for the application. This class is responsible for launching the
// User Interface of the application, as well as listening (and optionally responding) to
// application events from iOS.
[Register("AppDelegate")]
public class AppDelegate : AvaloniaAppDelegate<App>
{
protected override AppBuilder CreateAppBuilder() =>
App.BuildAvaloniaApp().UseiOS();
// This is the main entry point of the application.
internal static void Main(string[] args)
{
// if you want to use a different Application Delegate class from "AppDelegate"
// you can specify it here.
UIApplication.Main(args, null, typeof(AppDelegate));
}
}

0
samples/MobileSandbox/Platforms/iOS/Entitlements.plist → samples/SingleProjectSandbox/Platforms/iOS/Entitlements.plist

2
samples/MobileSandbox/Platforms/iOS/Info.plist → samples/SingleProjectSandbox/Platforms/iOS/Info.plist

@ -12,8 +12,6 @@
<string>1.0</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
<string>13.0</string>
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>

0
samples/MobileSandbox/Platforms/iOS/Resources/LaunchScreen.xib → samples/SingleProjectSandbox/Platforms/iOS/Resources/LaunchScreen.xib

6
samples/SingleProjectSandbox/Platforms/macOS/Entitlements.plist

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>

18
samples/SingleProjectSandbox/Platforms/macOS/Info.plist

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>

13
samples/SingleProjectSandbox/Platforms/macOS/Program.cs

@ -0,0 +1,13 @@
using Avalonia;
namespace SingleProjectSandbox;
internal static class Program
{
internal static int Main(string[] args) =>
App.BuildAvaloniaApp()
.UseAvaloniaNative()
.UseSkia()
.StartWithClassicDesktopLifetime(args);
}

11
samples/MobileSandbox/MobileSandbox.csproj → samples/SingleProjectSandbox/SingleProjectSandbox.csproj

@ -1,16 +1,19 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net8.0-android;net8.0-browser;net8.0-ios</TargetFrameworks>
<TargetFrameworks>$(AvsCurrentTargetFramework);$(AvsCurrentAndroidTargetFramework);$(AvsCurrentBrowserTargetFramework)</TargetFrameworks>
<TargetFrameworks Condition="'$(IncludeIOSTargetSamples)' == 'true'">$(TargetFrameworks);$(AvsCurrentIOSTargetFramework)</TargetFrameworks>
<TargetFrameworks Condition="'$(IncludeMacTargetSamples)' == 'true'">$(TargetFrameworks);$(AvsCurrentMacOSTargetFramework)</TargetFrameworks>
<TargetFrameworks Condition="'$(IncludeTizenTargetSamples)' == 'true'">$(TargetFrameworks);$(AvsCurrentTizenTargetFramework)</TargetFrameworks>
<OutputType>Exe</OutputType>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<Nullable>enable</Nullable>
<IncludeAvaloniaGenerators>true</IncludeAvaloniaGenerators>
</PropertyGroup>
<PropertyGroup>
<AvaloniaSingleProject>true</AvaloniaSingleProject>
<ApplicationTitle>Mobile Sandbox</ApplicationTitle>
<ApplicationId>Avalonia.MobileSandbox</ApplicationId>
<ApplicationTitle>Single Project Sandbox</ApplicationTitle>
<ApplicationId>Avalonia.SingleProjectSandbox</ApplicationId>
</PropertyGroup>
<ItemGroup>

0
samples/MobileSandbox/runtimeconfig.template.json → samples/SingleProjectSandbox/runtimeconfig.template.json

2
src/Android/Avalonia.Android/Avalonia.Android.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>$(AvsCurrentAndroidTargetFramework)</TargetFramework>
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion>$(AvsMinSupportedAndroidVersion)</SupportedOSPlatformVersion>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<DebugType>portable</DebugType>
<AndroidResgenNamespace>Avalonia.Android.Internal</AndroidResgenNamespace>

3
src/Tizen/Avalonia.Tizen/Avalonia.Tizen.csproj

@ -2,8 +2,8 @@
<PropertyGroup>
<TargetFramework>$(AvsCurrentTizenTargetFramework)</TargetFramework>
<SupportedOSPlatformVersion>$(AvsMinSupportedTizenVersion)</SupportedOSPlatformVersion>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
@ -13,4 +13,5 @@
<Import Project="..\..\..\build\DevAnalyzers.props" />
<Import Project="..\..\..\build\TrimmingEnable.props" />
<Import Project="..\..\..\build\NullableEnable.props" />
</Project>

6
src/iOS/Avalonia.iOS/Avalonia.iOS.csproj

@ -1,10 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(AvsCurrentIOSTargetFramework);$(AvsCurrentTvOSTargetFramework)</TargetFrameworks>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'tvos'">13.0</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">$(AvsMinSupportedIOSVersion)</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'tvos'">$(AvsMinSupportedTvOSVersion)</SupportedOSPlatformVersion>
<!-- Not yet enabled as a target framework -->
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">13.1</SupportedOSPlatformVersion>
<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'maccatalyst'">$(AvsMinSupportedMacCatalystVersion)</SupportedOSPlatformVersion>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<!-- Compatibility attributes are pretty much broken for iOS-like platforms. Verify by hand. -->

Loading…
Cancel
Save