• Chris Bracken's avatar
    Support inactive, suspending AppLifecycleStates (#10306) · 9452a344
    Chris Bracken authored
    * Rolls the engine to 75c74dc463d56e17be10315cfde409010fd8f90b.
    * Adds framework support for the `AppLifecycleState.inactive` and `AppLifecycleState.suspending` states.
    
    What are the new states?
    ------------------------
    * `AppLifecycleState.inactive` is emitted on iOS only and corresponds to iOS's foreground inactive state. Current iOS state transitions are:
    `resumed` <--> `inactive` <--> `paused`
    
    * `AppLifecycleState.suspending` is currently emitted on Android only and corresponds to the
    transition to Android's stopped state. Current Android state transitions are:
    `resumed` <--> `paused` --> `suspending` --> `resumed`
    
    These transitions may change in future.
    
    This is a breaking change on iOS
    --------------------------------
    
    This changes the semantics of the `AppLifecycleState.paused` state on
    iOS. The behaviour associated with this state is unchanged on Android.
    
    For background on iOS application states see the state transition
    diagram in the [App Programming Guide for iOS](https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/TheAppLifeCycle/TheAppLifeCycle.html#//apple_ref/doc/uid/TP40007072-CH2-SW6).
    
    On iOS, prior to this change, `AppLifecycleState.paused` corresponded to
    a transition to the _foreground inactive_ state. It now corresponds to a
    transition to the _background state_. The newly-added
    `AppLifecycleState.inactive` state now corresponds to entering the
    _foreground inactive_ state, which (currently) has no exact analogue on
    Android.
    
    Briefly, the _foreground inactive_ state is the state entered when
    switching from an app to the app switcher, receiving a phone call, or
    responding to a TouchID request. Apps are permitted to continue
    animating/updating views in this state if desired. From the _foreground
    inactive_ state, the app may transition back to _active_ (e.g., entering
    the app switcher then resuming the app), or to the _background_ state
    (e.g., switching to the home screen or another app).
    
    What to change
    --------------
    If your app does not handle the `AppLifecycleState.paused` state in a
    `WidgetsBindingObserver.didChangeAppLifecycleState` implementation, no
    changes are required.
    
    If you do handle `AppLifecycleState.paused`, you may additionally wish
    to also handle `AppLifecycleState.inactive`. For example, games should
    probably pause on entering the app switcher rather than wait to be
    backgrounded.
    
    More details
    ------------
    For background on Android application states see the state transition
    diagram in the [Android Activity Lifecycle docs](https://developer.android.com/guide/components/activities/activity-lifecycle.html#alc).
    9452a344
Name
Last commit
Last update
..
align_test.dart Loading commit data...
animated_container_test.dart Loading commit data...
animated_cross_fade_test.dart Loading commit data...
animated_list_test.dart Loading commit data...
animated_positioned_test.dart Loading commit data...
animated_size_test.dart Loading commit data...
app_overrides_test.dart Loading commit data...
aspect_ratio_test.dart Loading commit data...
async_test.dart Loading commit data...
banner_test.dart Loading commit data...
baseline_test.dart Loading commit data...
binding_test.dart Loading commit data...
box_decoration_test.dart Loading commit data...
box_sliver_mismatch_test.dart Loading commit data...
build_scope_test.dart Loading commit data...
center_test.dart Loading commit data...
clamp_overscrolls_test.dart Loading commit data...
clip_test.dart Loading commit data...
column_test.dart Loading commit data...
container_test.dart Loading commit data...
coordinates_test.dart Loading commit data...
custom_multi_child_layout_test.dart Loading commit data...
custom_paint_test.dart Loading commit data...
custom_single_child_layout_test.dart Loading commit data...
date_picker_test.dart Loading commit data...
default_text_style_test.dart Loading commit data...
dismissible_test.dart Loading commit data...
dispose_ancestor_lookup_test.dart Loading commit data...
draggable_test.dart Loading commit data...
drawer_test.dart Loading commit data...
ensure_visible_test.dart Loading commit data...
fitted_box_test.dart Loading commit data...
flex_test.dart Loading commit data...
flow_test.dart Loading commit data...
focus_test.dart Loading commit data...
form_test.dart Loading commit data...
fractionally_sized_box_test.dart Loading commit data...
framework_test.dart Loading commit data...
gesture_detector_test.dart Loading commit data...
global_keys_duplicated_test.dart Loading commit data...
global_keys_moving_test.dart Loading commit data...
grid_paper_test.dart Loading commit data...
grid_view_layout_test.dart Loading commit data...
grid_view_test.dart Loading commit data...
heroes_test.dart Loading commit data...
hit_testing_test.dart Loading commit data...
hyperlink_test.dart Loading commit data...
icon_test.dart Loading commit data...
icon_theme_data_test.dart Loading commit data...
image_icon_test.dart Loading commit data...
image_resolution_test.dart Loading commit data...
image_test.dart Loading commit data...
implicit_animations_test.dart Loading commit data...
independent_widget_layout_test.dart Loading commit data...
inherited_test.dart Loading commit data...
init_state_test.dart Loading commit data...
key_test.dart Loading commit data...
layout_builder_and_global_keys_test.dart Loading commit data...
layout_builder_and_parent_data_test.dart Loading commit data...
layout_builder_and_state_test.dart Loading commit data...
layout_builder_mutations_test.dart Loading commit data...
layout_builder_test.dart Loading commit data...
linked_scroll_view_test.dart Loading commit data...
list_view_builder_test.dart Loading commit data...
list_view_correction_test.dart Loading commit data...
list_view_fling_test.dart Loading commit data...
list_view_horizontal_test.dart Loading commit data...
list_view_misc_test.dart Loading commit data...
list_view_relayout_test.dart Loading commit data...
list_view_test.dart Loading commit data...
list_view_vertical_test.dart Loading commit data...
list_view_viewporting_test.dart Loading commit data...
list_view_with_inherited_test.dart Loading commit data...
listener_test.dart Loading commit data...
listview_end_append_test.dart Loading commit data...
locale_query_test.dart Loading commit data...
media_query_test.dart Loading commit data...
modal_barrier_test.dart Loading commit data...
multichild_test.dart Loading commit data...
navigator_and_layers_test.dart Loading commit data...
navigator_replacement_test.dart Loading commit data...
navigator_test.dart Loading commit data...
nested_scroll_view_test.dart Loading commit data...
notification_test.dart Loading commit data...
overflow_box_test.dart Loading commit data...
overlay_test.dart Loading commit data...
overscroll_indicator_test.dart Loading commit data...
page_forward_transitions_test.dart Loading commit data...
page_storage_test.dart Loading commit data...
page_transitions_test.dart Loading commit data...
page_view_test.dart Loading commit data...
pageable_list_test.dart Loading commit data...
parent_data_test.dart Loading commit data...
performance_overlay_test.dart Loading commit data...
placeholder_test.dart Loading commit data...
positioned_test.dart Loading commit data...
raw_keyboard_listener_test.dart Loading commit data...
reassemble_test.dart Loading commit data...
remember_scroll_position_test.dart Loading commit data...
render_object_widget_test.dart Loading commit data...
reparent_state_harder_test.dart Loading commit data...
reparent_state_test.dart Loading commit data...
reparent_state_with_layout_builder_test.dart Loading commit data...
rotated_box_test.dart Loading commit data...
routes_test.dart Loading commit data...
row_test.dart Loading commit data...
run_app_test.dart Loading commit data...
scroll_behavior_test.dart Loading commit data...
scroll_controller_test.dart Loading commit data...
scroll_events_test.dart Loading commit data...
scroll_interaction_test.dart Loading commit data...
scroll_notification_test.dart Loading commit data...
scroll_physics_test.dart Loading commit data...
scroll_simulation_test.dart Loading commit data...
scroll_view_test.dart Loading commit data...
scrollable_dispose_test.dart Loading commit data...
scrollable_fling_test.dart Loading commit data...
scrollable_grid_test.dart Loading commit data...
scrollable_list_hit_testing_test.dart Loading commit data...
scrollable_of_test.dart Loading commit data...
scrollable_test.dart Loading commit data...
semantics_1_test.dart Loading commit data...
semantics_2_test.dart Loading commit data...
semantics_3_test.dart Loading commit data...
semantics_4_test.dart Loading commit data...
semantics_5_test.dart Loading commit data...
semantics_7_test.dart Loading commit data...
semantics_8_test.dart Loading commit data...
semantics_debugger_test.dart Loading commit data...
semantics_test.dart Loading commit data...
semantics_tester.dart Loading commit data...
set_state_1_test.dart Loading commit data...
set_state_2_test.dart Loading commit data...
set_state_3_test.dart Loading commit data...
set_state_4_test.dart Loading commit data...
shader_mask_test.dart Loading commit data...
single_child_scroll_view_test.dart Loading commit data...
size_changed_layout_notification_test.dart Loading commit data...
sized_box_test.dart Loading commit data...
sliver_fill_remaining_test.dart Loading commit data...
sliver_fill_viewport_test.dart Loading commit data...
sliver_prototype_item_extent_test.dart Loading commit data...
slivers_appbar_floating_test.dart Loading commit data...
slivers_appbar_pinned_test.dart Loading commit data...
slivers_appbar_scrolling_test.dart Loading commit data...
slivers_block_global_key_test.dart Loading commit data...
slivers_block_test.dart Loading commit data...
slivers_evil_test.dart Loading commit data...
slivers_padding_test.dart Loading commit data...
slivers_protocol_test.dart Loading commit data...
slivers_test.dart Loading commit data...
stack_test.dart Loading commit data...
state_setting_in_scrollables_test.dart Loading commit data...
stateful_component_test.dart Loading commit data...
stateful_components_test.dart Loading commit data...
states.dart Loading commit data...
status_transitions_test.dart Loading commit data...
syncing_test.dart Loading commit data...
table_test.dart Loading commit data...
test_widgets.dart Loading commit data...
text_formatter_test.dart Loading commit data...
text_test.dart Loading commit data...
ticker_provider_test.dart Loading commit data...
title_test.dart Loading commit data...
transform_test.dart Loading commit data...
transitions_test.dart Loading commit data...
unique_widget_test.dart Loading commit data...
wrap_test.dart Loading commit data...