public static IDisposable ManageDismissableTooltip(this IOnboardingStep step, UIView tooltip, IOnboardingStorage storage) { var dismissableStep = step.ToDismissable(step.GetType().FullName, storage); dismissableStep.DismissByTapping(tooltip); return(dismissableStep.ManageVisibilityOf(tooltip)); }
public static IDisposable ManageDismissableTooltip(this IOnboardingStep step, PopupWindow tooltip, View anchor, Func <PopupWindow, View, PopupOffsets> popupOffsetsGenerator, IOnboardingStorage storage) { Ensure.Argument.IsNotNull(tooltip, nameof(tooltip)); Ensure.Argument.IsNotNull(anchor, nameof(anchor)); var dismissableStep = step.ToDismissable(step.GetType().FullName, storage); dismissableStep.DismissByTapping(tooltip, () => { }); return(dismissableStep.ManageVisibilityOf(tooltip, anchor, popupOffsetsGenerator)); }
public static IDisposable ManageDismissableTooltip(this IOnboardingStep step, PopupWindow tooltip, View anchor, Func <PopupWindow, View, PopupOffsets> popupOffsetsGenerator, IOnboardingStorage storage) { Ensure.Argument.IsNotNull(anchor, nameof(tooltip)); Ensure.Argument.IsNotNull(anchor, nameof(anchor)); var dismissableStep = step.ToDismissable(step.GetType().FullName, storage); void OnDismiss(object sender, EventArgs args) { tooltip.Dismiss(); dismissableStep.Dismiss(); } tooltip.ContentView.Click += OnDismiss; return(dismissableStep.ManageVisibilityOf(tooltip, anchor, popupOffsetsGenerator)); }