History log of /expo/ios/Client/EXRootViewController.m (Results 1 – 25 of 46)
Revision Date Author Comments
# 19a0af8d 15-Sep-2023 Will Schurman <[email protected]>

[go] Load embedded bundle and manifest in release builds (#24412)


# 5f54863a 08-Sep-2023 Will Schurman <[email protected]>

[tools] Switch expo home publishing to EAS update (#24216)


# a859e3ae 18-Jul-2023 Wojciech Dróżdż <[email protected]>

[go][ios] Fix Expo Go not respecting the orientation field on initial load (#23581)

# Why

https://github.com/expo/expo/issues/23368, ENG-9262
On iOS 16+ Expo Go wouldn't respect the values under

[go][ios] Fix Expo Go not respecting the orientation field on initial load (#23581)

# Why

https://github.com/expo/expo/issues/23368, ENG-9262
On iOS 16+ Expo Go wouldn't respect the values under the `"orientation"`
key in `app.json` until something caused the view controller to update
it's orientation using `supportedInterfaceOrientaitons` (for example
opening the dev-menu).

On iOS 15 it would work on initial load but it was possible to cause the
"orientation" field to stop working. (For example setting the
"orientation" key to landscape, opening an app, opening the dev-menu,
going home and opening the app again while keeping the device in
portrait).

# How

When transitioning to an app Expo Go will make the root view controller
check for the supported orientations.
On iOS 16+ this is archived with a built in method, and on iOS < 16 this
is done by setting the UIDevice.orientation.current (via a
`ScreenOrientationRegistry` method) to the desired orientation.

# Test Plan

Tested in Expo Go on iOS 16 and 15

show more ...


# 0502d1f9 18-May-2023 Tomasz Sapeta <[email protected]>

Remove Amplitude from Expo Go (#22523)


# 7c3ed0c0 14-Dec-2022 Douglas Lowder <[email protected]>

[Expo Go][iOS] No remote home app loads in release builds (#20416)

# Why

Per ENG-7047, we need to disable remote loading of home app, and
checking for home app updates, for release builds.
Upda

[Expo Go][iOS] No remote home app loads in release builds (#20416)

# Why

Per ENG-7047, we need to disable remote loading of home app, and
checking for home app updates, for release builds.
Updates and loading from the packager will still work in debug builds.

# How

Add `#ifdef DEBUG` in several places in
`Exponent/Kernel/AppLoader/EXAppLoader.m`

# Test Plan

- CI should pass
- Test Expo Go builds locally and verify that updates are not loaded,
and that nothing else is broken

# Checklist

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

- [x] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [x] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [x] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# c8452ff7 20-Jan-2022 Bartłomiej Bukowski <[email protected]>

[iOS][Expo Go] Add EXAppViewController as a direct child of EXRootViewController (#15960)


# 75d03742 07-Oct-2021 Bartłomiej Bukowski <[email protected]>

[iOS][Expo Go] Remove legacy screen orientation code (#14649)


# 50661f5c 30-Aug-2021 Will Schurman <[email protected]>

[expo-manifests] Rename RawManifest -> Manifest (#14194)


# 706a476d 26-Aug-2021 Will Schurman <[email protected]>

[expo-updates] Factor out raw manifests into their own package (#14183)


# 167fd314 30-Jun-2021 Will Schurman <[email protected]>

[ios] Use stable manifest ID where applicable (#13280)


# c8841cb0 26-Apr-2021 Will Schurman <[email protected]>

[updates] Factor out raw manifest into wrapper class (#12631)


# 937e5c73 14-Aug-2020 Brent Vatne <[email protected]>

[ios] Make reloadVisibleApp work on Home so you can press cmd+r to reload when working on it (#6296)


# 56962d29 02-Jul-2020 Tomasz Sapeta <[email protected]>

[ios] Migrate AppDelegate to Swift �� (#9045)

# Why

Inspired by my God of Swift: #8529
Also I'm using Swift in `expo-dev-menu`, so converting to AppDelegate seems like a good idea to start usin

[ios] Migrate AppDelegate to Swift �� (#9045)

# Why

Inspired by my God of Swift: #8529
Also I'm using Swift in `expo-dev-menu`, so converting to AppDelegate seems like a good idea to start using Swift in the client.

# How

- Converted `EXAppDelegate.{h,m}` into `AppDelegate.swift`
- Removed `main.m` (`@UIApplicatonMain` does it)
- Set `DEBUG` and `RELEASE` flags for compatibility

# Test Plan

Simulator build seems to work as great as expected.

show more ...


# f67462bc 21-Apr-2020 Tomasz Sapeta <[email protected]>

[ios][home] Add three finger gesture to open the dev menu + some refactoring (#7891)

# Why

Fixes #7644 and brings us closer to the separate `expo-dev-menu` package that can live without kernel.

[ios][home] Add three finger gesture to open the dev menu + some refactoring (#7891)

# Why

Fixes #7644 and brings us closer to the separate `expo-dev-menu` package that can live without kernel.
Also fixed https://twitter.com/bantingGamer/status/1251154340129062917

# How

- Added `EXDevMenuManager` singleton that manages the dev menu. Most parts of it were in kernel or some others classes strongly connected with kernel. Now, kernel is just its delegate.
- Refactored `EXKernelDevMotionHandler` to `EXDevMenuMotionInterceptor` which is much clearer and makes it possible to uninstall the interceptor (these interceptors are kinda hacky, I tried not to do them this way but well, RN does the same ��).
- Added `EXDevMenuGestureRecognizer` for long press gesture, with minimum press duration set to 0.5s and with light impact haptic feedback.
- Added `EXDevMenuGestureInterceptor` that swaps the default implementation of `UIView#gestureRecognizers`, but only for `UIWindow`s. This is needed to make three-finger gesture work everywhere in the app.
- Renamed `EXMenuViewController` to `EXDevMenuViewController` (all dev menu classes should be prefixed by `EXDevMenu`) and again, removed some connections to kernel.
- Added UI in user settings to select dev menu gestures (can select them separately).
- Fixed an issue with dev menu view being below modals in the view hierarchy.

# Test Plan

So far I've tested it only with published experience. I'm gonna do smoke tests on dev apps later.
I mostly focused on testing whether:
- the dev menu works in general (after refactoring)
- three-finger gesture works on the initial screen of the app, on the modals and on the dev menu itself
- all combinations of selected gestures work as expected
- selected gestures persist after killing and relaunching the client

show more ...


# 24a0cefb 30-Jan-2020 Tomasz Sapeta <[email protected]>

[ios][home] Redesign DevMenu on iOS (#6793)

# Why

Part of #6521

# How

- Refactored JS code responsible for rendering DevMenu and converted it to TypeScript.
- Redesigned DevMenu to be a b

[ios][home] Redesign DevMenu on iOS (#6793)

# Why

Part of #6521

# How

- Refactored JS code responsible for rendering DevMenu and converted it to TypeScript.
- Redesigned DevMenu to be a bottom sheet instead of a modal to improve user experience.
- Upgraded `react-navigation-stack` to `^2.0.15`.
- In/out DevMenu animations are now controlled by JavaScript side (less native code).
- Moved Kernel's module methods related to DevMenu to separate `DevMenuModule` file (I think it makes the code using it clearer).
- `Nux` wasn't clear to me what it is and what it does, so I suggest renaming it to `Onboarding`.
- Prepared some stuff to be used on Android as well (Android support will come in a separate PR).
- Removed legacy menu gesture from both native code and from home user settings.
- Published dev home with those changes.

# Test Plan

- [x] Test on experience in debug mode
- [x] Test on experience in production mode
- [x] Test on snacks
- [x] Test on older SDKs
- [x] Test on simulators
- [x] Test that onboarding shows up once you open the experience for the first time or you didn't accept it yet (clicked `Got it` button).

# Demo

Expanding/collapsing demo on the left, onboarding screen on the right.

![ezgif com-resize](https://user-images.githubusercontent.com/1714764/72625046-423ddb00-3948-11ea-937a-155aa154857a.gif) ![Simulator Screen Shot - iPhone 11 Pro Max - 2020-01-20 at 16 11 21](https://user-images.githubusercontent.com/1714764/72737399-c5a53980-3b9f-11ea-99fb-d246bfb8491e.png)

show more ...


# a7100618 13-Nov-2019 Stanisław Chmiela <[email protected]>

[expo] Remove unused dev menu (#6249)

# Why

To clean up some technical debt.

# How

Removed `addDevMenu` functionality from Home and then all the leftovers from native side.

# Test Plan

[expo] Remove unused dev menu (#6249)

# Why

To clean up some technical debt.

# How

Removed `addDevMenu` functionality from Home and then all the leftovers from native side.

# Test Plan

CI should build the apps.

show more ...


# b333b418 08-Nov-2019 Brent Vatne <[email protected]>

[ios][android] Make redbox and rr (android) and cmd+r (ios) reload manifest and JS rather than just JS (#6134)

* [ios] Make cmd+r reload manifest and JS rather than just JS

* [ios] Reload from de

[ios][android] Make redbox and rr (android) and cmd+r (ios) reload manifest and JS rather than just JS (#6134)

* [ios] Make cmd+r reload manifest and JS rather than just JS

* [ios] Reload from dev menu grabs manifest too

* [ios] Clean up reload code and ensure redbox injection code works outside of developer mode

* [android] Reload on dev menu also reloads from manifest

* [ios] Fix typo

* [android] Reload from manifest from redbox and with rr shortcut

* [android] Address feedback

* [react-native-lab] Copy changes to ReactAndroid over

* [android] Clean up extra newlines

* [react-native-lab] Update on sdk-36 branch

show more ...


# 373d5b21 12-Sep-2019 Brent Vatne <[email protected]>

[home][ncl][ios] Fix menu view status bar updating and set appropriate status bar color in ncl app


# bbef49b2 05-Sep-2019 Brent Vatne <[email protected]>

[ios][home] Fix cases where projects were not added to history as expected. Fixes #5443


# d57b5fd1 14-Feb-2019 Brent Vatne <[email protected]>

[ios] Ensure code to hide inactive app record controller is executed (#3445)


# 4d0e0805 01-Feb-2019 Eric Samelson <[email protected]>

[ios][home] remove deprecated client-side authentication checks for opening projects


# 3b6a24fb 13-Dec-2018 Tomasz Sapeta <[email protected]>

[ios][android][sdk][ncl] Background location, geofencing and background fetch (#2338)

# Why

Canny issues:
- https://expo.canny.io/feature-requests/p/background-tasks-support
- https://expo.cann

[ios][android][sdk][ncl] Background location, geofencing and background fetch (#2338)

# Why

Canny issues:
- https://expo.canny.io/feature-requests/p/background-tasks-support
- https://expo.canny.io/feature-requests/p/background-location-tracking
- https://expo.canny.io/feature-requests/p/geofencing-api

Related PR:
- https://github.com/expo/universe/pull/3201 (docs)

# How

The core of this PR is to implement TaskManager that provides an API to manage tasks, especially these that run while the app is in the background. I hope I documented this piece enough so I don't have to write it here again ��

This PR also adds three ways of how we can use background tasks:
- Background location updates
`Location.startLocationUpdatesAsync`, `Location.stopLocationUpdatesAsync`, `Location.hasStartedLocationUpdatesAsync`
- Geofencing
`Location.startGeofencingAsync`, `Location.stopGeofencingAsync`, `Location.hasStartedGeofencingAsync`
- Background fetch
`expo-background-fetch` module, *iOS only so far*

Also, to improve the quality of `expo-location`, I've deprecated `enableHighAccuracy` option and introduced a new one called `accuracy`. It allows to use all possible accuracies provided by iOS platform. Android has fewer options of accuracy, but I've made simple mapping (see https://github.com/expo/expo/pull/2338/files#diff-66bdbbc66d3410d9198aa17584b5409eR633).

All new modules and `expo-location` are now TypeScripted ��

# Test Plan

New APIs examples in `native-component-list`:
- `BackgroundFetch` - shows the status and the date of the last background fetch which can be manually triggered in Xcode (Debug -> Simulate background fetch).
- `Location` -> `Background location map` - it tracks your location by drawing a polyline.
- `Location` -> `Geofencing map` - this one will work better once we merge #2316, as it should show local notifications when the device enters/exits a region.
- `TaskManager` - shows all registered tasks for the experience.

There are also some quick tests in `test-suite` for the new methods in `Location` and `TaskManager` modules.

show more ...


# 2c15bc4d 22-Aug-2018 quinlanj <[email protected]>

allow selfhosted apps to be opened in iOS home (#3028)

fbshipit-source-id: 8dcd86a


# d718b4b8 06-Jun-2018 Ben Roth <[email protected]>

Clean up most of the implicit retain self warnings

There are some still left in vendored code or in places I wasn't sure about.
Helps with https://github.com/expo/universe/issues/2581

fbshipit-sour

Clean up most of the implicit retain self warnings

There are some still left in vendored code or in places I wasn't sure about.
Helps with https://github.com/expo/universe/issues/2581

fbshipit-source-id: 97d159f

show more ...


# ce63205b 11-May-2018 Tomasz Sapeta <[email protected]>

restore modal controllers when app reopens (#2484)

fbshipit-source-id: 56f7b02


12