Skip to content

Commit

Permalink
Merge branch 'master' into bug-transition-iss-ms
Browse files Browse the repository at this point in the history
  • Loading branch information
phansier committed Jan 29, 2018
2 parents c21e65b + 135d903 commit 9aeb8a2
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 27 deletions.
5 changes: 5 additions & 0 deletions app/src/main/java/com/github/mobile/GitHubModule.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import com.github.mobile.accounts.GitHubAccount;
import com.github.mobile.api.DateAdapter;
import com.github.mobile.api.RequestConfiguration;
import com.github.mobile.api.model.Milestone;
import com.github.mobile.core.commit.CommitStore;
import com.github.mobile.core.gist.GistStore;
import com.github.mobile.core.issue.IssueStore;
Expand All @@ -33,6 +34,7 @@
import com.google.inject.Singleton;
import com.google.inject.assistedinject.FactoryModuleBuilder;
import com.google.inject.name.Named;
import com.squareup.moshi.JsonAdapter;
import com.squareup.moshi.Moshi;

import java.io.File;
Expand Down Expand Up @@ -80,8 +82,11 @@ Retrofit retrofit(Provider<GitHubAccount> accountProvider) {
.addInterceptor(new RequestConfiguration(accountProvider))
.build();

JsonAdapter<Milestone> adapter =
new Moshi.Builder().add(new DateAdapter()).build().adapter(Milestone.class).serializeNulls();
Moshi converter = new Moshi.Builder()
.add(new DateAdapter())
.add(Milestone.class, adapter)
.build();

return new Retrofit.Builder()
Expand Down
23 changes: 5 additions & 18 deletions app/src/main/java/com/github/mobile/ui/milestone/IssueDialog.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,14 +73,14 @@ public List<Issue> getIssues() {
return repositoryIssues;
}

private void load() {
public void show() {
new ProgressDialogTask<ArrayList<Issue>>(activity) {

@Override
public ArrayList<Issue> run(Account account) throws Exception {
ArrayList<Issue> issues = new ArrayList<Issue>();
String[] repid = repository.generateId().split("/");
issues.addAll(service.getIssues(repid[0],repid[1], "none").execute().body());
issues.addAll(service.getIssues(repid[0], repid[1], "none").execute().body());
return issues;
}

Expand All @@ -89,7 +89,9 @@ protected void onSuccess(ArrayList<Issue> all) throws Exception {
super.onSuccess(all);

repositoryIssues = all;
show();
IssueDialogFragment.show(activity, requestCode,
activity.getString(R.string.ms_select_issue), null,
repositoryIssues);
}

@Override
Expand All @@ -108,19 +110,4 @@ public void execute() {
}
}.execute();
}

/**
* Show dialog
*
*/
public void show() {
if (repositoryIssues == null) {
load();
return;
}

IssueDialogFragment.show(activity, requestCode,
activity.getString(R.string.ms_select_issue), null,
repositoryIssues);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,10 @@ public class MilestoneFragment extends DialogFragment {
private ProgressBar milestoneProgress;
private TextView milestoneProgressPercentage;
private TextView milestoneTime;

private final static int MS_TIME_PAST_DAYS = -100;
private final static int MS_TIME_OK_DAYS = 100;


@Override
public void onAttach(Context context) {
Expand Down Expand Up @@ -125,41 +129,43 @@ private void updateMilestone(final Milestone milestone){
} else{
milestoneDescription.setVisibility(View.GONE);
}

int totalIssues = milestone.getClosedIssues() + milestone.getOpenIssues();
int progress = totalIssues == 0 ? 0 : milestone.getClosedIssues() * 100 / totalIssues;
milestoneProgress.setProgress(progress);
milestoneProgressPercentage.setText(String.valueOf(progress));

Date dueOn = milestone.getDueOn();
if (dueOn != null){
if(dueOn != null) {
Date current = Calendar.getInstance().getTime();
String state = milestone.getState();
boolean open = state.equals("open");

long days = MS_TIME_OK_DAYS;
long diff = dueOn.getTime() - current.getTime();
long days = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
days = TimeUnit.DAYS.convert(diff, TimeUnit.MILLISECONDS);
GradientDrawable back = (GradientDrawable) milestoneTime.getBackground();
if (!open){
milestoneTime.setVisibility(View.VISIBLE);
milestoneTime.setText(R.string.status_closed);
back.setColor(getResources().getColor(R.color.milestone_badge_default));
}
else if (-100 <= days && days < 0 && open){
else if (MS_TIME_PAST_DAYS <= days && days < 0 && open){
milestoneTime.setVisibility(View.VISIBLE);
milestoneTime.setText(getString(R.string.ms_time_past) + " " +(-days) + " " + getString(R.string.ms_days));
back.setColor(getResources().getColor(R.color.milestone_badge_red));
}
else if (0 <= days && days <= 100 && open){
else if (0 <= days && days < MS_TIME_OK_DAYS && open){
milestoneTime.setVisibility(View.VISIBLE);
milestoneTime.setText(days + " " + getString(R.string.ms_days));
back.setColor(getResources().getColor(R.color.milestone_badge_default));
}
else {
milestoneTime.setVisibility(View.GONE);
}
} else{
milestoneTime.setText("");
back.setColor(getResources().getColor(R.color.background));
}
else{
milestoneTime.setVisibility(View.GONE);

}

}
Expand Down

0 comments on commit 9aeb8a2

Please sign in to comment.