Package-level declarations

Media source configuration and panel types; this package contains all classes to configure how the content from a media source is displayed, as well as the classes to use to create new panels to realize new user experiences for specific media sources.

Types

Link copied to clipboard
@IviExperimental(reasons = [])
data class MediaConfiguration

Configures the behavior of the media frontend by providing a PolicyProvider for SourceId.

Link copied to clipboard
@IviExperimental(reasons = [])
class MediaFrontendContext(val frontendContext: FrontendContext, val panelStack: LiveData<out List<MediaTaskPanel>>, val mediaConfiguration: MediaConfiguration, val mediaService: MediaServiceApi, val mediaFrontendNavigation: MediaFrontendContext.MediaFrontendNavigation)

Entry point for Media related panels to communicate with their frontend and the rest of the system. Should be created by the Frontend.

Link copied to clipboard
@IviExperimental(reasons = [])
class MediaPolicyFrontendExtension(val sourcePackageName: String?, val sourceClassName: String? = null, val policyProvider: PolicyProvider) : FrontendExtension

Frontend extension for the media frontend that configures the frontend to use policyProvider when a policy is required for a media source with sourcePackageName. Policies offer a way to customize the user interface for a specific source, like adjusting browse source, login and settings user flows through the UserFlowPolicy.

Link copied to clipboard
@IviExperimental(reasons = [])
abstract class MediaTaskPanel(val mediaFrontendContext: MediaFrontendContext, val sourceId: SourceId?, initialMediaItem: IviMediaItem?) : TaskPanel

Base panel type for media-related Frontends.

Link copied to clipboard
@IviExperimental(reasons = [])
class SourcePickerView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, @AttrRes defStyleAttr: Int = MediaAttributesR.attr.ttivi_mediasourcepicker_style, @StyleRes defStyleRes: Int = 0) : FrameLayout

A view to display available media sources allowing login and browsing. If no sources are available TtEmptyStateView is shown.

Properties

Link copied to clipboard

A frontend extension for the media frontend, for sources where no specific MediaPolicyFrontendExtension is configured. For those sources, a PolicyProvider is provided with all default policies.

Functions

Link copied to clipboard

Gets the settings Activity provided by the media source. Returns null if no settings Activity exists in the media source.