TextInput should respect previous props, paddingHorizontal, and paddingVertical

Summary:
Of course if props aren't changing, rawProps won't have paddings anymore and so padding gets reset.

Also, make sure we pay attention to paddingVertical and paddingHorizontal styles.

Changelog: [Internal]

Reviewed By: mdvacca

Differential Revision: D20269583

fbshipit-source-id: 2903fd0f7e6178f506109467d9a8f67b6d013a25
This commit is contained in:
Joshua Gross
2020-03-04 20:01:24 -08:00
committed by Facebook Github Bot
parent 782e06a059
commit 43e6d9acd7
@@ -226,23 +226,35 @@ AndroidTextInputProps::AndroidTextInputProps(
// See AndroidTextInputComponentDescriptor for usage
// TODO T63008435: can these, and this feature, be removed entirely?
hasPaddingLeft(
sourceProps.hasPaddingLeft ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("Left", "padding", "") != nullptr),
rawProps.at("Left", "padding", "") != nullptr ||
rawProps.at("Horizontal", "padding", "") != nullptr),
hasPaddingTop(
sourceProps.hasPaddingTop ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("Top", "padding", "") != nullptr),
rawProps.at("Top", "padding", "") != nullptr ||
rawProps.at("Vertical", "padding", "") != nullptr),
hasPaddingRight(
sourceProps.hasPaddingRight ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("Right", "padding", "") != nullptr),
rawProps.at("Right", "padding", "") != nullptr ||
rawProps.at("Horizontal", "padding", "") != nullptr),
hasPaddingBottom(
sourceProps.hasPaddingBottom ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("Bottom", "padding", "") != nullptr),
rawProps.at("Bottom", "padding", "") != nullptr ||
rawProps.at("Vertical", "padding", "") != nullptr),
hasPaddingStart(
sourceProps.hasPaddingStart ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("Start", "padding", "") != nullptr),
rawProps.at("Start", "padding", "") != nullptr ||
rawProps.at("Horizontal", "padding", "") != nullptr),
hasPaddingEnd(
sourceProps.hasPaddingEnd ||
rawProps.at("", "padding", "") != nullptr ||
rawProps.at("End", "padding", "") != nullptr) {}
rawProps.at("End", "padding", "") != nullptr ||
rawProps.at("Horizontal", "padding", "") != nullptr) {}
// TODO T53300085: support this in codegen; this was hand-written
folly::dynamic AndroidTextInputProps::getDynamic() const {