Saxonite 1.2.11.3. Sandtrap.
This commit is contained in:
@@ -0,0 +1,139 @@
|
||||
#if ANDROID
|
||||
using Microsoft.Maui.Controls.Compatibility.Platform.Android;
|
||||
#endif
|
||||
using Sarand.Net.Mobile.Maui.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Sarand.Net.Mobile.Maui.Handlers
|
||||
{
|
||||
//========================================================================
|
||||
// Ref. https://dev.to/vhugogarcia/remove-entry-and-picker-borders-in-net-maui-2pk2
|
||||
// Ref. https://github.com/dotnet/maui/issues/7906
|
||||
public static class SamFormHandler
|
||||
{
|
||||
//--------------------------------------------------------------------
|
||||
// Definitions.
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
/// <summary>
|
||||
/// Remove borders around entry and picker controls.
|
||||
/// <para>Also make background transparent.</para>
|
||||
/// </summary>
|
||||
public static void AssignControlHandlers()
|
||||
{
|
||||
//---------------------------------------------------------------
|
||||
// Entry handler.
|
||||
Microsoft.Maui.Handlers.EntryHandler.Mapper.AppendToMapping("SamEntryHandler", (handler, view) =>
|
||||
{
|
||||
if ((view as SamEntry)?.NativeNoBorder ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.Layer.BorderWidth = 0;
|
||||
handler.PlatformView.BorderStyle = UIKit.UITextBorderStyle.None;
|
||||
#elif WINDOWS
|
||||
handler.PlatformView.BorderThickness = new Microsoft.UI.Xaml.Thickness() { Bottom = 0, Top = 0, Left = 0, Right = 0, };
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeNoUnderline ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeBackgroundClear ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.Background = null;
|
||||
handler.PlatformView.SetBackgroundColor(Android.Graphics.Color.Transparent);
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.BackgroundColor = UIKit.UIColor.Clear;
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
});
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Editor handler.
|
||||
Microsoft.Maui.Handlers.EditorHandler.Mapper.AppendToMapping("SamEditorHandler", (handler, view) =>
|
||||
{
|
||||
if ((view as SamEditor)?.NativeNoBorder ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.Layer.BorderWidth = 0;
|
||||
//handler.PlatformView.BorderStyle = UIKit.UITextViewBorderStyle.None;
|
||||
#elif WINDOWS
|
||||
handler.PlatformView.BorderThickness = new Microsoft.UI.Xaml.Thickness() { Bottom = 0, Top = 0, Left = 0, Right = 0, };
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeNoUnderline ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeBackgroundClear ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.Background = null;
|
||||
handler.PlatformView.SetBackgroundColor(Android.Graphics.Color.Transparent);
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.BackgroundColor = UIKit.UIColor.Clear;
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
});
|
||||
|
||||
//---------------------------------------------------------------
|
||||
// Picker handler.
|
||||
Microsoft.Maui.Handlers.PickerHandler.Mapper.AppendToMapping("Borderless", (handler, view) =>
|
||||
{
|
||||
if ((view as SamEditor)?.NativeNoBorder ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.Layer.BorderWidth = 0;
|
||||
handler.PlatformView.BorderStyle = UIKit.UITextBorderStyle.None;
|
||||
#elif WINDOWS
|
||||
handler.PlatformView.BorderThickness = new Microsoft.UI.Xaml.Thickness() { Bottom = 0, Top = 0, Left = 0, Right = 0, };
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeNoUnderline ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.BackgroundTintList = Android.Content.Res.ColorStateList.ValueOf(Colors.Transparent.ToAndroid());
|
||||
#elif IOS || MACCATALYST
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
if ((view as SamEntry)?.NativeBackgroundClear ?? false)
|
||||
{
|
||||
#if ANDROID
|
||||
handler.PlatformView.Background = null;
|
||||
handler.PlatformView.SetBackgroundColor(Android.Graphics.Color.Transparent);
|
||||
#elif IOS || MACCATALYST
|
||||
handler.PlatformView.BackgroundColor = UIKit.UIColor.Clear;
|
||||
#elif WINDOWS
|
||||
#endif
|
||||
}
|
||||
});
|
||||
|
||||
//---------------------------------------------------------------
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
}
|
||||
//========================================================================
|
||||
}
|
||||
Reference in New Issue
Block a user