Esempio n. 1
0
 public static void UpdateStrokeColor(this MaterialButton nativeButton, IButtonStroke buttonStroke)
 {
     if (buttonStroke.StrokeColor is Color stroke)
     {
         nativeButton.StrokeColor = ColorStateListExtensions.CreateButton(stroke.ToNative());
     }
 }
Esempio n. 2
0
 public static void UpdateStrokeColor(this ShapeableImageView platformButton, IButtonStroke buttonStroke)
 {
     if (buttonStroke.StrokeColor is Color stroke)
     {
         platformButton.StrokeColor = ColorStateListExtensions.CreateButton(stroke.ToPlatform());
     }
 }
Esempio n. 3
0
 public static void UpdateStrokeColor(this MaterialButton platformButton, IButtonStroke buttonStroke)
 {
     if (buttonStroke.StrokeColor is Color stroke)
     {
         platformButton.StrokeColor = ColorStateListExtensions.CreateButton(stroke.ToPlatform());
     }
 }
Esempio n. 4
0
 public static void UpdateTextColor(this EditText editText, Graphics.Color textColor)
 {
     if (textColor != null)
     {
         var androidColor = textColor.ToPlatform();
         if (!editText.TextColors.IsOneColor(ColorStates.EditText, androidColor))
         {
             editText.SetTextColor(ColorStateListExtensions.CreateEditText(androidColor));
         }
     }
 }
Esempio n. 5
0
 public static void UpdatePlaceholderColor(this EditText editText, Graphics.Color placeholderTextColor)
 {
     if (placeholderTextColor != null)
     {
         var androidColor = placeholderTextColor.ToPlatform();
         if (!editText.HintTextColors.IsOneColor(ColorStates.EditText, androidColor))
         {
             editText.SetHintTextColor(ColorStateListExtensions.CreateEditText(androidColor));
         }
     }
 }
Esempio n. 6
0
        public static void UpdateTitleColor(this MauiPicker platformPicker, IPicker picker)
        {
            var titleColor = picker.TitleColor;

            if (titleColor != null)
            {
                var androidColor = titleColor.ToPlatform();
                if (!platformPicker.TextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    platformPicker.SetHintTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 7
0
        public static void UpdateStrokeColor(this MaterialButton platformView, IButton button)
        {
            if (platformView.Background is BorderDrawable)
            {
                platformView.UpdateBorderDrawable(button);
                return;
            }

            if (button is IButtonStroke buttonStroke && buttonStroke.StrokeColor is Color stroke)
            {
                platformView.StrokeColor = ColorStateListExtensions.CreateButton(stroke.ToPlatform());
            }
        }
Esempio n. 8
0
        public static void UpdateTextColor(this MauiDatePicker platformDatePicker, IDatePicker datePicker)
        {
            var textColor = datePicker.TextColor;

            if (textColor != null)
            {
                var androidColor = textColor.ToPlatform();
                if (!platformDatePicker.TextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    platformDatePicker.SetTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 9
0
        public static ColorStateList GetDefaultSwitchThumbColorStateList(this ASwitch aSwitch)
        {
            var context = aSwitch.Context;

            if (context == null)
            {
                return(new ColorStateList(null, null));
            }

            return(ColorStateListExtensions.CreateSwitch(
                       context.GetDisabledThemeAttrColor(MauiAttribute.colorSwitchThumbNormal),
                       context.GetThemeAttrColor(AAttribute.ColorControlActivated),
                       context.GetThemeAttrColor(MauiAttribute.colorSwitchThumbNormal)));
        }
Esempio n. 10
0
        public static ColorStateList GetDefaultSwitchTrackColorStateList(this ASwitch aSwitch)
        {
            var context = aSwitch.Context;

            if (context == null)
            {
                return(new ColorStateList(null, null));
            }

            return(ColorStateListExtensions.CreateSwitch(
                       context.GetThemeAttrColor(AAttribute.ColorForeground, 0.1f),
                       context.GetThemeAttrColor(AAttribute.ColorControlActivated, 0.3f),
                       context.GetThemeAttrColor(AAttribute.ColorForeground, 0.3f)));
        }
Esempio n. 11
0
 public static void UpdatePlaceholderColor(this EditText editText, Graphics.Color placeholderTextColor, ColorStateList?defaultColor)
 {
     if (placeholderTextColor == null)
     {
         editText.SetHintTextColor(defaultColor);
     }
     else
     {
         var androidColor = placeholderTextColor.ToNative();
         if (!editText.HintTextColors.IsOneColor(ColorStates.EditText, androidColor))
         {
             editText.SetHintTextColor(ColorStateListExtensions.CreateEditText(androidColor));
         }
     }
 }
Esempio n. 12
0
        public static void UpdateTitleColor(this MauiPicker nativePicker, IPicker picker, ColorStateList?defaultColor)
        {
            var titleColor = picker.TitleColor;

            if (titleColor == null)
            {
                nativePicker.SetHintTextColor(defaultColor);
            }
            else
            {
                var androidColor = titleColor.ToNative();
                if (!nativePicker.TextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    nativePicker.SetHintTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 13
0
        public static void UpdateTextColor(this MauiPicker platformPicker, IPicker picker, ColorStateList?defaultColor)
        {
            var textColor = picker.TextColor;

            if (textColor == null)
            {
                platformPicker.SetTextColor(defaultColor);
            }
            else
            {
                var androidColor = textColor.ToPlatform();
                if (!platformPicker.TextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    platformPicker.SetTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 14
0
        internal static ColorStateList GetColorStateList(this AppCompatCheckBox platformCheckBox, ICheckBox check)
        {
            AColor tintColor;

            // For the moment, we're only supporting solid color Paint for the Android Checkbox
            if (check.Foreground is SolidPaint solid)
            {
                var color = solid.Color;
                tintColor = color.ToPlatform();
            }
            else
            {
                Graphics.Color accent = platformCheckBox.Context?.GetAccentColor() ?? Graphics.Color.FromArgb("#ff33b5e5");
                tintColor = accent.ToPlatform();
            }

            return(ColorStateListExtensions.CreateCheckBox(tintColor));
        }
Esempio n. 15
0
 public static void UpdateTextColor(this EditText editText, Graphics.Color textColor, ColorStateList?defaultColor)
 {
     if (textColor == null)
     {
         if (defaultColor != null)
         {
             editText.SetTextColor(defaultColor);
         }
     }
     else
     {
         var androidColor = textColor.ToNative();
         if (!editText.TextColors.IsOneColor(ColorStates.EditText, androidColor))
         {
             editText.SetTextColor(ColorStateListExtensions.CreateEditText(androidColor));
         }
     }
 }
Esempio n. 16
0
        public static void UpdateTextColor(this MauiDatePicker nativeDatePicker, IDatePicker datePicker, ColorStateList?defaultTextColor)
        {
            var textColor = datePicker.TextColor;

            if (textColor == null)
            {
                if (defaultTextColor != null)
                {
                    nativeDatePicker.SetTextColor(defaultTextColor);
                }
            }
            else
            {
                var androidColor = textColor.ToNative();
                if (!nativeDatePicker.TextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    nativeDatePicker.SetTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 17
0
        public static void UpdateForeground(this AppCompatCheckBox nativeCheckBox, ICheckBox check)
        {
            // TODO: Delete when implementing the logic to set the system accent color.
            Graphics.Color accent = Graphics.Color.FromArgb("#ff33b5e5");

            var targetColor = accent;

            // For the moment, we're only supporting solid color Paint for the Android Checkbox
            if (check.Foreground is SolidPaint solid)
            {
                targetColor = solid.Color;
            }

            var tintColor = targetColor.ToNative();

            var tintList = ColorStateListExtensions.CreateCheckBox(tintColor);

            var tintMode = PorterDuff.Mode.SrcIn;

            CompoundButtonCompat.SetButtonTintList(nativeCheckBox, tintList);
            CompoundButtonCompat.SetButtonTintMode(nativeCheckBox, tintMode);
        }
        public static void UpdatePlaceholderColor(this SearchView searchView, ISearchBar searchBar, ColorStateList?defaultPlaceholderColor, EditText?editText = null)
        {
            editText ??= searchView.GetFirstChildOfType <EditText>();

            if (editText == null)
            {
                return;
            }

            var placeholderTextColor = searchBar.PlaceholderColor;

            if (placeholderTextColor == null)
            {
                editText.SetHintTextColor(defaultPlaceholderColor);
            }
            else
            {
                var androidColor = placeholderTextColor.ToNative();
                if (!editText.HintTextColors.IsOneColor(ColorStates.EditText, androidColor))
                {
                    editText.SetHintTextColor(ColorStateListExtensions.CreateEditText(androidColor));
                }
            }
        }
Esempio n. 19
0
 public static ColorStateList ToDefaultColorStateList(this Color color) =>
 ColorStateListExtensions.CreateDefault(color.ToPlatform());