Package com.tomtom.ivi.platform.systemui.api.common.frontendcoordinator
Types
Link copied to clipboard
A factory used to create a FrontendContext to provide when creating a Frontend instance.
Link copied to clipboard
typealias FrontendCoordinationRulesFactory<PR> = (frontendRegistry: FrontendRegistry, panelRegistry: PR) -> Collection<FrontendCoordinationRule>
Content copied to clipboard
Link copied to clipboard
class FrontendCoordinator<PR : PanelRegistry>( val lifecycleOwner: LifecycleOwner, val iviServiceProvider: IviInstanceBoundIviServiceProvider, frontendMetadata: Collection<FrontendMetadata>, frontendContextFactory: FrontendContextFactory, panelRegistryFactory: PanelRegistryFactory<PR>, frontendCoordinationRulesFactory: FrontendCoordinationRulesFactory<PR>)
Content copied to clipboard
Coordinates the Frontends within the IVI system. It manages the lifecycle of frontends, determines which of the frontend's panels should be shown in the UI, and enables the business logic rules between them.
Link copied to clipboard
class FrontendRegistry( lifecycleOwner: LifecycleOwner, frontendMetadata: Collection<FrontendMetadata>, frontendContextFactory: FrontendContextFactory)
Content copied to clipboard
Manages the lifecycles of Frontends based on the given frontendMetadata.
Link copied to clipboard
class IviFrontendContext( val iviServiceProvider: IviInstanceBoundIviServiceProvider, val staticConfigurationProvider: StaticConfigurationProvider, panelTypesAvailableToFrontend: PanelTypeSet, panelTypesSupportedBySystemUi: PanelTypeSet) : FrontendContext
Content copied to clipboard
A basic default implementation for FrontendContext.
Link copied to clipboard
class IviPanelRegistry( val homePanel: LiveData<HomePanel?>, val mainMenuPanel: LiveData<MainMenuPanel?>, val controlCenterPanels: LiveData<PanelList<ControlCenterPanel>>, val mainProcessPanel: LiveData<MainProcessPanel?>, val expandedProcessPanel: LiveData<ExpandedProcessPanel?>, val taskPanelStackData: LiveData<TaskPanelStackData>, val notificationPanelData: LiveData<NotificationPanelData>, val guidancePanel: LiveData<GuidancePanel?>, val settingsPanel: LiveData<SettingsPanel?>, val searchPanel: LiveData<SearchPanel?>, val debugPanel: LiveData<DebugPanel?>, val overlayPanels: LiveData<PanelList<OverlayPanel>>, val modalPanelStackData: LiveData<ModalPanelStackData>) : PanelRegistry
Content copied to clipboard
A class that indicates the currently active Panels.
Link copied to clipboard
An identifying interface for classes that indicate the currently active Panels.
Link copied to clipboard
typealias PanelRegistryFactory<PR> = (frontendRegistry: FrontendRegistry) -> PR
Content copied to clipboard