From 448ffc88d4eb90012236791ec37ed7d8682f882f Mon Sep 17 00:00:00 2001 From: M M Arif Date: Sat, 7 Oct 2023 11:27:20 +0500 Subject: [PATCH] Refactor update merge request screen --- app/src/main/AndroidManifest.xml | 3 +- .../gitnex/activities/EditIssueActivity.java | 247 ++++++++---------- .../activities/MergePullRequestActivity.java | 118 ++++----- ...ctivity_add_collaborator_to_repository.xml | 1 - .../main/res/layout/activity_edit_issue.xml | 86 +++--- .../layout/activity_merge_pull_request.xml | 116 +++----- app/src/main/res/layout/list_issues.xml | 1 - app/src/main/res/layout/list_pr.xml | 1 - app/src/main/res/layout/list_repositories.xml | 3 - 9 files changed, 227 insertions(+), 349 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 06afbcb2..9d0af8f6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -48,7 +48,8 @@ android:configChanges="orientation|screenSize|smallestScreenSize|density|screenLayout|keyboard|keyboardHidden|navigation"/> + android:configChanges="orientation|screenSize|smallestScreenSize|density|screenLayout|keyboard|keyboardHidden|navigation" + android:windowSoftInputMode="adjustResize"/> milestonesList = new LinkedHashMap<>(); - private View.OnClickListener onClickListener; - private int resultLimit; private int milestoneId = 0; - private Date currentDate = null; private IssueContext issue; private boolean renderMd = false; @@ -66,17 +60,16 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe binding = ActivityEditIssueBinding.inflate(getLayoutInflater()); setContentView(binding.getRoot()); - setSupportActionBar(binding.toolbar); - InputMethodManager imm = - (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); - - resultLimit = Constants.getCurrentResultLimit(ctx); + int resultLimit = Constants.getCurrentResultLimit(ctx); issue = IssueContext.fromIntent(getIntent()); - binding.editIssueTitle.requestFocus(); - assert imm != null; - imm.showSoftInput(binding.editIssueTitle, InputMethodManager.SHOW_IMPLICIT); + binding.topAppBar.setNavigationOnClickListener(v -> finish()); + + MenuItem attachment = binding.topAppBar.getMenu().getItem(0); + MenuItem create = binding.topAppBar.getMenu().getItem(2); + attachment.setVisible(false); + create.setTitle(getString(R.string.menuEditText)); binding.editIssueDescription.setOnTouchListener( (touchView, motionEvent) -> { @@ -90,23 +83,51 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe return false; }); - initCloseListener(); - binding.close.setOnClickListener(onClickListener); - - binding.editIssueDueDate.setOnClickListener(this); - binding.editIssueButton.setOnClickListener(this); - if (issue.getIssueType().equalsIgnoreCase("Pull")) { - - binding.toolbarTitle.setText( + binding.topAppBar.setTitle( getString(R.string.editPrNavHeader, String.valueOf(issue.getIssueIndex()))); } else { - - binding.toolbarTitle.setText( + binding.topAppBar.setTitle( getString(R.string.editIssueNavHeader, String.valueOf(issue.getIssueIndex()))); } - disableProcessButton(); + showDatePickerDialog(); + + binding.topAppBar.setOnMenuItemClickListener( + menuItem -> { + int id = menuItem.getItemId(); + + if (id == R.id.markdown) { + + if (!renderMd) { + + Markdown.render( + ctx, + EmojiParser.parseToUnicode( + Objects.requireNonNull( + binding.editIssueDescription.getText()) + .toString()), + binding.markdownPreview, + issue.getRepository()); + + binding.markdownPreview.setVisibility(View.VISIBLE); + binding.editIssueDescriptionLayout.setVisibility(View.GONE); + renderMd = true; + } else { + binding.markdownPreview.setVisibility(View.GONE); + binding.editIssueDescriptionLayout.setVisibility(View.VISIBLE); + renderMd = false; + } + + return true; + } else if (id == R.id.create) { + processEditIssue(); + return true; + } else { + return super.onOptionsItemSelected(menuItem); + } + }); + getIssue( issue.getRepository().getOwner(), issue.getRepository().getName(), @@ -119,81 +140,29 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe } } - private void initCloseListener() { - - onClickListener = view -> finish(); - } - - @Override - public boolean onCreateOptionsMenu(@NonNull Menu menu) { - - MenuInflater inflater = getMenuInflater(); - inflater.inflate(R.menu.markdown_switcher, menu); - - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - - int id = item.getItemId(); - - if (id == R.id.markdown) { - - if (!renderMd) { - - Markdown.render( - ctx, - EmojiParser.parseToUnicode( - Objects.requireNonNull(binding.editIssueDescription.getText()) - .toString()), - binding.markdownPreview, - issue.getRepository()); - - binding.markdownPreview.setVisibility(View.VISIBLE); - binding.editIssueDescriptionLayout.setVisibility(View.GONE); - renderMd = true; - } else { - binding.markdownPreview.setVisibility(View.GONE); - binding.editIssueDescriptionLayout.setVisibility(View.VISIBLE); - renderMd = false; - } - - return true; - } else { - return super.onOptionsItemSelected(item); - } - } - private void processEditIssue() { - boolean connToInternet = AppUtil.hasNetworkConnection(appCtx); - String editIssueTitleForm = Objects.requireNonNull(binding.editIssueTitle.getText()).toString(); String editIssueDescriptionForm = Objects.requireNonNull(binding.editIssueDescription.getText()).toString(); - - if (!connToInternet) { - - Toasty.error(ctx, getResources().getString(R.string.checkNetConnection)); - return; - } + String dueDate = Objects.requireNonNull(binding.editIssueDueDate.getText()).toString(); if (editIssueTitleForm.equals("")) { - Toasty.error(ctx, getString(R.string.issueTitleEmpty)); + SnackBar.error( + ctx, findViewById(android.R.id.content), getString(R.string.issueTitleEmpty)); return; } - disableProcessButton(); editIssue( issue.getRepository().getOwner(), issue.getRepository().getName(), issue.getIssueIndex(), editIssueTitleForm, editIssueDescriptionForm, - milestoneId); + milestoneId, + dueDate); } private void editIssue( @@ -202,12 +171,21 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe int issueIndex, String title, String description, - int milestoneId) { + int milestoneId, + String dueDate) { EditIssueOption issueData = new EditIssueOption(); issueData.setTitle(title); issueData.setBody(description); - issueData.setDueDate(currentDate); + String[] date = dueDate.split("-"); + if (!dueDate.equalsIgnoreCase("")) { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.YEAR, Integer.parseInt(date[0])); + calendar.set(Calendar.MONTH, Integer.parseInt(date[1])); + calendar.set(Calendar.DATE, Integer.parseInt(date[2])); + Date dueDate_ = calendar.getTime(); + issueData.setDueDate(dueDate_); + } issueData.setMilestone((long) milestoneId); Call call = @@ -215,7 +193,7 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe .issueEditIssue(repoOwner, repoName, (long) issueIndex, issueData); call.enqueue( - new Callback() { + new Callback<>() { @Override public void onResponse( @@ -226,10 +204,16 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe if (issue.getIssueType().equalsIgnoreCase("Pull")) { - Toasty.success(ctx, getString(R.string.editPrSuccessMessage)); + SnackBar.success( + ctx, + findViewById(android.R.id.content), + getString(R.string.editPrSuccessMessage)); } else { - Toasty.success(ctx, getString(R.string.editIssueSuccessMessage)); + SnackBar.success( + ctx, + findViewById(android.R.id.content), + getString(R.string.editIssueSuccessMessage)); } Intent result = new Intent(); @@ -238,57 +222,44 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe PullRequestsFragment.resumePullRequests = issue.getIssue().getPullRequest() != null; setResult(200, result); - finish(); + new Handler().postDelayed(() -> finish(), 3000); } else if (response.code() == 401) { - enableProcessButton(); AlertDialogs.authorizationTokenRevokedDialog(ctx); } else { - enableProcessButton(); - Toasty.error(ctx, getString(R.string.genericError)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.genericError)); } } @Override - public void onFailure(@NonNull Call call, @NonNull Throwable t) { - - Log.e("onFailure", t.toString()); - enableProcessButton(); - } + public void onFailure(@NonNull Call call, @NonNull Throwable t) {} }); } - @Override - public void onClick(View v) { + private void showDatePickerDialog() { - if (v == binding.editIssueDueDate) { + MaterialDatePicker.Builder builder = MaterialDatePicker.Builder.datePicker(); + builder.setSelection(Calendar.getInstance().getTimeInMillis()); + builder.setTitleText(R.string.newIssueDueDateTitle); + MaterialDatePicker materialDatePicker = builder.build(); - final Calendar c = Calendar.getInstance(); - int mYear = c.get(Calendar.YEAR); - final int mMonth = c.get(Calendar.MONTH); - final int mDay = c.get(Calendar.DAY_OF_MONTH); + binding.editIssueDueDate.setOnClickListener( + v -> materialDatePicker.show(getSupportFragmentManager(), "DATE_PICKER")); - DatePickerDialog datePickerDialog = - new DatePickerDialog( - this, - (view, year, monthOfYear, dayOfMonth) -> { - binding.editIssueDueDate.setText( - getString( - R.string.setDueDate, - year, - (monthOfYear + 1), - dayOfMonth)); - currentDate = new Date(year - 1900, monthOfYear, dayOfMonth); - }, - mYear, - mMonth, - mDay); - datePickerDialog.show(); - } else if (v == binding.editIssueButton) { - - processEditIssue(); - } + materialDatePicker.addOnPositiveButtonClickListener( + selection -> { + Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("UTC")); + calendar.setTimeInMillis(selection); + SimpleDateFormat format = + new SimpleDateFormat( + "yyyy-MM-dd", new Locale(tinyDB.getString("locale"))); + String formattedDate = format.format(calendar.getTime()); + binding.editIssueDueDate.setText(formattedDate); + }); } private void getIssue( @@ -431,8 +402,6 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe } }, 500); - - enableProcessButton(); } } @@ -454,35 +423,27 @@ public class EditIssueActivity extends BaseActivity implements View.OnClickListe String dueDate = formatter.format(response.body().getDueDate()); binding.editIssueDueDate.setText(dueDate); } - // enableProcessButton(); } else if (response.code() == 401) { AlertDialogs.authorizationTokenRevokedDialog(ctx); } else { - Toasty.error(ctx, getString(R.string.genericError)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.genericError)); } } @Override public void onFailure(@NonNull Call call, @NonNull Throwable t) { - Log.e("onFailure", t.toString()); + // Log.e("onFailure", t.toString()); } }); } - private void disableProcessButton() { - - binding.editIssueButton.setEnabled(false); - } - - private void enableProcessButton() { - - binding.editIssueButton.setEnabled(true); - } - @Override public void onResume() { super.onResume(); diff --git a/app/src/main/java/org/mian/gitnex/activities/MergePullRequestActivity.java b/app/src/main/java/org/mian/gitnex/activities/MergePullRequestActivity.java index b13e970d..1470009f 100644 --- a/app/src/main/java/org/mian/gitnex/activities/MergePullRequestActivity.java +++ b/app/src/main/java/org/mian/gitnex/activities/MergePullRequestActivity.java @@ -1,11 +1,11 @@ package org.mian.gitnex.activities; import android.annotation.SuppressLint; -import android.content.Context; import android.content.Intent; import android.os.Bundle; +import android.os.Handler; +import android.view.MenuItem; import android.view.View; -import android.view.inputmethod.InputMethodManager; import android.widget.ArrayAdapter; import androidx.annotation.NonNull; import java.util.ArrayList; @@ -17,9 +17,8 @@ import org.mian.gitnex.clients.RetrofitClient; import org.mian.gitnex.databinding.ActivityMergePullRequestBinding; import org.mian.gitnex.fragments.PullRequestsFragment; import org.mian.gitnex.helpers.AlertDialogs; -import org.mian.gitnex.helpers.AppUtil; import org.mian.gitnex.helpers.MergePullRequestSpinner; -import org.mian.gitnex.helpers.Toasty; +import org.mian.gitnex.helpers.SnackBar; import org.mian.gitnex.helpers.contexts.IssueContext; import retrofit2.Call; import retrofit2.Callback; @@ -29,11 +28,9 @@ import retrofit2.Callback; */ public class MergePullRequestActivity extends BaseActivity { - private View.OnClickListener onClickListener; private IssueContext issue; private ActivityMergePullRequestBinding viewBinding; private String Do; - private final View.OnClickListener mergePullRequest = v -> processMergePullRequest(); @SuppressLint("SetTextI18n") @Override @@ -46,26 +43,22 @@ public class MergePullRequestActivity extends BaseActivity { issue = IssueContext.fromIntent(getIntent()); - boolean connToInternet = AppUtil.hasNetworkConnection(appCtx); - - InputMethodManager imm = - (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); - - viewBinding.mergeTitle.requestFocus(); - assert imm != null; - imm.showSoftInput(viewBinding.mergeTitle, InputMethodManager.SHOW_IMPLICIT); - setMergeAdapter(); if (!issue.getPullRequest().getTitle().isEmpty()) { - - viewBinding.toolbarTitle.setText(issue.getPullRequest().getTitle()); + viewBinding.topAppBar.setTitle(issue.getPullRequest().getTitle()); viewBinding.mergeTitle.setText( issue.getPullRequest().getTitle() + " (#" + issue.getIssueIndex() + ")"); } - initCloseListener(); - viewBinding.close.setOnClickListener(onClickListener); + viewBinding.topAppBar.setNavigationOnClickListener(v -> finish()); + + MenuItem attachment = viewBinding.topAppBar.getMenu().getItem(0); + MenuItem markdown = viewBinding.topAppBar.getMenu().getItem(1); + MenuItem create = viewBinding.topAppBar.getMenu().getItem(2); + attachment.setVisible(false); + markdown.setVisible(false); + create.setTitle(getString(R.string.mergePullRequestButtonText)); // if gitea version is greater/equal(1.12.0) than user installed version // (installed.higherOrEqual(compareVer)) @@ -75,36 +68,37 @@ public class MergePullRequestActivity extends BaseActivity { } if (!issue.getPullRequest().isMergeable()) { - - disableProcessButton(); viewBinding.mergeInfoDisabledMessage.setVisibility(View.VISIBLE); + create.setVisible(false); } else { - viewBinding.mergeInfoDisabledMessage.setVisibility(View.GONE); + create.setVisible(true); } if (issue.prIsFork()) { - viewBinding.deleteBranchForkInfo.setVisibility(View.VISIBLE); } else { - viewBinding.deleteBranchForkInfo.setVisibility(View.GONE); } - if (!connToInternet) { - - disableProcessButton(); - } else { - - viewBinding.mergeButton.setOnClickListener(mergePullRequest); - } - if (!(issue.getPullRequest().getHead().getRepo() != null ? issue.getPullRequest().getHead().getRepo().getPermissions().isPush() : false)) { viewBinding.deleteBranch.setVisibility(View.GONE); viewBinding.deleteBranchForkInfo.setVisibility(View.GONE); } + + viewBinding.topAppBar.setOnMenuItemClickListener( + menuItem -> { + int id = menuItem.getItemId(); + + if (id == R.id.create) { + processMergePullRequest(); + return true; + } else { + return super.onOptionsItemSelected(menuItem); + } + }); } private void setMergeAdapter() { @@ -140,11 +134,6 @@ public class MergePullRequestActivity extends BaseActivity { }); } - private void initCloseListener() { - - onClickListener = view -> finish(); - } - private void processMergePullRequest() { String mergePRDesc = @@ -152,20 +141,14 @@ public class MergePullRequestActivity extends BaseActivity { String mergePRTitle = Objects.requireNonNull(viewBinding.mergeTitle.getText()).toString(); boolean deleteBranch = viewBinding.deleteBranch.isChecked(); - boolean connToInternet = AppUtil.hasNetworkConnection(appCtx); - - if (!connToInternet) { - - Toasty.error(ctx, getResources().getString(R.string.checkNetConnection)); - return; - } - if (Do == null) { - Toasty.error(ctx, getResources().getString(R.string.selectMergeStrategy)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.selectMergeStrategy)); } else { - disableProcessButton(); mergeFunction(Do, mergePRDesc, mergePRTitle, deleteBranch); } } @@ -237,49 +220,46 @@ public class MergePullRequestActivity extends BaseActivity { } } - Toasty.success(ctx, getString(R.string.mergePRSuccessMsg)); + SnackBar.success( + ctx, + findViewById(android.R.id.content), + getString(R.string.mergePRSuccessMsg)); + Intent result = new Intent(); PullRequestsFragment.resumePullRequests = true; IssueDetailActivity.singleIssueUpdate = true; RepoDetailActivity.updateRepo = true; setResult(200, result); - finish(); + new Handler().postDelayed(() -> finish(), 3000); } else if (response.code() == 401) { - enableProcessButton(); AlertDialogs.authorizationTokenRevokedDialog(ctx); } else if (response.code() == 404) { - enableProcessButton(); - Toasty.warning(ctx, getString(R.string.mergePR404ErrorMsg)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.mergePR404ErrorMsg)); } else if (response.code() == 405) { - enableProcessButton(); - Toasty.warning(ctx, getString(R.string.mergeNotAllowed)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.mergeNotAllowed)); } else { - enableProcessButton(); - Toasty.error(ctx, getString(R.string.genericError)); + SnackBar.error( + ctx, + findViewById(android.R.id.content), + getString(R.string.genericError)); } } @Override - public void onFailure(@NonNull Call call, @NonNull Throwable t) { - enableProcessButton(); - } + public void onFailure(@NonNull Call call, @NonNull Throwable t) {} }); } - private void disableProcessButton() { - - viewBinding.mergeButton.setEnabled(false); - } - - private void enableProcessButton() { - - viewBinding.mergeButton.setEnabled(true); - } - @Override public void onResume() { super.onResume(); diff --git a/app/src/main/res/layout/activity_add_collaborator_to_repository.xml b/app/src/main/res/layout/activity_add_collaborator_to_repository.xml index b78ccd4b..8d2f25d7 100644 --- a/app/src/main/res/layout/activity_add_collaborator_to_repository.xml +++ b/app/src/main/res/layout/activity_add_collaborator_to_repository.xml @@ -67,7 +67,6 @@ android:id="@+id/addCollaboratorSearchLayout" android:layout_width="match_parent" android:layout_height="wrap_content" - app:boxBackgroundColor="?attr/inputBackgroundColor" android:textColorHint="?attr/hintColor" app:hintTextColor="?attr/hintColor" app:boxStrokeErrorColor="@color/darkRed" diff --git a/app/src/main/res/layout/activity_edit_issue.xml b/app/src/main/res/layout/activity_edit_issue.xml index 1beb32be..96138291 100644 --- a/app/src/main/res/layout/activity_edit_issue.xml +++ b/app/src/main/res/layout/activity_edit_issue.xml @@ -1,61 +1,50 @@ - + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + android:background="?attr/primaryBackgroundColor" + android:fitsSystemWindows="true"> - + app:layout_scrollFlags="scroll|exitUntilCollapsed|snap" + android:background="?attr/primaryBackgroundColor" + app:contentScrim="?attr/primaryBackgroundColor" + android:layout_height="?attr/collapsingToolbarLayoutLargeSize"> - + - - - + - + app:layout_behavior="@string/appbar_scrolling_view_behavior"> - + @@ -157,7 +143,6 @@ android:layout_marginBottom="@dimen/dimen8dp" android:hint="@string/newIssueDueDateTitle" android:textColorHint="?attr/hintColor" - app:boxBackgroundColor="?attr/inputBackgroundColor" app:boxStrokeErrorColor="@color/darkRed" app:endIconMode="clear_text" app:endIconTint="?attr/iconsColor" @@ -176,17 +161,8 @@ - - - + - + diff --git a/app/src/main/res/layout/activity_merge_pull_request.xml b/app/src/main/res/layout/activity_merge_pull_request.xml index ec5ad8bf..7f4db246 100644 --- a/app/src/main/res/layout/activity_merge_pull_request.xml +++ b/app/src/main/res/layout/activity_merge_pull_request.xml @@ -1,72 +1,50 @@ - + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto"> + android:background="?attr/primaryBackgroundColor" + android:fitsSystemWindows="true"> - + app:layout_scrollFlags="scroll|exitUntilCollapsed|snap" + android:background="?attr/primaryBackgroundColor" + app:contentScrim="?attr/primaryBackgroundColor" + android:layout_height="?attr/collapsingToolbarLayoutLargeSize"> - + - - - - - - - + - + - + + android:textSize="@dimen/dimen16sp" /> @@ -107,7 +84,6 @@ android:layout_marginBottom="@dimen/dimen8dp" android:hint="@string/mergeCommentText" android:textColorHint="?attr/hintColor" - app:boxBackgroundColor="?attr/inputBackgroundColor" app:boxStrokeErrorColor="@color/darkRed" app:endIconMode="clear_text" app:endIconTint="?attr/iconsColor" @@ -122,7 +98,7 @@ android:textColor="?attr/inputTextColor" android:textColorHighlight="?attr/hintColor" android:textColorHint="?attr/hintColor" - android:textSize="@dimen/dimen16sp"/> + android:textSize="@dimen/dimen16sp" /> @@ -135,7 +111,6 @@ android:layout_marginBottom="@dimen/dimen8dp" android:hint="@string/mergeStrategy" android:textColorHint="?attr/hintColor" - app:boxBackgroundColor="?attr/inputBackgroundColor" app:endIconTint="?attr/iconsColor" app:hintTextColor="?attr/hintColor"> @@ -146,7 +121,7 @@ android:inputType="none" android:labelFor="@+id/mergeSpinner" android:textColor="?attr/inputTextColor" - android:textSize="@dimen/dimen16sp"/> + android:textSize="@dimen/dimen16sp" /> @@ -159,17 +134,17 @@ android:text="@string/deleteBranchAfterMerge" android:textColor="?attr/primaryTextColor" android:textSize="@dimen/dimen16sp" - android:visibility="gone"/> + android:visibility="gone" /> + android:textSize="@dimen/dimen12sp" /> - - + android:textSize="@dimen/dimen12sp" /> + android:visibility="visible" /> - + - + diff --git a/app/src/main/res/layout/list_issues.xml b/app/src/main/res/layout/list_issues.xml index 5d2b8242..f584e66e 100644 --- a/app/src/main/res/layout/list_issues.xml +++ b/app/src/main/res/layout/list_issues.xml @@ -61,7 +61,6 @@ android:text="@string/newIssueTitle" android:textAlignment="gravity" android:textColor="?attr/primaryTextColor" - android:textIsSelectable="true" android:textSize="@dimen/dimen16sp" tools:text="Id illum odio repellat omnis fuga deserunt aut. Ut est aut similique qui incidunt quia et." /> diff --git a/app/src/main/res/layout/list_pr.xml b/app/src/main/res/layout/list_pr.xml index 2ea341ab..c9bdfdeb 100644 --- a/app/src/main/res/layout/list_pr.xml +++ b/app/src/main/res/layout/list_pr.xml @@ -76,7 +76,6 @@ android:textAlignment="gravity" android:text="@string/newIssueTitle" android:textColor="?attr/primaryTextColor" - android:textIsSelectable="true" android:textSize="@dimen/dimen16sp" /> diff --git a/app/src/main/res/layout/list_repositories.xml b/app/src/main/res/layout/list_repositories.xml index c28dd9f0..f9cfe3d1 100644 --- a/app/src/main/res/layout/list_repositories.xml +++ b/app/src/main/res/layout/list_repositories.xml @@ -53,7 +53,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="?attr/primaryTextColor" - android:textIsSelectable="true" android:textSize="@dimen/dimen14sp" tools:text="@string/orgName"/> @@ -65,7 +64,6 @@ android:layout_height="wrap_content" android:text="@string/repoName" android:textColor="?attr/primaryTextColor" - android:textIsSelectable="true" android:textSize="@dimen/dimen18sp" android:textStyle="bold"/> @@ -75,7 +73,6 @@ android:layout_height="wrap_content" android:layout_marginBottom="@dimen/dimen8dp" android:textColor="?attr/primaryTextColor" - android:textIsSelectable="true" android:textSize="@dimen/dimen16sp" android:visibility="gone" android:text="@string/noDataDescription"/>