callstack / callstack/react-native-paper

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

オープン
#4,637 コメント 1 件 リアクション 3 件 担当者 0 名 GitHub で見る
bug Surface
主要言語
TypeScript
スター
14.5k
フォーク
2.2k
平均マージ
5日 23時間
マージ済み PR(30日)
12

説明

### 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

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。