callstack / callstack/react-native-paper

[Surface] `shadowColor` should follow the current theme by default

Abierto
#4,637 1 comentario 3 reacciones 0 asignados Ver en GitHub
bug Surface
Lenguaje dominante
TypeScript
Estrellas
14.5k
Forks
2.2k
Merge medio
5 d 23 h
PR fusionados (30 d)
12

Descripción

### Current behaviour

It looks like the `shadowColor` of the `Surface` component has been hardcoded to pure black [here](https://github.com/callstack/react-native-paper/blob/366e0d63fd5ae0d5dc7799dbd97eee8e4062134c/src/components/Surface.tsx#L98).

That causes the shadow not to show up on other components that are backed by `Surface` (e.g. `Card`).

### Expected behaviour

I'm not 100% sure of what the spec says but I believe the `shadowColor` should be set to something like `theme.colors.onBackground` by default to provide the necessary contrast.

### How to reproduce?
1. set a dark theme (e.g. where `theme.colors.background = 'black'`)
2. place a `Card` on the screen

### Preview

* With the current `shadowColor`:

Image

* With the `shadowColor` set to `theme.colors.onBackground`:

Image

### What have you tried so far?

I need to manually set `shadowColor` on each elevated component that requires a shadow.

### Your Environment

| software | version
| --------------------- | -------
| ios | Unnecessary
| android | Unnecessary
| react-native | Unnecessary
| react-native-paper | 5.13.1
| node | Unnecessary
| npm or yarn | Unnecessary
| expo sdk | Unnecessary

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.