package com.gettingmobile.goodnews.tip;
import android.app.Activity;
import com.gettingmobile.android.app.actions.AbstractAction;
import com.gettingmobile.android.app.actions.ActionContext;
import com.gettingmobile.goodnews.Application;
public class TipGroupAction extends AbstractAction<Application> {
private final int tipGroupId;
private final boolean unshownOnly;
public TipGroupAction(int tipGroupId, boolean unshownOnly) {
this.tipGroupId = tipGroupId;
this.unshownOnly = unshownOnly;
}
public static void showTips(final Application app, final Activity activity, final TipManager tipManager,
final int tipGroupId, final boolean unshownOnly) {
if (tipGroupId != TipManager.NO_TIPS) {
final VisualTipController vtc = new VisualTipController(app, activity, tipManager, tipGroupId, unshownOnly,
new VisualTipController.OnDismissListener() {
@Override
public void onVisualTipsDismissed() {
TipDialogHandler.start(app, activity, tipManager, tipGroupId, unshownOnly);
}
});
if (unshownOnly) {
vtc.showDelayed();
} else {
vtc.show();
}
}
}
@Override
public boolean onFired(final ActionContext<? extends Application> context) {
showTips(context.getApp(), context.getActivity(), context.getApp().getTipManager(), tipGroupId, unshownOnly);
return true;
}
}