callstack / callstack/react-native-paper

[Android] Menu flashes when opening

Open
#4,814 5 comments 7 reactions 0 assignees View on GitHub
bug
Dominant language
TypeScript
Stars
14.5k
Forks
2.2k
Avg merge
5d 23h
Merged PRs (30d)
12

Description

### Current behaviour
The menu component flashes when opening the menu via `visible=true`. I think this is actually not observable in production builds (with a Samsung S21) but rather in poor performance scenarios (dev, emulator)

### Expected behaviour
The menu doesnt flash

### How to reproduce?
show a menu

### Preview
the video only shows the menu flashing once; in the actual emulator it flashes every time when the menu opens

https://github.com/user-attachments/assets/37fa7177-a05e-4a21-bdac-718822acc5bd

### What have you tried so far?

[add](https://github.com/lovegaoshi/azusa-player-mobile/blob/2648f55f4cb6c6dd72433a871a63249cbed79d1e/patches/react-native-paper%2B5.14.5.patch#L9)
```
await new Promise(resolve => setTimeout(resolve, 1));
```
fixes this issue; unfortunately I learned enough from experience to know this works but cant tell why.

### Your Environment

| software | version
| --------------------- | -------
| ios | n/a
| android | 36
| react-native | 0.81.4
| react-native-paper | 5.14.5
| node | 22
| npm or yarn | yarn v4
| expo sdk | 54

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the menu opening with visible=true on an Android emulator using the reported React Native Paper 5.14.5 environment, then inspect patches/react-native-paper+5.14.5.patch, especially the referenced change. Confirm the cause rather than relying on the 1 ms delay; the work is done when opening the menu no longer flashes in the reported poor-performance scenario.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, react-native, typescript
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.