this commit fixes #640 and fixes #636

This commit is contained in:
Kosh 2017-06-11 23:25:41 +08:00
parent 9cddcb425d
commit 9dfd76873a
8 changed files with 26 additions and 15 deletions

View File

@ -214,7 +214,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
int size = commits != null ? commits.size() : -1;
SpannableBuilder spanCommits = SpannableBuilder.builder();
if (size > 0) {
if (size != 1) spanCommits.append(String.valueOf(eventsModel.getPayload().getSize())).append(" new commits").append("\n");
if (size != 1) spanCommits.append(String.valueOf(eventsModel.getPayload().getSize())).append(" more commits").append("\n");
else spanCommits.append("1 new commit").append("\n");
int max = 5;
int appended = 0;
@ -224,7 +224,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
if (TextUtils.isEmpty(sha)) continue;
sha = sha.length() > 7 ? sha.substring(0, 7) : sha;
spanCommits.url(sha).append(" ")
.append(commit.getMessage() != null ? commit.getMessage().replaceAll("\\r?\\n|\\r"," ") : "")
.append(commit.getMessage() != null ? commit.getMessage().replaceAll("\\r?\\n|\\r", " ") : "")
.append("\n");
appended++;
if (appended == max) break;
@ -255,7 +255,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.bold("#")
.bold(String.valueOf(pullRequest.getNumber()));
if (comment.getBody() != null) {
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");
@ -280,7 +280,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.bold(String.valueOf(issue.getNumber()));
if ("opened".equals(action) || "closed".equals(action)) {
if (issue.getTitle() != null) {
MarkDownProvider.stripMdText(description, issue.getTitle().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, issue.getTitle().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");
@ -325,7 +325,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.bold("#")
.bold(String.valueOf(issue.getNumber()));
if (issue.getTitle() != null) {
MarkDownProvider.stripMdText(description, issue.getTitle().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, issue.getTitle().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");
@ -348,7 +348,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.bold("#")
.bold(String.valueOf(issue.getNumber()));
if (comment.getBody() != null) {
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");
@ -420,7 +420,7 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.append(" ")
.append(eventsModel.getRepo().getName());
if (payloadModel.getDescription() != null) {
MarkDownProvider.stripMdText(description, payloadModel.getDescription().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, payloadModel.getDescription().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");
@ -445,13 +445,12 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.append(" ")
.bold("commit")
.append(" ")
.url(commitId != null ? commitId : "")
.append(" ")
.bold("in")
.append(" ")
.append(eventsModel.getRepo().getName());
.append(eventsModel.getRepo().getName())
.url(commitId != null ? "@" + commitId : "");
if (comment != null && comment.getBody() != null) {
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r"," "));
MarkDownProvider.stripMdText(description, comment.getBody().replaceAll("\\r?\\n|\\r", " "));
description.setVisibility(View.VISIBLE);
} else {
description.setText("");

View File

@ -501,6 +501,12 @@ public class RepoPagerActivity extends BaseActivity<RepoPagerMvp.View, RepoPager
return userInteracted;
}
@Override public void disableIssueTab() {
showMessage(R.string.error, R.string.repo_issues_is_disabled);
bottomNavigation.setMenuItemEnabled(1, false);
bottomNavigation.setSelectedIndex(this.navType, true);
}
@Override public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.repo_menu, menu);
return super.onCreateOptionsMenu(menu);
@ -629,6 +635,6 @@ public class RepoPagerActivity extends BaseActivity<RepoPagerMvp.View, RepoPager
}
private void updatePinnedRepo() {
getPresenter().updatePinned((int) InputHelper.toLong(forkRepo),(int)InputHelper.toLong(starRepo),(int)InputHelper.toLong(watchRepo));
getPresenter().updatePinned((int) InputHelper.toLong(forkRepo), (int) InputHelper.toLong(starRepo), (int) InputHelper.toLong(watchRepo));
}
}

View File

@ -65,6 +65,8 @@ public interface RepoPagerMvp {
boolean hasUserInteractedWithView();
void disableIssueTab();
}
interface Presenter extends BaseMvp.FAPresenter, BottomNavigation.OnMenuItemSelectionListener {

View File

@ -268,7 +268,7 @@ class RepoPagerPresenter extends BasePresenter<RepoPagerMvp.View> implements Rep
@Override public void onMenuItemSelect(@IdRes int id, int position, boolean fromUser) {
if (id == R.id.issues && (getRepo() != null && !getRepo().isHasIssues())) {
sendToView(view -> view.showMessage(R.string.error, R.string.repo_issues_is_disabled));
sendToView(RepoPagerMvp.View::disableIssueTab);
return;
}
if (getView() != null && isViewAttached() && fromUser) {

View File

@ -101,6 +101,7 @@ public class ViewerFragment extends BaseFragment<ViewerMvp.View, ViewerPresenter
@Override public void hideProgress() {
loader.setVisibility(View.GONE);
stateLayout.hideProgress();
stateLayout.showReload(getPresenter().downloadedStream() == null ? 0 : 1);
}
@Override public void showErrorMessage(@NonNull String msgRes) {

View File

@ -33,7 +33,9 @@ class ViewerPresenter extends BasePresenter<ViewerMvp.View> implements ViewerMvp
throwable.printStackTrace();
int code = RestProvider.getErrorCode(throwable);
if (code == 404) {
sendToView(view -> view.onShowError(isRepo ? R.string.no_readme_found : R.string.no_file_found));
if (!isRepo) {
sendToView(view -> view.onShowError(R.string.no_file_found));
}
} else {
if (code == 406) {
sendToView(view -> view.openUrl(url));

View File

@ -32,6 +32,7 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical">
<LinearLayout

View File

@ -16,7 +16,7 @@
android:title="@string/enable_signature_box"/>
<SwitchPreference
android:defaultValue="true"
android:defaultValue="false"
android:key="sent_via"
android:icon="@drawable/ic_edit"
android:summary="@string/enable_signature_summary"