@@ -690,17 +690,24 @@ textHelper textInput attrs textOptions =
693+ isHeightContent attr =
695+ Internal.Height Internal.Content ->
693 bottomPadding attr =
701 bottomPadding attr =
694 case attr of
702 case attr of
695 Internal.StyleClass cls (Internal.PaddingStyle pad t r b l) ->
703 Internal.StyleClass cls (Internal.PaddingStyle pad t r b l) ->
697− (Element.paddingEach
705+ Element.paddingEach
698 { top = 0
706 { top = 0
699 , right = 0
707 , right = 0
700 , bottom = b
708 , bottom = b
701 , left = 0
709 , left = 0
@@ -711,7 +718,7 @@ textHelper textInput attrs textOptions =
713 TextArea ->
720 TextArea ->
714− Maybe.withDefault False redistributed.heightContent
721+ List.any isHeightContent withDefaults
716 inputElement =
723 inputElement =
717 Internal.element
724 Internal.element
@@ -775,11 +782,10 @@ textHelper textInput attrs textOptions =
775 :: Internal.htmlClass classes.inputMultiline
782 :: Internal.htmlClass classes.inputMultiline
776 :: List.concat
783 :: List.concat
777 [ if heightContent then
784 [ if heightContent then
778− List.filter onlySpacing redistributed.parent
785+ redistributed.wrapper
779− -- redistributed.parent
782− List.filter onlySpacing redistributed.parent
788+ redistributed.wrapper
783 ++ List.filterMap bottomPadding redistributed.parent
789 ++ List.filterMap bottomPadding redistributed.parent
784 , case textOptions.placeholder of
790 , case textOptions.placeholder of
785 Nothing ->
791 Nothing ->
@@ -887,7 +893,8 @@ calcMoveToCompensateForPadding attrs =
887redistribute them to the parent, the input, or the cover.
893redistribute them to the parent, the input, or the cover.
889 - fullParent -> Wrapper around label and input
895 - fullParent -> Wrapper around label and input
890− - parent -> wrapper around input
896+ - parent -> parent of wrapper
897+ - wrapper -> the element that is here to take up space.
891 - cover -> things like placeholders or text areas which are layered on top of input.
898 - cover -> things like placeholders or text areas which are layered on top of input.
892 - input -> actual input element
899 - input -> actual input element
@@ -895,20 +902,27 @@ redistribute them to the parent, the input, or the cover.
895redistribute :
902redistribute :
896 List (Attribute msg)
903 List (Attribute msg)
898− { parent : List (Attribute msg)
899− , fullParent : List (Attribute msg)
905+ { fullParent : List (Attribute msg)
906+ , parent : List (Attribute msg)
907+ , wrapper : List (Attribute msg)
900 , input : List (Attribute msg)
908 , input : List (Attribute msg)
901 , cover : List (Attribute msg)
909 , cover : List (Attribute msg)
902− , heightContent : Maybe Bool
904redistribute attrs =
911redistribute attrs =
905− List.foldl redistributeOver { fullParent = [], parent = [], input = [], cover = [], heightContent = Nothing } attrs
912+ List.foldl redistributeOver
906 |> (\redist ->
920 |> (\redist ->
907 { parent = List.reverse redist.parent
921 { parent = List.reverse redist.parent
908 , fullParent = List.reverse redist.fullParent
922 , fullParent = List.reverse redist.fullParent
923+ , wrapper = List.reverse redist.wrapper
909 , input = List.reverse redist.input
924 , input = List.reverse redist.input
910 , cover = List.reverse redist.cover
925 , cover = List.reverse redist.cover
911− , heightContent = redist.heightContent
@@ -931,22 +945,9 @@ redistributeOver attr els =
933 Internal.Height h ->
947 Internal.Height h ->
937− | parent = attr :: els.parent
945− | parent = attr :: els.parent
949+ | parent = attr :: els.parent
951 Internal.AlignX _ ->
952 Internal.AlignX _ ->
952 { els | fullParent = attr :: els.fullParent }
953 { els | fullParent = attr :: els.fullParent }
@@ -959,11 +960,16 @@ redistributeOver attr els =
959 | fullParent = attr :: els.fullParent
960 | fullParent = attr :: els.fullParent
960 , parent = attr :: els.parent
961 , parent = attr :: els.parent
961 , input = attr :: els.input
962 , input = attr :: els.input
963+ , wrapper = attr :: els.wrapper
964 Internal.StyleClass _ (Internal.PaddingStyle _ _ _ _ _) ->
966 Internal.StyleClass _ (Internal.PaddingStyle _ _ _ _ _) ->
966 | parent = attr :: els.parent
968 | parent = attr :: els.parent
970+ -- input = attr :: els.input
971+ -- , wrapper = attr :: els.wrapper
972+ , cover = attr :: els.cover
969 Internal.StyleClass _ (Internal.BorderWidth _ _ _ _ _) ->
975 Internal.StyleClass _ (Internal.BorderWidth _ _ _ _ _) ->