Package com.tomtom.ivi.platform.systemui.api.common.frontendcoordinator.frontendcoordination

Types

A rule that ensures ModalPanels are closed when a system UI menu item is clicked.

A rule that ensures ModalPanels are closed when the active TaskPanels change.

open class ClosePanelsOnMenuItemClickFrontendCoordinationRule<P : AnyPanel>(panelClass: KClass<P>) : FrontendCoordinationRule

A rule that ensures Panels of type P are closed when a system UI menu item is clicked.

open class ClosePanelsOnTaskPanelChangeFrontendCoordinationRule<P : AnyPanel>(panelClass: KClass<P>, activeTaskPanelStackData: LiveData<TaskPanelStackData>) : FrontendCoordinationRule

A rule that ensures Panels of type P are closed when the active TaskPanels change.

Link copied to clipboard
object DefaultFrontendCoordinationRules

Provides the default FrontendCoordinationRules used by TomTom Digital Cockpit's system UI. These include menu item management, syncing notification information with the system, and closing TaskPanels and ModalPanels when needed.

class FocusMenuItemOnTaskPanelChangeFrontendCoordinationRule(    getMenuItemId: (FrontendContext) -> MenuItem.Id?,     activeHomePanel: LiveData<HomePanel?>,     activeTaskPanelStackData: LiveData<TaskPanelStackData>) : FrontendCoordinationRule

A rule that informs the MenuService of the focused menu item based on which Panels are active. When there is an activeTaskPanelStackData, the corresponding Frontend's menu item is focused. Otherwise, the menu item of the Frontend that owns the activeHomePanel is focused.

Link copied to clipboard
interface FrontendCoordinationRule

An interface for business logic that coordinates the Frontends within a system UI. Such rules commonly trigger Panels within a Frontend to open or close or update services with information derived from Frontends and their Panels.

class NotificationDisplayServiceFrontendCoordinationRule(notificationPanelData: LiveData<NotificationPanelData>) : FrontendCoordinationRule

A rule that keeps the information in NotificationDisplayService up-to-date with notificationPanelData.

A rule that informs the SystemUiMenuItemsService of the MenuItems in the given frontendMetadata.

A rule that ensures there is only a single Frontend that shows ExpandedProcessPanels at any time. It does this by closing the ExpandedProcessPanels of other Frontends when a Frontend opens a new ExpandedProcessPanel.

A rule that ensures there is only a single Frontend that shows ModalPanels at any time. It does this by closing the ModalPanels of other Frontends when a Frontend opens a new ModalPanel.

Link copied to clipboard
open class SinglePanelStackFrontendCoordinationRule<P : AnyPanel, S : PanelStackData<P>>(panelClass: KClass<P>, activeStack: LiveData<S>) : FrontendCoordinationRule

A rule that ensures there is only a single Frontend that shows Panels of type Ps at any time. It does this by closing the Panels of type Ps belonging to other Frontends when a Frontend opens a new one, causing activeStack to change.

A rule that ensures there is only a single Frontend that shows TaskPanels at any time. It does this by closing the TaskPanels of other Frontends when a Frontend opens a new TaskPanel.

class ToggleTaskPanelsOnMenuItemClickFrontendCoordinationRule(getOrCreateFrontend: (MenuItem.Id) -> Frontend?) : FrontendCoordinationRule

A rule that responds to system UI menu items being clicked by opening or closing TaskPanels. Depending on the state and behaviour of available Frontends, this rule behaves in the following manner: