Skip to content
This repository has been archived by the owner on Jun 21, 2023. It is now read-only.

Update to application state management and associated view setup and rendering #432

Merged
merged 13 commits into from Sep 14, 2020

Conversation

julianrex
Copy link
Contributor

@julianrex julianrex commented Sep 14, 2020

This PR is essentially a port/continuation of mapbox/mapbox-gl-native#14222 in this repo, and addresses a number of issues in #440.

It adds:

  • Update application state & rendering management on resigning/become active, entering the background/foreground, window changes. I've tried to simplify each call, as there are a number of paths that an application can take.
  • A private MGLApplication protocol to the SDK, allowing us to mock application events for testing. This also paves the way for removing UIApplication.shared references from the SDK.
  • Adds integration tests to test rendering correctly starts/stop/pauses/resumes during application lifecycle events
  • Removes the emergencyRecreateGL method, that has been defunct for a while.
  • Adds an undocumented property (MGLMapView.renderingInInactiveStateEnabled) to disable rendering when the application resigns active. This should be considered prone to change.

@julianrex julianrex force-pushed the jrex/background-crash-orig-pr-14222-pt1 branch from 6ea14a8 to 31bec0c Compare September 14, 2020 15:45
@julianrex julianrex marked this pull request as ready for review September 14, 2020 15:58
@julianrex julianrex requested a review from a team September 14, 2020 15:58
@julianrex julianrex mentioned this pull request Sep 14, 2020
6 tasks
@fabian-guerra fabian-guerra mentioned this pull request Sep 14, 2020
6 tasks
Copy link
Contributor

@fabian-guerra fabian-guerra left a comment

Choose a reason for hiding this comment

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

LGTM. Some minor comments.

platform/ios/src/MGLMapView.mm Show resolved Hide resolved
@julianrex julianrex merged commit 21a7bbe into master Sep 14, 2020
@julianrex julianrex deleted the jrex/background-crash-orig-pr-14222-pt1 branch September 14, 2020 23:12
@julianrex julianrex mentioned this pull request Sep 14, 2020
fabian-guerra added a commit that referenced this pull request Sep 14, 2020
* changing the default size for approx ring border when zoomed out (#429)

* Approximate Location "Puck" logic updates (#427)

* updates to approximate puck drawing logic

* removing unused header

* Allow for transitive dependencies (#431)

* Fix content insets when automaticallyAdjustsScrollViewInsets is set to NO (#420)

* Fix an issue when automaticallyAdjustContentInset is set to NO

* Update tests to account for safe areas on iOS 11

* Update changelog

* Update method documentation

* Update to gl-native 5.0.0 (#438)

* Update to application state management and associated view setup and rendering (#432)

Co-authored-by: Neel Mistry <Neel.mistry@mapbox.com>
Co-authored-by: Fredrik Karlsson <bjorn.fredrik.karlsson@gmail.com>
Co-authored-by: Julian Rex <julian.rex@mapbox.com>
mappy-mobile pushed a commit to Mappy/mapbox-gl-native-ios that referenced this pull request Sep 17, 2020
reezer pushed a commit to reezer/maplibre-gl-native that referenced this pull request Apr 30, 2021
petr-pokorny-1 pushed a commit to maplibre/maplibre-native that referenced this pull request May 10, 2021
* Use DisplayLink to prevent crashes in willResignActive

* Fixed screen freeze issue in the DisplayLink PR when bringing app back to foreground. Includes relevant changes from Mapbox PR (mapbox/mapbox-gl-native-ios#432).

Co-authored-by: Jukka Hietanen <jukka.hietanen@accelbit.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants