show no data when delete last release/tag, change to reloadRepos from repoCreated

This commit is contained in:
M M Arif
2022-05-01 14:24:56 +05:00
parent 25e57bc99a
commit aea8103698
14 changed files with 37 additions and 26 deletions

View File

@@ -32,7 +32,7 @@ public class RepositoryActions {
if(response.isSuccessful()) {
if(response.code() == 204) {
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
Toasty.success(context, context.getString(R.string.starRepositorySuccess));
}
}
@@ -78,7 +78,7 @@ public class RepositoryActions {
if(response.isSuccessful()) {
if(response.code() == 204) {
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
Toasty.success(context, context.getString(R.string.unStarRepositorySuccess));
}
}

View File

@@ -256,7 +256,7 @@ public class CreateIssueActivity extends BaseActivity implements View.OnClickLis
Toasty.success(ctx, getString(R.string.issueCreated));
enableProcessButton();
RepoDetailActivity.updateRepo = true;
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
finish();
}
else if(response2.code() == 401) {

View File

@@ -180,7 +180,7 @@ public class CreatePullRequestActivity extends BaseActivity implements LabelsLis
Toasty.success(ctx, getString(R.string.prCreateSuccess));
RepoDetailActivity.updateRepo = true;
PullRequestsFragment.resumePullRequests = true;
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
finish();
}
else if(response.code() == 409 || response.message().equals("Conflict")) {

View File

@@ -178,7 +178,7 @@ public class CreateRepoActivity extends BaseActivity {
if(response.code() == 201) {
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
Toasty.success(ctx, getString(R.string.repoCreated));
enableProcessButton();
finish();

View File

@@ -69,7 +69,7 @@ import retrofit2.Callback;
public class MainActivity extends BaseActivity implements NavigationView.OnNavigationItemSelectedListener, BottomSheetListener {
public static boolean refActivity = false;
public static boolean repoCreated = false;
public static boolean reloadRepos = false;
private DrawerLayout drawer;
private TextView toolbarTitle;

View File

@@ -21,6 +21,7 @@ import org.mian.gitnex.activities.ProfileActivity;
import org.mian.gitnex.activities.RepoDetailActivity;
import org.mian.gitnex.clients.PicassoService;
import org.mian.gitnex.clients.RetrofitClient;
import org.mian.gitnex.databinding.FragmentReleasesBinding;
import org.mian.gitnex.helpers.AppUtil;
import org.mian.gitnex.helpers.ClickListener;
import org.mian.gitnex.helpers.Markdown;
@@ -49,8 +50,9 @@ public class ReleasesAdapter extends RecyclerView.Adapter<ReleasesAdapter.Releas
private OnLoadMoreListener loadMoreListener;
private boolean isLoading = false, isMoreDataAvailable = true;
private final FragmentRefreshListener startDownload;
private final FragmentReleasesBinding fragmentReleasesBinding;
class ReleasesViewHolder extends RecyclerView.ViewHolder {
protected class ReleasesViewHolder extends RecyclerView.ViewHolder {
private Release releases;
@@ -120,12 +122,13 @@ public class ReleasesAdapter extends RecyclerView.Adapter<ReleasesAdapter.Releas
}
}
public ReleasesAdapter(Context ctx, List<Release> releasesMain, FragmentRefreshListener startDownload, String repoOwner, String repoName) {
public ReleasesAdapter(Context ctx, List<Release> releasesMain, FragmentRefreshListener startDownload, String repoOwner, String repoName, FragmentReleasesBinding fragmentReleasesBinding) {
this.context = ctx;
this.releasesList = releasesMain;
this.startDownload = startDownload;
this.repoOwner = repoOwner;
this.repoName = repoName;
this.fragmentReleasesBinding = fragmentReleasesBinding;
}
@NonNull
@@ -272,7 +275,10 @@ public class ReleasesAdapter extends RecyclerView.Adapter<ReleasesAdapter.Releas
if(response.isSuccessful()) {
updateAdapter(position);
Toasty.success(context, context.getString(R.string.releaseDeleted));
MainActivity.repoCreated = true;
MainActivity.reloadRepos = true;
if(getItemCount() == 0) {
fragmentReleasesBinding.noDataReleases.setVisibility(View.VISIBLE);
}
}
else if(response.code() == 403) {
Toasty.error(context, context.getString(R.string.authorizeError));

View File

@@ -16,6 +16,7 @@ import org.gitnex.tea4j.v2.models.Tag;
import org.mian.gitnex.R;
import org.mian.gitnex.activities.RepoDetailActivity;
import org.mian.gitnex.clients.RetrofitClient;
import org.mian.gitnex.databinding.FragmentReleasesBinding;
import org.mian.gitnex.helpers.Markdown;
import org.mian.gitnex.helpers.Toasty;
import org.mian.gitnex.structs.FragmentRefreshListener;
@@ -35,11 +36,11 @@ public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder
private final String repo;
private final String owner;
private final FragmentRefreshListener startDownload;
private final FragmentReleasesBinding fragmentReleasesBinding;
private OnLoadMoreListener loadMoreListener;
private boolean isLoading = false, isMoreDataAvailable = true;
class TagsViewHolder extends RecyclerView.ViewHolder {
protected class TagsViewHolder extends RecyclerView.ViewHolder {
private Tag tagsHolder;
private final TextView tagName;
@@ -84,12 +85,13 @@ public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder
}
}
public TagsAdapter(Context ctx, List<Tag> releasesMain, String repoOwner, String repoName, FragmentRefreshListener startDownload) {
public TagsAdapter(Context ctx, List<Tag> releasesMain, String repoOwner, String repoName, FragmentRefreshListener startDownload, FragmentReleasesBinding fragmentReleasesBinding) {
this.context = ctx;
this.tags = releasesMain;
owner = repoOwner;
repo = repoName;
this.startDownload = startDownload;
this.fragmentReleasesBinding = fragmentReleasesBinding;
}
@NonNull
@@ -180,7 +182,7 @@ public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder
notifyItemRangeChanged(position, tags.size());
}
public void tagDeleteDialog(final Context context, final String tagName, final String owner, final String repo, int position) {
private void tagDeleteDialog(final Context context, final String tagName, final String owner, final String repo, int position) {
new AlertDialog.Builder(context)
.setTitle(String.format(context.getString(R.string.deleteGenericTitle), tagName))
@@ -195,6 +197,9 @@ public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder
if(response.isSuccessful()) {
updateAdapter(position);
Toasty.success(context, context.getString(R.string.tagDeleted));
if(getItemCount() == 0) {
fragmentReleasesBinding.noDataReleases.setVisibility(View.VISIBLE);
}
}
else if(response.code() == 403) {
Toasty.error(context, context.getString(R.string.authorizeError));

View File

@@ -252,10 +252,10 @@ public class ExploreRepositoriesFragment extends Fragment {
public void onResume() {
super.onResume();
if(MainActivity.repoCreated) {
if(MainActivity.reloadRepos) {
dataList.clear();
loadInitial(searchQuery, resultLimit);
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}

View File

@@ -119,10 +119,10 @@ public class MyRepositoriesFragment extends Fragment {
super.onResume();
final String userLogin = ((BaseActivity) requireActivity()).getAccount().getAccount().getUserName();
if(MainActivity.repoCreated) {
if(MainActivity.reloadRepos) {
page = 1;
fetchDataAsync(userLogin);
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}

View File

@@ -126,7 +126,7 @@ public class OrganizationTeamInfoReposFragment extends Fragment {
if(repoAdded) {
page = 1;
fetchDataAsync();
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}

View File

@@ -129,7 +129,7 @@ public class ReleasesFragment extends Fragment {
releasesModel.getReleasesList(owner, repo, getContext()).observe(getViewLifecycleOwner(), releasesListMain -> {
if(!repository.isReleasesViewTypeIsTag()) {
adapter = new ReleasesAdapter(getContext(), releasesListMain, this::requestFileDownload, repository.getOwner(), repository.getName());
adapter = new ReleasesAdapter(getContext(), releasesListMain, this::requestFileDownload, repository.getOwner(), repository.getName(), fragmentReleasesBinding);
adapter.setLoadMoreListener(new ReleasesAdapter.OnLoadMoreListener() {
@Override
@@ -166,7 +166,7 @@ public class ReleasesFragment extends Fragment {
releasesModel.getTagsList(owner, repo, getContext()).observe(getViewLifecycleOwner(), tagList -> {
if(repository.isReleasesViewTypeIsTag()) {
tagsAdapter = new TagsAdapter(getContext(), tagList, owner, repo, this::requestFileDownload);
tagsAdapter = new TagsAdapter(getContext(), tagList, owner, repo, this::requestFileDownload, fragmentReleasesBinding);
tagsAdapter.setLoadMoreListener(new TagsAdapter.OnLoadMoreListener() {
@Override

View File

@@ -126,9 +126,9 @@ public class RepositoriesByOrgFragment extends Fragment {
super.onResume();
if(MainActivity.repoCreated) {
if(MainActivity.reloadRepos) {
repositoriesViewModel.loadReposList(page, resultLimit, null, "org", orgName, getContext());
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}

View File

@@ -115,10 +115,10 @@ public class RepositoriesFragment extends Fragment {
public void onResume() {
super.onResume();
if(MainActivity.repoCreated) {
if(MainActivity.reloadRepos) {
page = 1;
fetchDataAsync();
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}

View File

@@ -142,10 +142,10 @@ public class StarredRepositoriesFragment extends Fragment {
public void onResume() {
super.onResume();
if(MainActivity.repoCreated) {
if(MainActivity.reloadRepos) {
page = 1;
fetchDataAsync();
MainActivity.repoCreated = false;
MainActivity.reloadRepos = false;
}
}