class MainPresenter extends AbstractMvpPresenter<Main.View, Void> implements Main.Presenter<Main.View, Void> {

    @Override
    public void onBackPressed(boolean isDrawerOpen, boolean isDetailFragment, int backStackEntryCount) {
        if (isDrawerOpen) {
            mView.closeDrawer();
        } else {
            if (isDetailFragment) {
                if (backStackEntryCount == 0) {
                    // open default all list
                    onNavigationItemSelected(R.id.nav_all);
                    mView.updateManualFetchFabStatus(true);
                    return;
                }
            }
            mView.onSuperBackPressed();
        }
    }

    public  MainPresenter();
    public  MainPresenter(UseCaseHandler useCaseHandler, ManuallyFetchTodaysSentenceUC fetchTodaysSentenceUseCase);

}