Package-level declarations
Types
This helps to restore properties of the UI/SystemUI when returning from fullscreen mode. NewPlayerViewModelImpl uses this to store the properties when switching to a fullscreen mode. When returning from a fullscreen mode NewPlayerViewModelImpl will store the current EmbeddedUiConfig in the NewPlayerUIState. When returning from fullscreen mode NewPlayerUI will then restore that configuration.
Shows the state the UI is rendering. In the manner of MVVM, NewPlayerViewModel sends this state over to NewPlayerUI, to tell it what should be rendered.
The NewPlayerViewModel must live and be owned by an Activity context.
A dummy/placeholder implementation of the NewPlayerViewModel
This depicts the UI mode. In layman's terms you could say it depicts which of NewPlayer's many UI screens should be visible. The UIModeState can be derived from the PlayMode. However, while PlayMode depicts in which mode to play a certain item in, UIModeState is more detailed and depicts the actually visible UI. Because of this multiple UIModeStates can be mapped to the same PlayMode.