IviFragment

abstract class IviFragment<P : AnyPanel, VM : FrontendViewModel<P>> : Fragment, HasDefaultViewModelProviderFactory

A base class for fragments that contain the contents of frontend panels. Typical IVI fragments are responsible for creating a layout and linking it to a ViewModel. The viewModelClass is responsible for the business logic and the state of a fragment. This is because, unlike fragments, ViewModels are persistent across configuration changes.

Parameters

P

The type of the panel that owns this fragment.

VM

The type of the ViewModel containing the fragment's persistent state.

Constructors

Link copied to clipboard
fun IviFragment()
Link copied to clipboard
fun <VM : FrontendViewModel<P>> IviFragment(viewModelClass: KClass<VM>)

Types

Link copied to clipboard
object Companion
Link copied to clipboard
open class Initializer<P : AnyPanel, F : IviFragment<P, *>>(val fragment: F, panel: P)

Wrapper used to pass a fragment that is guaranteed to be initialized properly.

Link copied to clipboard
interface IviFragmentEvents : TraceEventListener
Link copied to clipboard
class ViewFactory<B : ViewDataBinding>(    inflateFunction: (LayoutInflater, container: ViewGroup?, attachToContainer: Boolean) -> B,     setSafeAreaFunction: B.(SafeArea?) -> Unit?,     bindDataFunction: (B) -> Unit? = null)

A helper class that takes care of common tasks for creating a view in an IviFragment, such as inflation, binding a lifecycle owner and ViewModel and extracting a root view.

Inherited properties

Link copied to clipboard
@RestrictTo(value = [RestrictTo.Scope.LIBRARY])
@Nullable
var mPreviousWho: String?
Link copied to clipboard
@get:NonNull
override val savedStateRegistry: SavedStateRegistry

Functions

Link copied to clipboard
open override fun getDefaultViewModelProviderFactory(): ViewModelProvider.Factory
Link copied to clipboard
open override fun onAttach(context: Context)
Link copied to clipboard
@CallSuper
open override fun onCreate(savedInstanceState: Bundle?)
Link copied to clipboard
@CallSuper
open override fun onCreateView(    inflater: LayoutInflater,     container: ViewGroup?,     savedInstanceState: Bundle?): View?
Link copied to clipboard
@CallSuper
open override fun onDestroy()
Link copied to clipboard
@CallSuper
open override fun onDestroyView()
Link copied to clipboard
@CallSuper
open override fun onPause()
Link copied to clipboard
@CallSuper
open override fun onResume()
Link copied to clipboard
@CallSuper
open override fun onStart()
Link copied to clipboard
@CallSuper
open override fun onStop()
Link copied to clipboard
@CallSuper
open override fun onViewCreated(view: View, savedInstanceState: Bundle?)
Link copied to clipboard
@CallSuper
open override fun toString(): String

Inherited functions

Link copied to clipboard
open fun dump(    @NonNull p0: String,     @Nullable p1: FileDescriptor?,     @NonNull p2: PrintWriter,     @Nullable p3: Array<String>?)
Link copied to clipboard
operator override fun equals(@Nullable other: Any?): Boolean
Link copied to clipboard
@Nullable
fun getActivity(): FragmentActivity?
Link copied to clipboard
open fun getAllowEnterTransitionOverlap(): Boolean
Link copied to clipboard
open fun getAllowReturnTransitionOverlap(): Boolean
Link copied to clipboard
@Nullable
fun getArguments(): Bundle?
Link copied to clipboard
@NonNull
fun getChildFragmentManager(): FragmentManager
Link copied to clipboard
@Nullable
open fun getContext(): Context?
Link copied to clipboard
@NonNull
open fun getDefaultViewModelCreationExtras(): CreationExtras
Link copied to clipboard
@Nullable
open fun getEnterTransition(): Any?
Link copied to clipboard
@Nullable
open fun getExitTransition(): Any?
Link copied to clipboard
@Nullable
fun getFragmentManager(): FragmentManager?
Link copied to clipboard
@Nullable
fun getHost(): Any?
Link copied to clipboard
fun getId(): Int
Link copied to clipboard
@NonNull
fun getLayoutInflater(): LayoutInflater
@NonNull
@RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
open fun getLayoutInflater(@Nullable p0: Bundle?): LayoutInflater
Link copied to clipboard
@NonNull
open override fun getLifecycle(): Lifecycle
Link copied to clipboard
@NonNull
open fun getLoaderManager(): LoaderManager
Link copied to clipboard
@Nullable
fun getParentFragment(): Fragment?
Link copied to clipboard
@NonNull
fun getParentFragmentManager(): FragmentManager
Link copied to clipboard
@Nullable
open fun getReenterTransition(): Any?
Link copied to clipboard
@NonNull
fun getResources(): Resources
Link copied to clipboard
fun getRetainInstance(): Boolean
Link copied to clipboard
@Nullable
open fun getReturnTransition(): Any?
Link copied to clipboard
@Nullable
open fun getSharedElementEnterTransition(): Any?
Link copied to clipboard
@Nullable
open fun getSharedElementReturnTransition(): Any?
Link copied to clipboard
@NonNull
fun getString(@StringRes p0: Int): String
@NonNull
fun getString(@StringRes p0: Int, @Nullable vararg p1: Any): String
Link copied to clipboard
@Nullable
fun getTag(): String?
Link copied to clipboard
@Nullable
fun getTargetFragment(): Fragment?
Link copied to clipboard
fun getTargetRequestCode(): Int
Link copied to clipboard
@NonNull
fun getText(@StringRes p0: Int): CharSequence
Link copied to clipboard
open fun getUserVisibleHint(): Boolean
Link copied to clipboard
@Nullable
open fun getView(): View?
Link copied to clipboard
@MainThread
@NonNull
open fun getViewLifecycleOwner(): LifecycleOwner
Link copied to clipboard
@NonNull
open fun getViewLifecycleOwnerLiveData(): LiveData<LifecycleOwner>
Link copied to clipboard
@NonNull
open override fun getViewModelStore(): ViewModelStore
Link copied to clipboard
override fun hashCode(): Int
Link copied to clipboard
@RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
fun hasOptionsMenu(): Boolean
Link copied to clipboard
fun isAdded(): Boolean
Link copied to clipboard
fun isDetached(): Boolean
Link copied to clipboard
fun isHidden(): Boolean
Link copied to clipboard
fun isInLayout(): Boolean
Link copied to clipboard
@RestrictTo(value = [RestrictTo.Scope.LIBRARY_GROUP_PREFIX])
fun isMenuVisible(): Boolean
Link copied to clipboard
fun isRemoving(): Boolean
Link copied to clipboard
fun isResumed(): Boolean
Link copied to clipboard
fun isStateSaved(): Boolean
Link copied to clipboard
fun isVisible(): Boolean
Link copied to clipboard
@MainThread
@CallSuper
open fun onActivityCreated(@Nullable p0: Bundle?)
Link copied to clipboard
open fun onActivityResult(    p0: Int,     p1: Int,     @Nullable p2: Intent?)
Link copied to clipboard
@MainThread
@CallSuper
open fun onAttach(@NonNull p0: Activity)
Link copied to clipboard
@MainThread
open fun onAttachFragment(@NonNull p0: Fragment)
Link copied to clipboard
@CallSuper
open override fun onConfigurationChanged(@NonNull p0: Configuration)
Link copied to clipboard
@MainThread
open fun onContextItemSelected(@NonNull p0: MenuItem): Boolean
Link copied to clipboard
@MainThread
@Nullable
open fun onCreateAnimation(    p0: Int,     p1: Boolean,     p2: Int): Animation?
Link copied to clipboard
@MainThread
@Nullable
open fun onCreateAnimator(    p0: Int,     p1: Boolean,     p2: Int): Animator?
Link copied to clipboard
@MainThread
open override fun onCreateContextMenu(    @NonNull p0: ContextMenu,     @NonNull p1: View,     @Nullable p2: ContextMenu.ContextMenuInfo?)
Link copied to clipboard
@MainThread
open fun onCreateOptionsMenu(@NonNull p0: Menu, @NonNull p1: MenuInflater)
Link copied to clipboard
@MainThread
open fun onDestroyOptionsMenu()
Link copied to clipboard
@MainThread
@CallSuper
open fun onDetach()
Link copied to clipboard
@NonNull
open fun onGetLayoutInflater(@Nullable p0: Bundle?): LayoutInflater
Link copied to clipboard
@MainThread
open fun onHiddenChanged(p0: Boolean)
Link copied to clipboard
@UiThread
@CallSuper
open fun onInflate(    @NonNull p0: Activity,     @NonNull p1: AttributeSet,     @Nullable p2: Bundle?)
@UiThread
@CallSuper
open fun onInflate(    @NonNull p0: Context,     @NonNull p1: AttributeSet,     @Nullable p2: Bundle?)
Link copied to clipboard
@MainThread
@CallSuper
open override fun onLowMemory()
Link copied to clipboard
open fun onMultiWindowModeChanged(p0: Boolean)
Link copied to clipboard
@MainThread
open fun onOptionsItemSelected(@NonNull p0: MenuItem): Boolean
Link copied to clipboard
@MainThread
open fun onOptionsMenuClosed(@NonNull p0: Menu)
Link copied to clipboard
open fun onPictureInPictureModeChanged(p0: Boolean)
Link copied to clipboard
@MainThread
open fun onPrepareOptionsMenu(@NonNull p0: Menu)
Link copied to clipboard
@MainThread
open fun onPrimaryNavigationFragmentChanged(p0: Boolean)
Link copied to clipboard
open fun onRequestPermissionsResult(    p0: Int,     @NonNull p1: Array<String>,     @NonNull p2: IntArray)
Link copied to clipboard
@MainThread
open fun onSaveInstanceState(@NonNull p0: Bundle)
Link copied to clipboard
@MainThread
@CallSuper
open fun onViewStateRestored(@Nullable p0: Bundle?)
Link copied to clipboard
open fun postponeEnterTransition()
fun postponeEnterTransition(p0: Long, @NonNull p1: TimeUnit)
Link copied to clipboard
@MainThread
@NonNull
override fun <I : Any, O : Any> registerForActivityResult(@NonNull p0: ActivityResultContract<I, O>, @NonNull p1: ActivityResultCallback<O>): ActivityResultLauncher<I>
@MainThread
@NonNull
override fun <I : Any, O : Any> registerForActivityResult(    @NonNull p0: ActivityResultContract<I, O>,     @NonNull p1: ActivityResultRegistry,     @NonNull p2: ActivityResultCallback<O>): ActivityResultLauncher<I>
Link copied to clipboard
open fun registerForContextMenu(@NonNull p0: View)
Link copied to clipboard
fun requestPermissions(@NonNull p0: Array<String>, p1: Int)
Link copied to clipboard
@NonNull
fun requireActivity(): FragmentActivity
Link copied to clipboard
@NonNull
fun requireArguments(): Bundle
Link copied to clipboard
@NonNull
fun requireContext(): Context
Link copied to clipboard
@NonNull
fun requireFragmentManager(): FragmentManager
Link copied to clipboard
@NonNull
fun requireHost(): Any
Link copied to clipboard
@NonNull
fun requireParentFragment(): Fragment
Link copied to clipboard
@NonNull
fun requireView(): View
Link copied to clipboard
open fun setAllowEnterTransitionOverlap(p0: Boolean)
Link copied to clipboard
open fun setAllowReturnTransitionOverlap(p0: Boolean)
Link copied to clipboard
open fun setArguments(@Nullable p0: Bundle?)
Link copied to clipboard
open fun setEnterSharedElementCallback(@Nullable p0: SharedElementCallback?)
Link copied to clipboard
open fun setEnterTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setExitSharedElementCallback(@Nullable p0: SharedElementCallback?)
Link copied to clipboard
open fun setExitTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setHasOptionsMenu(p0: Boolean)
Link copied to clipboard
open fun setInitialSavedState(@Nullable p0: Fragment.SavedState?)
Link copied to clipboard
open fun setMenuVisibility(p0: Boolean)
Link copied to clipboard
open fun setReenterTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setRetainInstance(p0: Boolean)
Link copied to clipboard
open fun setReturnTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setSharedElementEnterTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setSharedElementReturnTransition(@Nullable p0: Any?)
Link copied to clipboard
open fun setTargetFragment(@Nullable p0: Fragment?, p1: Int)
Link copied to clipboard
open fun setUserVisibleHint(p0: Boolean)
Link copied to clipboard
open fun shouldShowRequestPermissionRationale(@NonNull p0: String): Boolean
Link copied to clipboard
open fun startActivity(p0: Intent)
open fun startActivity(p0: Intent, @Nullable p1: Bundle?)
Link copied to clipboard
open fun startActivityForResult(p0: Intent, p1: Int)
open fun startActivityForResult(    p0: Intent,     p1: Int,     @Nullable p2: Bundle?)
Link copied to clipboard
open fun startIntentSenderForResult(    p0: IntentSender,     p1: Int,     @Nullable p2: Intent?,     p3: Int,     p4: Int,     p5: Int,     @Nullable p6: Bundle?)
Link copied to clipboard
open fun startPostponedEnterTransition()
Link copied to clipboard
open fun unregisterForContextMenu(@NonNull p0: View)