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

[dev-launcher][dev-menu][ios] Add support for Fabric #22184

Merged
merged 26 commits into from
Jun 20, 2023

Conversation

gabrieldonadel
Copy link
Member

@gabrieldonadel gabrieldonadel commented Apr 18, 2023

Why

Closes ENG-7955

This PR adds dev-launcher support for the new architecture.

How

  • Updates expo-dev-launcher and expo-dev-menu podspecs to support NEW_ARCH_ENABLED flags
  • Add EXDevLauncherBridgeDelegate class that inherits from RCTAppDelegate and is responsible for creating the root view and bridge
  • Replace DevMenuRCTCxxBridgeDelegatewith DevMenuRCTAppDelegate
  • Fix EXDevLauncherBridgeDelegate not able to relaunch DevLauncher
  • Add ExpoDevLauncherBridgeDelegateHandler to handle opening apps from ExpoDevLauncherReactDelegateHandler
  • Update openDevMenuFromReactNative to ensure the DevMenu is closed before opening the react-native dev menu

Test Plan

Run fabric-tester and bare-expo on iOS

fabric-testerbare-expo
Screen.Recording.2023-06-09.at.15.44.03.mov
Screen.Recording.2023-06-09.at.16.23.04.mov

Checklist

@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from 96d290e to 1e36989 Compare April 19, 2023 17:56
Base automatically changed from @gabrieldonadel/rewrite-safe-area-view to main April 20, 2023 12:00
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from 1e36989 to b83ea26 Compare April 20, 2023 12:56
@expo-bot expo-bot added the bot: suggestions ExpoBot has some suggestions label Apr 20, 2023
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from b83ea26 to d499285 Compare May 16, 2023 13:54
@gabrieldonadel gabrieldonadel changed the base branch from main to @gabrieldonadel/migrate-launcher-to-new-api-on-ios May 16, 2023 13:55
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch 2 times, most recently from 4398423 to 57e4694 Compare May 16, 2023 16:45
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/migrate-launcher-to-new-api-on-ios branch 2 times, most recently from 00a6d77 to 147365e Compare May 19, 2023 13:42
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from 57e4694 to 5f3dc7c Compare May 19, 2023 13:50
Base automatically changed from @gabrieldonadel/migrate-launcher-to-new-api-on-ios to main May 19, 2023 15:25
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch 4 times, most recently from 1af9ce9 to 46e854d Compare May 22, 2023 16:07
@expo-bot expo-bot added bot: needs changes ExpoBot found things that don't meet our guidelines and removed bot: suggestions ExpoBot has some suggestions labels May 22, 2023
@linear
Copy link

linear bot commented May 23, 2023

@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch 5 times, most recently from 369e701 to 60f711f Compare May 26, 2023 13:28
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from 60f711f to f6a6352 Compare May 31, 2023 17:27
@gabrieldonadel gabrieldonadel changed the title [dev-launcher][ios] Add support for Fabric [dev-launcher][ios] Add support for Fabric - Part 1 Jun 7, 2023
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch 3 times, most recently from e435874 to 8b13174 Compare June 9, 2023 13:53
Copy link
Contributor

@Kudo Kudo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥🚀🚀

gabrieldonadel and others added 25 commits June 19, 2023 14:42
Co-authored-by: Kudo Chien <kudo@expo.dev>
Closes ENG-7955

This PR is Part 2 of a series of PRs that will add dev-launcher support
for the new architecture.

Part 1 #22184

- Fix `EXDevLauncherBridgeDelegate` not able to relaunch DevLauncher
- Add `ExpoDevLauncherBridgeDelegateHandler` to handle opening apps from
`ExpoDevLauncherReactDelegateHandler`
- Update `openDevMenuFromReactNative` to ensure the DevMenu is closed
before opening the react-native dev menu

Run `fabric-tester` and `bare-expo` on iOS

<table>
    <tr><th>fabric-tester</th><th>bare-expo</th></tr>
    <tr>
    <td>
<video
src="https://github.com/expo/expo/assets/11707729/69e80f31-3d8e-4135-afd7-0f4264052a79"/>
   </td>
   <td>
<video
src="https://github.com/expo/expo/assets/11707729/99b10d00-45b3-4b3e-b7c0-2cc7599ebad7"
/>
    </td>
</tr>
</table>

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).
@gabrieldonadel gabrieldonadel force-pushed the @gabrieldonadel/fabric-ios-dev-menu branch from 97369b6 to b660581 Compare June 19, 2023 17:48
@gabrieldonadel gabrieldonadel merged commit e3d1936 into main Jun 20, 2023
8 checks passed
@gabrieldonadel gabrieldonadel deleted the @gabrieldonadel/fabric-ios-dev-menu branch June 20, 2023 02:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bot: passed checks ExpoBot has nothing to complain about
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants