package com.fastaccess.ui.modules.apps.folders; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.v4.content.Loader; import android.view.View; import com.fastaccess.App; import com.fastaccess.R; import com.fastaccess.data.dao.FolderModel; import com.fastaccess.provider.loader.FoldersLoader; import com.fastaccess.ui.base.mvp.presenter.BasePresenter; import java.util.List; /** * Created by Kosh on 11 Oct 2016, 7:34 PM */ public class FoldersPresenter extends BasePresenter<FoldersMvp.View> implements FoldersMvp.Presenter { protected FoldersPresenter(@NonNull FoldersMvp.View view) { super(view); } public static FoldersPresenter with(@NonNull FoldersMvp.View view) { return new FoldersPresenter(view); } @Override public Loader<List<FolderModel>> onCreateLoader(int id, Bundle args) { if (isAttached()) getView().onStartLoading(); return new FoldersLoader(App.getInstance().getApplicationContext()); } @Override public void onLoadFinished(Loader<List<FolderModel>> loader, List<FolderModel> data) { getView().onFoldersLoaded(data); } @Override public void onLoaderReset(Loader<List<FolderModel>> loader) { if (isAttached()) getView().onLoaderReset(); } @Override public void onItemClick(int position, View v, FolderModel item) { if (v.getId() == R.id.folderImage || v.getId() == R.id.editFolder) { getView().onEditFolder(item); } else if (v.getId() == R.id.delete) { getView().onDeleteFolder(item, position); } else { getView().onAddAppsToFolder(item); } } @Override public void onItemLongClick(int position, View v, FolderModel item) { onItemClick(position, v, item); } }