/* Hide and remove the SuperToast */ protected void removeSuperToast(SuperToast superToast) { final WindowManager windowManager = superToast.getWindowManager(); final View toastView = superToast.getView(); if (windowManager != null) { mQueue.poll(); windowManager.removeView(toastView); sendMessageDelayed(superToast, Messages.DISPLAY_SUPERTOAST, 500); if (superToast.getOnDismissListener() != null) { superToast.getOnDismissListener().onDismiss(superToast.getView()); } } }
/* Cancels/removes all showing pending SuperToasts */ protected void cancelAllSuperToasts() { removeMessages(Messages.ADD_SUPERTOAST); removeMessages(Messages.DISPLAY_SUPERTOAST); removeMessages(Messages.REMOVE_SUPERTOAST); for (SuperToast superToast : mQueue) { if (superToast.isShowing()) { superToast.getWindowManager().removeView(superToast.getView()); } } mQueue.clear(); }
/* Displays a SuperToast */ private void displaySuperToast(SuperToast superToast) { if (superToast.isShowing()) { /* If the SuperToast is already showing do not show again */ return; } final WindowManager windowManager = superToast.getWindowManager(); final View toastView = superToast.getView(); final WindowManager.LayoutParams params = superToast.getWindowManagerParams(); if (windowManager != null) { windowManager.addView(toastView, params); } sendMessageDelayed(superToast, Messages.REMOVE_SUPERTOAST, superToast.getDuration() + 500); }