Styles: add shared Typography/Scroll resources; add platform overrides (Desktop/Android/Browser) and load via App; switch icons to resource-based sizes and cap history text lines.
This commit is contained in:
parent
a212870d09
commit
7e40c1dc0b
8 changed files with 144 additions and 6 deletions
|
@ -5,6 +5,8 @@ using Avalonia;
|
|||
using Avalonia.Controls.ApplicationLifetimes;
|
||||
using Avalonia.Data.Core.Plugins;
|
||||
using Avalonia.Markup.Xaml;
|
||||
using Avalonia.Styling;
|
||||
using System;
|
||||
|
||||
namespace AdvancedCalculator;
|
||||
|
||||
|
@ -21,6 +23,40 @@ public partial class App : Application
|
|||
// Without this line you will get duplicate validations from both Avalonia and CT
|
||||
BindingPlugins.DataValidators.RemoveAt(0);
|
||||
|
||||
// Load platform-specific styles (typography, scrollbars overrides)
|
||||
try
|
||||
{
|
||||
var styles = Current?.Styles;
|
||||
if (styles is not null)
|
||||
{
|
||||
if (OperatingSystem.IsAndroid())
|
||||
{
|
||||
styles.Add(new StyleInclude(new Uri("avares://AdvancedCalculator/"))
|
||||
{
|
||||
Source = new Uri("avares://AdvancedCalculator.Android/Styles/Android.axaml")
|
||||
});
|
||||
}
|
||||
else if (OperatingSystem.IsBrowser())
|
||||
{
|
||||
styles.Add(new StyleInclude(new Uri("avares://AdvancedCalculator/"))
|
||||
{
|
||||
Source = new Uri("avares://AdvancedCalculator.Browser/Styles/Browser.axaml")
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
styles.Add(new StyleInclude(new Uri("avares://AdvancedCalculator/"))
|
||||
{
|
||||
Source = new Uri("avares://AdvancedCalculator.Desktop/Styles/Desktop.axaml")
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
// If a platform-specific style dictionary is missing, continue without failing.
|
||||
}
|
||||
|
||||
if (ApplicationLifetime is IClassicDesktopStyleApplicationLifetime desktop)
|
||||
{
|
||||
desktop.MainWindow = new MainWindow
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue