Esempio n. 1
0
        private async void AutoCloseTask(CancellationToken token, SAPToast toast)
        {
            try
            {
                await Task.Delay(500);

                toast.ShowAnimate = "";
                await InvokeAsync(StateHasChanged);

                await Task.Delay(toast.AutoCloseDelay - TimeSpan.FromSeconds(0.5));

                toast.CloseAnimate = AnimateBook.ZoomExits.ZoomOut;
                await InvokeAsync(StateHasChanged);

                await Task.Delay(300);

                if (!token.IsCancellationRequested)
                {
                    Toasts.Remove(toast);
                    await InvokeAsync(StateHasChanged);
                }
            }
            catch (Exception e)
            {
            }
        }
Esempio n. 2
0
 internal void ToastCloseController(SAPToast toast, bool isPaused)
 {
     if (isPaused)
     {
         toast.PauseTimer();
     }
     else
     {
         toast.ResumeTimer();
     }
 }
Esempio n. 3
0
        public void CreateToast(SAPToast toast)
        {
            toast.ShowAnimate  = AnimationType;
            toast.SAPToastArea = this;
            Toasts.Add(toast);
            if (toast.ShowProgressbar)
            {
                toast.StartCountDown();
            }
            else
            {
                AutoCloseHandler(toast);
            }

            StateHasChanged();
        }
Esempio n. 4
0
        internal void DeleteToast(SAPToast toast)
        {
            toast.CloseAnimate = AnimateBook.ZoomExits.ZoomOut;
            InvokeAsync(StateHasChanged);
            Task.Delay(300);

            if (toast.ShowProgressbar)
            {
                toast.StopTimer();
            }
            toast.ShowAnimate = "";

            Toasts.Remove(toast);
            if (cts != null)
            {
                cts.Cancel();
            }
            InvokeAsync(StateHasChanged);
        }
Esempio n. 5
0
        private async void AutoCloseHandler(SAPToast toast)
        {
            cts = new CancellationTokenSource();

            await Task.Run(() => AutoCloseTask(cts.Token, toast));
        }