fix toolbar title, add ms list to edit issue. #2

This commit is contained in:
M M Arif
2019-06-09 00:50:08 +05:00
parent f4ee0bbfbf
commit e5ddb83fbb
4 changed files with 90 additions and 49 deletions

View File

@@ -8,6 +8,7 @@ import retrofit2.Response;
import android.annotation.SuppressLint;
import android.app.DatePickerDialog;
import android.content.Context;
import android.graphics.PorterDuff;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle;
import android.util.Log;
@@ -31,10 +32,12 @@ import org.mian.gitnex.helpers.Toasty;
import org.mian.gitnex.models.Collaborators;
import org.mian.gitnex.models.CreateIssue;
import org.mian.gitnex.models.Issues;
import org.mian.gitnex.models.Milestones;
import org.mian.gitnex.util.AppUtil;
import org.mian.gitnex.util.TinyDB;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
@@ -53,6 +56,7 @@ public class EditIssueActivity extends AppCompatActivity implements View.OnClick
private Button editIssueButton;
private Spinner editIssueMilestoneSpinner;
List<Milestones> milestonesList = new ArrayList<>();
private ArrayAdapter<Mention> defaultMentionAdapter;
@Override
@@ -82,6 +86,9 @@ public class EditIssueActivity extends AppCompatActivity implements View.OnClick
defaultMentionAdapter = new MentionArrayAdapter<>(this);
loadCollaboratorsList();
editIssueMilestoneSpinner = findViewById(R.id.editIssueMilestoneSpinner);
editIssueMilestoneSpinner.getBackground().setColorFilter(getResources().getColor(R.color.white), PorterDuff.Mode.SRC_ATOP);
editIssueDescription.setMentionAdapter(defaultMentionAdapter);
initCloseListener();
@@ -292,7 +299,7 @@ public class EditIssueActivity extends AppCompatActivity implements View.OnClick
}
private void getIssue(String instanceUrl, String instanceToken, String loginUid, String repoOwner, String repoName, int issueIndex) {
private void getIssue(final String instanceUrl, final String instanceToken, final String loginUid, final String repoOwner, final String repoName, int issueIndex) {
Call<Issues> call = RetrofitClient
.getInstance(instanceUrl)
@@ -310,6 +317,74 @@ public class EditIssueActivity extends AppCompatActivity implements View.OnClick
editIssueTitle.setText(response.body().getTitle());
editIssueDescription.setText(response.body().getBody());
int msId = 0;
if(response.body().getMilestone() != null) {
msId = response.body().getMilestone().getId();
}
// get milestones list
if(response.body().getId() > 0) {
Call<List<Milestones>> call_ = RetrofitClient
.getInstance(instanceUrl)
.getApiInterface()
.getMilestones(Authorization.returnAuthentication(getApplicationContext(), loginUid, instanceToken), repoOwner, repoName);
final int finalMsId = msId;
call_.enqueue(new Callback<List<Milestones>>() {
@Override
public void onResponse(@NonNull Call<List<Milestones>> call, @NonNull retrofit2.Response<List<Milestones>> response_) {
int finalMsId1 = 0;
if (response_.code() == 200) {
List<Milestones> milestonesList_ = response_.body();
milestonesList.add(new Milestones(0, "No milestone"));
assert milestonesList_ != null;
if (milestonesList_.size() > 0) {
for (int i = 0; i < milestonesList_.size(); i++) {
Milestones data = new Milestones(
milestonesList_.get(i).getId(),
milestonesList_.get(i).getTitle()
);
milestonesList.add(data);
if(finalMsId == milestonesList_.get(i).getId()) {
finalMsId1 = i + 1;
}
}
}
ArrayAdapter<Milestones> adapter_ = new ArrayAdapter<>(getApplicationContext(),
R.layout.spinner_item, milestonesList);
adapter_.setDropDownViewResource(R.layout.spinner_dropdown_item);
editIssueMilestoneSpinner.setAdapter(adapter_);
if(milestonesList_.size() > 0) {
editIssueMilestoneSpinner.setSelection(finalMsId1);
}
enableProcessButton();
}
}
@Override
public void onFailure(@NonNull Call<List<Milestones>> call, @NonNull Throwable t) {
Log.e("onFailure", t.toString());
}
});
}
// get milestones list
if(response.body().getDue_date() != null) {
@SuppressLint("SimpleDateFormat") DateFormat formatter = new SimpleDateFormat("yyyy-M-dd");
@@ -317,7 +392,7 @@ public class EditIssueActivity extends AppCompatActivity implements View.OnClick
editIssueDueDate.setText(dueDate);
}
enableProcessButton();
//enableProcessButton();
}
else if(response.code() == 401) {

View File

@@ -74,7 +74,6 @@ import java.util.Objects;
public class IssueDetailActivity extends AppCompatActivity {
public ImageView closeActivity;
private View.OnClickListener onClickListener;
private IssueCommentsAdapter adapter;
private RecyclerView mRecyclerView;
private ImageView assigneeAvatar;
@@ -110,7 +109,6 @@ public class IssueDetailActivity extends AppCompatActivity {
final SwipeRefreshLayout swipeRefresh = findViewById(R.id.pullToRefresh);
closeActivity = findViewById(R.id.close);
assigneeAvatar = findViewById(R.id.assigneeAvatar);
issueTitle = findViewById(R.id.issueTitle);
issueDescription = findViewById(R.id.issueDescription);
@@ -127,10 +125,7 @@ public class IssueDetailActivity extends AppCompatActivity {
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
Objects.requireNonNull(getSupportActionBar()).setTitle(repoName);
getSupportActionBar().setDisplayHomeAsUpEnabled(false);
initCloseListener();
closeActivity.setOnClickListener(onClickListener);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
mRecyclerView = findViewById(R.id.recyclerView);
mRecyclerView.setHasFixedSize(true);
@@ -437,6 +432,7 @@ public class IssueDetailActivity extends AppCompatActivity {
PrettyTime prettyTime = new PrettyTime(new Locale(locale));
String createdTime = prettyTime.format(singleIssue.getCreated_at());
issueCreatedTime.setText(getString(R.string.createdTime, createdTime));
issueCreatedTime.setVisibility(View.VISIBLE);
issueCreatedTime.setOnClickListener(new ClickListener(TimeHelper.customDateFormatForToastDateFormat(singleIssue.getCreated_at()), getApplicationContext()));
break;
}
@@ -444,12 +440,14 @@ public class IssueDetailActivity extends AppCompatActivity {
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd '" + getResources().getString(R.string.timeAtText) + "' HH:mm", new Locale(locale));
String createdTime = formatter.format(singleIssue.getCreated_at());
issueCreatedTime.setText(getString(R.string.createdTime, createdTime));
issueCreatedTime.setVisibility(View.VISIBLE);
break;
}
case "normal1": {
DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy '" + getResources().getString(R.string.timeAtText) + "' HH:mm", new Locale(locale));
String createdTime = formatter.format(singleIssue.getCreated_at());
issueCreatedTime.setText(getString(R.string.createdTime, createdTime));
issueCreatedTime.setVisibility(View.VISIBLE);
break;
}
}
@@ -490,7 +488,7 @@ public class IssueDetailActivity extends AppCompatActivity {
}
private void initCloseListener() {
onClickListener = new View.OnClickListener() {
View.OnClickListener onClickListener = new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();