mirror of
https://github.com/status-im/react-native.git
synced 2025-01-09 17:15:54 +00:00
f68281a0d8
Summary: In Android, Fresco's default rounding corners support mode is BITMAP_ONLY which doesn't work in all cases (such as animated GIF's, some scale types, etc.). Specifying the new "overlayColor" property on an Image will cause Fresco to switch to the other rounding corners mode, OVERLAY_COLOR, and will draw rounded corners by overlaying the solid color specified. Fresco's behaviour is explained here: http://frescolib.org/docs/rounded-corners-and-circles.html Closes https://github.com/facebook/react-native/pull/5366 Reviewed By: svcscm Differential Revision: D2854696 Pulled By: mkonicek fb-gh-sync-id: 251701ee8a64acbfc22694e9d4661c40eef75725
53 lines
2.0 KiB
JavaScript
53 lines
2.0 KiB
JavaScript
/**
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under the BSD-style license found in the
|
|
* LICENSE file in the root directory of this source tree. An additional grant
|
|
* of patent rights can be found in the PATENTS file in the same directory.
|
|
*
|
|
* @providesModule ReactNativeStyleAttributes
|
|
* @flow
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
var ImageStylePropTypes = require('ImageStylePropTypes');
|
|
var TextStylePropTypes = require('TextStylePropTypes');
|
|
var ViewStylePropTypes = require('ViewStylePropTypes');
|
|
|
|
var keyMirror = require('keyMirror');
|
|
var matricesDiffer = require('matricesDiffer');
|
|
var processColor = require('processColor');
|
|
var processTransform = require('processTransform');
|
|
var sizesDiffer = require('sizesDiffer');
|
|
|
|
var ReactNativeStyleAttributes = {
|
|
...keyMirror(ViewStylePropTypes),
|
|
...keyMirror(TextStylePropTypes),
|
|
...keyMirror(ImageStylePropTypes),
|
|
};
|
|
|
|
ReactNativeStyleAttributes.transform = { process: processTransform };
|
|
ReactNativeStyleAttributes.transformMatrix = { diff: matricesDiffer };
|
|
ReactNativeStyleAttributes.shadowOffset = { diff: sizesDiffer };
|
|
|
|
// Do not rely on this attribute.
|
|
ReactNativeStyleAttributes.decomposedMatrix = 'decomposedMatrix';
|
|
|
|
var colorAttributes = { process: processColor };
|
|
ReactNativeStyleAttributes.backgroundColor = colorAttributes;
|
|
ReactNativeStyleAttributes.borderBottomColor = colorAttributes;
|
|
ReactNativeStyleAttributes.borderColor = colorAttributes;
|
|
ReactNativeStyleAttributes.borderLeftColor = colorAttributes;
|
|
ReactNativeStyleAttributes.borderRightColor = colorAttributes;
|
|
ReactNativeStyleAttributes.borderTopColor = colorAttributes;
|
|
ReactNativeStyleAttributes.color = colorAttributes;
|
|
ReactNativeStyleAttributes.shadowColor = colorAttributes;
|
|
ReactNativeStyleAttributes.textDecorationColor = colorAttributes;
|
|
ReactNativeStyleAttributes.tintColor = colorAttributes;
|
|
ReactNativeStyleAttributes.textShadowColor = colorAttributes;
|
|
ReactNativeStyleAttributes.overlayColor = colorAttributes;
|
|
|
|
module.exports = ReactNativeStyleAttributes;
|