Class BaseDialogFragment<T extends Message>
- java.lang.Object
-
- androidx.fragment.app.Fragment
-
- androidx.fragment.app.DialogFragment
-
- com.batch.android.messaging.fragment.BaseDialogFragment<T>
-
- All Implemented Interfaces:
android.content.ComponentCallbacks,android.content.DialogInterface.OnCancelListener,android.content.DialogInterface.OnDismissListener,android.view.View.OnCreateContextMenuListener,androidx.lifecycle.LifecycleOwner,androidx.lifecycle.ViewModelStoreOwner,ListenableDialog,ImageHelper.Cache
- Direct Known Subclasses:
AlertTemplateFragment,ImageTemplateFragment,ModalTemplateFragment,UniversalTemplateFragment,WebViewTemplateFragment
public abstract class BaseDialogFragment<T extends Message> extends androidx.fragment.app.DialogFragment implements ListenableDialog, ImageHelper.Cache
Base dialog fragment that implements the dismiss events
-
-
Field Summary
Fields Modifier and Type Field Description protected MessagingAnalyticsDelegateanalyticsDelegateprotected longautoCloseAtUptimeprotected booleanautomaticallyBeginAutoCloseprotected android.util.LruCache<java.lang.String,AsyncImageDownloadTask.Result>imageCacheprotected MessagingModulemessagingModule
-
Constructor Summary
Constructors Constructor Description BaseDialogFragment()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidbeginAutoCloseCountdown()protected abstract booleancanAutoClose()protected voiddismissSafely()AsyncImageDownloadTask.Resultget(java.lang.String key)protected abstract intgetAutoCloseDelayMillis()protected TgetMessageModel()protected BatchMessagegetPayloadMessage()protected abstract voidonAutoCloseCountdownStarted()voidonCancel(android.content.DialogInterface dialog)voidonCreate(android.os.Bundle savedInstanceState)voidonDismiss(android.content.DialogInterface dialog)voidonSaveInstanceState(android.os.Bundle outState)voidonStart()voidonStop()protected abstract voidperformAutoClose()voidput(AsyncImageDownloadTask.Result result)protected voidscheduleAutoCloseTask()voidsetDialogEventListener(DialogEventListener eventListener)protected voidsetMessageArguments(BatchMessage payloadMessage, T messageModel)protected voidunscheduleAutoCloseTask()-
Methods inherited from class androidx.fragment.app.DialogFragment
dismiss, dismissAllowingStateLoss, getDialog, getShowsDialog, getTheme, isCancelable, onActivityCreated, onAttach, onCreateDialog, onDestroyView, onDetach, onGetLayoutInflater, setCancelable, setShowsDialog, setStyle, setupDialog, show, show, showNow
-
Methods inherited from class androidx.fragment.app.Fragment
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, getViewLifecycleOwner, getViewLifecycleOwnerLiveData, getViewModelStore, hashCode, hasOptionsMenu, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isMenuVisible, isRemoving, isResumed, isStateSaved, isVisible, onActivityResult, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreateAnimation, onCreateAnimator, onCreateContextMenu, onCreateOptionsMenu, onCreateView, onDestroy, onDestroyOptionsMenu, onHiddenChanged, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPrepareOptionsMenu, onRequestPermissionsResult, onResume, onViewCreated, onViewStateRestored, postponeEnterTransition, registerForContextMenu, requestPermissions, requireActivity, requireContext, requireFragmentManager, requireHost, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivity, startActivityForResult, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu
-
-
-
-
Field Detail
-
automaticallyBeginAutoClose
protected boolean automaticallyBeginAutoClose
-
autoCloseAtUptime
protected long autoCloseAtUptime
-
messagingModule
protected MessagingModule messagingModule
-
analyticsDelegate
protected MessagingAnalyticsDelegate analyticsDelegate
-
imageCache
protected android.util.LruCache<java.lang.String,AsyncImageDownloadTask.Result> imageCache
-
-
Method Detail
-
setMessageArguments
protected void setMessageArguments(BatchMessage payloadMessage, T messageModel)
-
onCreate
public void onCreate(@Nullable android.os.Bundle savedInstanceState)- Overrides:
onCreatein classandroidx.fragment.app.DialogFragment
-
onSaveInstanceState
public void onSaveInstanceState(@NonNull android.os.Bundle outState)- Overrides:
onSaveInstanceStatein classandroidx.fragment.app.DialogFragment
-
getPayloadMessage
protected BatchMessage getPayloadMessage()
-
getMessageModel
protected T getMessageModel()
-
setDialogEventListener
public void setDialogEventListener(DialogEventListener eventListener)
- Specified by:
setDialogEventListenerin interfaceListenableDialog
-
put
public void put(@NonNull AsyncImageDownloadTask.Result result)- Specified by:
putin interfaceImageHelper.Cache
-
get
@Nullable public AsyncImageDownloadTask.Result get(@NonNull java.lang.String key)
- Specified by:
getin interfaceImageHelper.Cache
-
onStart
public void onStart()
- Overrides:
onStartin classandroidx.fragment.app.DialogFragment
-
onStop
public void onStop()
- Overrides:
onStopin classandroidx.fragment.app.DialogFragment
-
onDismiss
public void onDismiss(android.content.DialogInterface dialog)
- Specified by:
onDismissin interfaceandroid.content.DialogInterface.OnDismissListener- Overrides:
onDismissin classandroidx.fragment.app.DialogFragment
-
onCancel
public void onCancel(android.content.DialogInterface dialog)
- Specified by:
onCancelin interfaceandroid.content.DialogInterface.OnCancelListener- Overrides:
onCancelin classandroidx.fragment.app.DialogFragment
-
dismissSafely
protected void dismissSafely()
-
beginAutoCloseCountdown
protected void beginAutoCloseCountdown()
-
scheduleAutoCloseTask
protected void scheduleAutoCloseTask()
-
unscheduleAutoCloseTask
protected void unscheduleAutoCloseTask()
-
onAutoCloseCountdownStarted
protected abstract void onAutoCloseCountdownStarted()
-
canAutoClose
protected abstract boolean canAutoClose()
-
getAutoCloseDelayMillis
protected abstract int getAutoCloseDelayMillis()
-
performAutoClose
protected abstract void performAutoClose()
-
-