History log of /expo/packages/expo-dev-menu/ios/Modules/DevMenuInternalModule.swift (Results 1 – 25 of 26)
Revision Date Author Comments
# e3d19369 20-Jun-2023 Gabriel Donadel Dall'Agnol <[email protected]>

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

# Why

Closes ENG-7955

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

# How

- Updates `expo-dev-launcher` an

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

# 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 `DevMenuRCTCxxBridgeDelegate`with `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


<table>
<tr><th>fabric-tester</th><th>bare-expo</th></tr>
<tr>
<td>
<video
src="https://github.com/expo/expo/assets/11707729/1176f862-4459-4a39-8c11-16f73b2dfe46"/>
</td>
<td>
<video
src="https://github.com/expo/expo/assets/11707729/5f603af5-d970-4144-ade6-0943b829d225"
/>
</td>
</tr>
</table>

# Checklist

<!--
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 `expo prebuild` & EAS Build (eg:
updated a module plugin).

---------

Co-authored-by: Kudo Chien <[email protected]>

show more ...


# cc2b5a7f 28-Apr-2023 Gabriel Donadel Dall'Agnol <[email protected]>

[menu][iOS] Migrate to new modules API (#22263)

# Why

In order to add support for Fabric to expo-dev-client and related
libraries we must migrate all related modules to the new API

Related to

[menu][iOS] Migrate to new modules API (#22263)

# Why

In order to add support for Fabric to expo-dev-client and related
libraries we must migrate all related modules to the new API

Related to ENG-7955


# How

Migrate ExpoDevMenu classes to use the new modules API

# Test Plan

Run dev client through bare expo

<table>
<tr>
<td>
<img
src="https://user-images.githubusercontent.com/11707729/234351876-9402cba1-686a-4575-b2e7-6319e9c50439.png"
/>
</td>
<td>
<img
src="https://user-images.githubusercontent.com/11707729/234351912-f60b5e59-f9b5-4358-9402-ac5e91794bb7.png"
/>
</td>
</tr>
</table>


# Checklist

<!--
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).

show more ...


# 169f3220 03-Mar-2023 Łukasz Kosmaty <[email protected]>

[menu] Improve bottom sheet behaviour (#21486)

# Why

Improves the behavior of the native bottom sheet.
Closes https://github.com/expo/expo/issues/21356.

# How

- Started a collapse animati

[menu] Improve bottom sheet behaviour (#21486)

# Why

Improves the behavior of the native bottom sheet.
Closes https://github.com/expo/expo/issues/21356.

# How

- Started a collapse animation when the menu action was pressed
- Added a way for users to close or hide the menu from js
- Added small padding on Android to improve user experience
- Extensions can now decide if executing them should trigger collapse animation. It's set to true by default.

# Test Plan

- bare-expo ✅
- https://snack.expo.dev/@honeycomb-wallwisher/forlorn-soda ✅

show more ...


# 83ade7ef 25-May-2022 andy <[email protected]>

[dev-menu] add js api to register callbacks (#17528)

Co-authored-by: Eric Samelson <[email protected]>


# 5e3c9f9b 26-Apr-2022 Łukasz Kosmaty <[email protected]>

[dev-menu] Fix error on summoning dev menu first time (#17215)


# 812d0911 13-Apr-2022 Tomasz Sapeta <[email protected]>

[ios] Add missing React imports to expo-dev-menu (#17030)


# 052376e8 24-Mar-2022 andy <[email protected]>

[dev-menu][dev-launcher] update dev-menu extensions API (#16558)


# a93c953b 17-Mar-2022 andy <[email protected]>

[dev-launcher] remove dev menu from extra modules (#16562)


# e4ecb209 18-Feb-2022 andy <[email protected]>

[dev-menu] update dev-settings to be passed as initial props (#16275)


# f9baf8a1 18-Feb-2022 andy <[email protected]>

[dev-menu] update initial props on android and ios (#16271)


# 6721364e 09-Feb-2022 andy <[email protected]>

[dev-launcher] move session fns from dev-menu to dev-launcher i (#16124)


# 86220016 04-Feb-2022 andy <[email protected]>

[dev-menu] refactor dev menu on iOS to simplify dev-launcher relationship (#16067)


# 5ea1353d 24-Jan-2022 andy <[email protected]>

[dev-menu] add ios functions for dev menu (#15917)


# 765b47da 30-Dec-2021 Tomasz Sapeta <[email protected]>

[ios] Fix lint issues in Swift files (#15640)


# 9589725c 13-Dec-2021 andy <[email protected]>

[dev-launcher] update RN app (#15343)


# 3cb6cb1a 07-May-2021 Łukasz Kosmaty <[email protected]>

[dev-client][ios] Fix XCode warnings (#12798)

# Why

Closes GRO-112.
Removes other warnings reported by XCode.

# How

- Fixed or suppressed warnings
- Added vendored modules as a subspec t

[dev-client][ios] Fix XCode warnings (#12798)

# Why

Closes GRO-112.
Removes other warnings reported by XCode.

# How

- Fixed or suppressed warnings
- Added vendored modules as a subspec to suppress all warnings coming from them

> Note
The remaining warnings come from RN code - we can't do anything about them.

# Test Plan

- bare-expo ✅
- new project created using `npx crna`

show more ...


# 221227d5 20-Apr-2021 Łukasz Kosmaty <[email protected]>

[expo-dev-menu] Fetch eas updates data (#12452)

# Why

Closes ENG-347.

# How

- fixed `RNScreens module cannot be null` by downgrading the `react-native-screens` version (it was bumped in the

[expo-dev-menu] Fetch eas updates data (#12452)

# Why

Closes ENG-347.

# How

- fixed `RNScreens module cannot be null` by downgrading the `react-native-screens` version (it was bumped in the repo some time ago but the newest version doesn't work well with dev-menu).
- created a new concept of pulling async data into dev-menu - `DataSource`
- extended action functionality to handle the case where the js side passes arguments into native code (needed by list component).
- exposed functions with fetches updates data from our GraphQL API
- parsed GraphQL response and wrapped it into data objects

# Test Plan

- bare-expo ✅

show more ...


# 57b5bf20 30-Mar-2021 Łukasz Kosmaty <[email protected]>

[expo-dev-menu][ios] Fix invalid auth address (#12319)

# Why

Closes ENG-715.

# How

- Read `Info.plist` to get all deep link schemes
- If the app can handle the `expo-dev-menu` scheme, use

[expo-dev-menu][ios] Fix invalid auth address (#12319)

# Why

Closes ENG-715.

# How

- Read `Info.plist` to get all deep link schemes
- If the app can handle the `expo-dev-menu` scheme, use it. Otherwise, select the first scheme.

# Test Plan

- bare-expo ✅

# Changelog

- Fixed "Safari cannot open the page because the address is invalid" on iOS.

show more ...


# d79129dc 24-Mar-2021 Łukasz Kosmaty <[email protected]>

[expo-dev-client] Share session & new UI (#12235)

# Why

Closes ENG-613.
Contains:
- https://github.com/expo/expo/pull/12236
- https://github.com/expo/expo/pull/12240
- https://github.com/expo

[expo-dev-client] Share session & new UI (#12235)

# Why

Closes ENG-613.
Contains:
- https://github.com/expo/expo/pull/12236
- https://github.com/expo/expo/pull/12240
- https://github.com/expo/expo/pull/12245

# How

- Exporting the expo API client
- Restored session state when the app is initialized (not when dev menu is launched)
- Created simple requests to our API
- Rewritten dev-launcher UI and consume dev session.
- Hided dev menu debug options when the user is in the launcher.

# Test Plan

- bare-expo
- Android ✅
- iOS ✅

show more ...


# aacdc29a 09-Mar-2021 Łukasz Kosmaty <[email protected]>

[expo-dev-menu] Add auth & profile screen (#11915)

# Why

Adds auth & profile screen to dev-menu

# How

- Reimplemented web browser functionalities in dev-menu (mostly copied the code from `e

[expo-dev-menu] Add auth & profile screen (#11915)

# Why

Adds auth & profile screen to dev-menu

# How

- Reimplemented web browser functionalities in dev-menu (mostly copied the code from `expo-web-browser`)
- Implemented UI - similar to one in the home app
- Created simple local storage to store a session.
- Added the GraphQL client

# Test Plan

- bare-expo ✅ - https://exponent-internal.slack.com/archives/C3XK84RRR/p1612967628256400

show more ...


# 26eb6799 08-Feb-2021 Łukasz Kosmaty <[email protected]>

[expo-dev-menu] Add support for screens, links and selection list widget (#11384)

# Why

This is a preparation for adding the screen extension to the `dev-menu`

# How

Basicly just splitting

[expo-dev-menu] Add support for screens, links and selection list widget (#11384)

# Why

This is a preparation for adding the screen extension to the `dev-menu`

# How

Basicly just splitting the `DevMenuItemsList.tsx` into multiple components

# Test Plan

- bare-expo ✅

show more ...


# 6aca4c59 10-Dec-2020 Łukasz Kosmaty <[email protected]>

[expo-dev-menu][ios] Fix does device support key commands detection (#11284)

# Why

Fixes detection if the device supports key commands.
Part of https://www.notion.so/expo/Dev-Client-onboarding-U

[expo-dev-menu][ios] Fix does device support key commands detection (#11284)

# Why

Fixes detection if the device supports key commands.
Part of https://www.notion.so/expo/Dev-Client-onboarding-UX-37bb2f69d0744b3d955cf0637e162936.

# How

`TARGET_IPHONE_SIMULATOR` doesn't work in swift.
Moreover, the value was inverted ��‍♂️

# Test Plan

- bare-expo ✅

show more ...


# 813cefc1 30-Sep-2020 Łukasz Kosmaty <[email protected]>

[expo-dev-menu] Add a way to open dev menu from react native (#10361)

# Why

Fixed shake gesture opening two react native dev menu in the vanilla RN app.
Add a way to open the original dev-menu (

[expo-dev-menu] Add a way to open dev menu from react native (#10361)

# Why

Fixed shake gesture opening two react native dev menu in the vanilla RN app.
Add a way to open the original dev-menu (using the `Open React Native dev menu` button in settings`.

# How

Don't uninstall the `DevMenuMotionInterceptor` when the user disables the shake gesture - added the `isEnabled` flag instead.

> **Note:** the `Open React Native dev menu` button won't work in bare-expo, because of changes in our RN fork.

# Test Plan

- bare-expo ✅
- vanilla app ✅

show more ...


# cc0496a6 10-Sep-2020 Łukasz Kosmaty <[email protected]>

[expo-dev-menu] replace `Constants.isDevice` with `DevMenuInternal.isDevice` (#10083)

# Why

`expo-dev-menu` doesn't depend on unimodules anymore. So we need to replace `Constants.isDevice` with a

[expo-dev-menu] replace `Constants.isDevice` with `DevMenuInternal.isDevice` (#10083)

# Why

`expo-dev-menu` doesn't depend on unimodules anymore. So we need to replace `Constants.isDevice` with a new constant.

# TODO

- [x] rebuild

# Test Plan

- bare-expo ✅

show more ...


# 42788cb9 04-Sep-2020 Łukasz Kosmaty <[email protected]>

[dev-menu][ios] Fix loading fonts in the dev menu and get rid of expo-font dependency (#10057)

# Why

We don't want to use `expo-fonts` in `expo-dev-menu`. So we created a new way of loading and m

[dev-menu][ios] Fix loading fonts in the dev menu and get rid of expo-font dependency (#10057)

# Why

We don't want to use `expo-fonts` in `expo-dev-menu`. So we created a new way of loading and managing fonts.

# How

Added needed fonts to bundle resources.
Loaded them in run time.

# Test Plan

- bare-expo ✅
- vanilla RN app ✅

show more ...


12