Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FullWindowOverlay not working when using use_frameworks! #2652

Open
CHOIMINSEOK opened this issue Jan 27, 2025 · 3 comments
Open

FullWindowOverlay not working when using use_frameworks! #2652

CHOIMINSEOK opened this issue Jan 27, 2025 · 3 comments
Labels
Platform: iOS This issue is specific to iOS Repro provided A reproduction with a snack or repo is provided

Comments

@CHOIMINSEOK
Copy link

CHOIMINSEOK commented Jan 27, 2025

Description

Hello. I was trying to use FullWindowOverlay on top of modal presented page in iOS, and I founded it didn't work if cocoapods dependencies are linked as dynamic framework( use_frameworks! ). If Podfile calls "use_frameworks!", FullWindowOverlay is rendered as
RCTLegacyViewManagerInteropComponentView, not RNSFullWindowOverlayContainer.

I suspect some parts of fabric configuration of FullWindowOverlay doesn't work with use_framworks!, but I still don't understand what's going on under the hood. Following code would be related with this issue, but not sure. How could I resolve this?


facebook/react-native#37274

Linked as dynamic framework (with use_frameworks!)

fullwindowoverlay.issue.mov

Image

Linked as static framework (without use_frameworks!)

normal.mov

Image

Steps to reproduce

  1. clone repro repository and go into the project root directory
  2. install npm packages & Pods
cd rn-app
yarn 
cd ..
bundle exec pod install 
  1. Click button in ProfileStack page (please check the screen recording in description)

Snack or a link to a repository

https://github.com/CHOIMINSEOK/FullScreenOverlayIssue

Screens version

4.5.0

React Native version

0.76.6

Platforms

iOS

JavaScript runtime

Hermes

Workflow

React Native (without Expo)

Architecture

Fabric (New Architecture)

Build type

None

Device

None

Device model

No response

Acknowledgements

Yes

@github-actions github-actions bot added Repro provided A reproduction with a snack or repo is provided Platform: iOS This issue is specific to iOS labels Jan 27, 2025
@kkafar
Copy link
Member

kkafar commented Jan 27, 2025

@CHOIMINSEOK thanks for the report. I won't be able to look into it this week, however there is a clear problem with component discovery here. Good place to start debugging would be RCTThirdPartyComponentProvider & the discovery code (don't remember files exactly, but I'm sure you can find it by looking for RCTLegacyViewManagerInteropComponentView and going up stack trace).

@CHOIMINSEOK
Copy link
Author

Maybe RCTComponentViewFactory#registerComponentIfPossible is the code that make this issue happen? Honestly, I have no idea how to debug rendering code of native part in react native 😅 Could you recommend some reference ? @kkafar

https://github.com/facebook/react-native/blob/46e86dca876f82e24d2a63604801b4c356d786aa/packages/react-native/React/Fabric/Mounting/RCTComponentViewFactory.mm#L109

@kkafar
Copy link
Member

kkafar commented Jan 27, 2025

I don't think there is any reference for that, unfortunately. I'm tending to some different issue today, but I'll try to look into this one after I'm done with current one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Platform: iOS This issue is specific to iOS Repro provided A reproduction with a snack or repo is provided
Projects
None yet
Development

No branches or pull requests

2 participants