mirror of
https://github.com/bitwarden/android.git
synced 2024-12-27 11:28:28 +03:00
49 lines
1.4 KiB
C#
49 lines
1.4 KiB
C#
|
using System;
|
|||
|
using System.ComponentModel;
|
|||
|
using Bit.Android.Controls;
|
|||
|
using Bit.App.Controls;
|
|||
|
using Xamarin.Forms;
|
|||
|
using Xamarin.Forms.Platform.Android;
|
|||
|
|
|||
|
[assembly: ExportRenderer(typeof(ExtendedPicker), typeof(ExtendedPickerRenderer))]
|
|||
|
namespace Bit.Android.Controls
|
|||
|
{
|
|||
|
public class ExtendedPickerRenderer : PickerRenderer
|
|||
|
{
|
|||
|
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
|
|||
|
{
|
|||
|
base.OnElementChanged(e);
|
|||
|
|
|||
|
var view = (ExtendedPicker)Element;
|
|||
|
|
|||
|
SetBorder(view);
|
|||
|
}
|
|||
|
|
|||
|
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
|
|||
|
{
|
|||
|
var view = (ExtendedPicker)Element;
|
|||
|
|
|||
|
if(e.PropertyName == ExtendedPicker.HasBorderProperty.PropertyName)
|
|||
|
{
|
|||
|
SetBorder(view);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
base.OnElementPropertyChanged(sender, e);
|
|||
|
if(e.PropertyName == VisualElement.BackgroundColorProperty.PropertyName)
|
|||
|
{
|
|||
|
Control.SetBackgroundColor(view.BackgroundColor.ToAndroid());
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void SetBorder(ExtendedPicker view)
|
|||
|
{
|
|||
|
if(!view.HasBorder)
|
|||
|
{
|
|||
|
Control.SetBackgroundColor(global::Android.Graphics.Color.Transparent);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|