Fabric: TextAttributes::defaultTextAttributes()

Summary: An `AttributedString` object generated by a cross-platform layer of React Native must have already resolved text styles to make the actual resulting text identical across platforms. To do so we have to have a unified default.

Reviewed By: sahrens

Differential Revision: D10287725

fbshipit-source-id: e8c62b33496be34146182baccd0009d3624a7fe5
This commit is contained in:
Valentin Shergin
2018-10-15 23:23:34 -07:00
committed by Facebook Github Bot
parent 057438a103
commit 07d8b06d41
3 changed files with 23 additions and 1 deletions

View File

@@ -149,6 +149,18 @@ bool TextAttributes::operator!=(const TextAttributes &rhs) const {
return !(*this == rhs);
}
TextAttributes TextAttributes::defaultTextAttributes() {
static auto textAttributes = [] {
auto textAttributes = TextAttributes{};
// Non-obvious (can be different among platforms) default text attributes.
textAttributes.foregroundColor = blackColor();
textAttributes.backgroundColor = clearColor();
textAttributes.fontSize = 12.0;
return textAttributes;
}();
return textAttributes;
}
#pragma mark - DebugStringConvertible
#if RN_DEBUG_STRING_CONVERTIBLE