this commit fixes #287

This commit is contained in:
Kosh 2017-05-13 11:16:41 +08:00
parent 489b526a26
commit 23de20210f
4 changed files with 63 additions and 32 deletions

View File

@ -92,21 +92,31 @@ public class FeedsViewHolder extends BaseViewHolder<Event> {
.append(in)
.append(" ");
} else {
spannableBuilder.bold(itemView.getResources().getString(type
.getType()).toLowerCase())
.append(" ");
if (eventsModel.getPayload() != null) {
PayloadModel payloadModel = eventsModel.getPayload();
if (payloadModel.getTarget() != null) {
spannableBuilder.append(payloadModel.getTarget().getLogin())
spannableBuilder
.bold(payloadModel.getTarget().getLogin())
.append(" ")
.append(in)
.append(" ");
} else if (payloadModel.getTeam() != null) {
spannableBuilder.append(payloadModel.getTeam().getName())
spannableBuilder
.bold(payloadModel.getTeam().getName())
.append(" ")
.append(in)
.append(" ");
} else if (payloadModel.getMember() != null) {
spannableBuilder.append(payloadModel.getMember().getName())
spannableBuilder
.bold(payloadModel.getMember().getLogin())
.append(" ")
.append(in)
.append(" ");
} else {
spannableBuilder.bold(itemView.getResources().getString(type.getType()).toLowerCase()).append(" ");
}
} else {
spannableBuilder.bold(itemView.getResources().getString(type.getType()).toLowerCase()).append(" ");
}
}
}

View File

@ -2,6 +2,8 @@ package com.fastaccess.ui.adapter.viewholder;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.transition.ChangeBounds;
import android.support.transition.TransitionManager;
import android.view.View;
import android.view.ViewGroup;
@ -34,6 +36,7 @@ public class GroupedReviewsViewHolder extends BaseViewHolder<TimelineModel> impl
@BindView(R.id.name) FontTextView name;
@BindView(R.id.toggle) ForegroundImageView toggle;
@BindView(R.id.patch) FontTextView patch;
@BindView(R.id.minimized) View minimized;
private final int patchAdditionColor;
private final int patchDeletionColor;
private final int patchRefColor;
@ -41,6 +44,7 @@ public class GroupedReviewsViewHolder extends BaseViewHolder<TimelineModel> impl
private ReactionsCallback reactionsCallback;
private String pathText;
private PullRequestTimelineMvp.ReviewCommentCallback reviewCommentCallback;
private ViewGroup viewGroup;
@Override public void onClick(View v) {
int position = getAdapterPosition();
@ -48,12 +52,13 @@ public class GroupedReviewsViewHolder extends BaseViewHolder<TimelineModel> impl
onToggle(onToggleView.isCollapsed(position));
}
private GroupedReviewsViewHolder(@NonNull View itemView, @Nullable BaseRecyclerAdapter adapter,
private GroupedReviewsViewHolder(@NonNull View itemView, ViewGroup viewGroup, @Nullable BaseRecyclerAdapter adapter,
@NonNull OnToggleView onToggleView,
@NonNull ReactionsCallback reactionsCallback,
@NonNull PullRequestTimelineMvp.ReviewCommentCallback reviewCommentCallback) {
super(itemView, adapter);
this.onToggleView = onToggleView;
this.viewGroup = viewGroup;
this.reactionsCallback = reactionsCallback;
this.reviewCommentCallback = reviewCommentCallback;
patchAdditionColor = ViewHelper.getPatchAdditionColor(itemView.getContext());
@ -67,7 +72,7 @@ public class GroupedReviewsViewHolder extends BaseViewHolder<TimelineModel> impl
@NonNull OnToggleView onToggleView,
@NonNull ReactionsCallback reactionsCallback,
@NonNull PullRequestTimelineMvp.ReviewCommentCallback reviewCommentCallback) {
return new GroupedReviewsViewHolder(getView(viewGroup, R.layout.grouped_review_timeline_row_item), adapter,
return new GroupedReviewsViewHolder(getView(viewGroup, R.layout.grouped_review_timeline_row_item), viewGroup, adapter,
onToggleView, reactionsCallback, reviewCommentCallback);
}
@ -100,11 +105,14 @@ public class GroupedReviewsViewHolder extends BaseViewHolder<TimelineModel> impl
}
private void onToggle(boolean expanded) {
TransitionManager.beginDelayedTransition(viewGroup, new ChangeBounds());
if (!expanded) {
minimized.setVisibility(View.GONE);
patch.setText(".....");
name.setMaxLines(2);
toggle.setRotation(0.0f);
} else {
minimized.setVisibility(View.VISIBLE);
name.setMaxLines(5);
setPatchText(pathText);
toggle.setRotation(180f);

View File

@ -57,6 +57,7 @@ public class ViewerFragment extends BaseFragment<ViewerMvp.View, ViewerPresenter
webView.loadImage(url);
webView.setOnContentChangedListener(this);
webView.setVisibility(View.VISIBLE);
getActivity().supportInvalidateOptionsMenu();
}
@Override public void onSetMdText(@NonNull String text, String baseUrl) {
@ -64,6 +65,7 @@ public class ViewerFragment extends BaseFragment<ViewerMvp.View, ViewerPresenter
webView.setVisibility(View.VISIBLE);
Logger.e(!getPresenter().isRepo());
webView.setGithubContent(text, baseUrl);
getActivity().supportInvalidateOptionsMenu();
}
@Override public void onSetCode(@NonNull String text) {
@ -147,13 +149,15 @@ public class ViewerFragment extends BaseFragment<ViewerMvp.View, ViewerPresenter
@Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.wrap_menu_option, menu);
menu.findItem(R.id.wrap).setVisible(false);
super.onCreateOptionsMenu(menu, inflater);
}
@Override public void onPrepareOptionsMenu(Menu menu) {
menu.findItem(R.id.wrap)
.setVisible(!getPresenter().isMarkDown() || !getPresenter().isRepo())
.setChecked(isWrap);
MenuItem menuItem = menu.findItem(R.id.wrap);
if (!getPresenter().isMarkDown() || !getPresenter().isRepo()) {
menuItem.setVisible(true).setCheckable(isWrap);
}
super.onPrepareOptionsMenu(menu);
}

View File

@ -30,6 +30,7 @@
android:layout_marginStart="@dimen/avatar_margin"
android:minHeight="24dp"
android:minWidth="24dp"
android:padding="@dimen/spacing_normal"
android:scaleType="centerCrop"
tools:src="@drawable/ic_issue_opened"/>
@ -43,6 +44,7 @@
android:layout_weight="1"
android:ellipsize="end"
android:maxLines="2"
android:padding="@dimen/spacing_normal"
android:textColor="?android:textColorPrimary"
tools:text="When one acquires"/>
@ -57,29 +59,36 @@
</LinearLayout>
<com.fastaccess.ui.widgets.FontTextView
android:id="@+id/patch"
style="@style/TextAppearance.AppCompat.Small"
<LinearLayout
android:id="@+id/minimized"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="@dimen/spacing_xs_large"
android:layout_marginStart="@dimen/avatar_margin"
android:background="@drawable/bottom_border"
android:paddingBottom="@dimen/spacing_normal"
tools:text="..."/>
<com.fastaccess.ui.widgets.recyclerview.DynamicRecyclerView
android:id="@+id/nestedRecyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/spacing_normal"
android:layout_height="match_parent"
android:orientation="vertical"
android:visibility="gone"
app:layoutManager="@string/staggered_layout_manager"
app:spanCount="@integer/small_spans"
tools:listitem="@layout/review_comments_row_item"
tools:visibility="visible"/>
android:visibility="gone">
<com.fastaccess.ui.widgets.FontTextView
android:id="@+id/patch"
style="@style/TextAppearance.AppCompat.Small"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="@dimen/spacing_xs_large"
android:layout_marginStart="@dimen/avatar_margin"
android:background="@drawable/bottom_border"
android:paddingBottom="@dimen/spacing_normal"
tools:text="..."/>
<com.fastaccess.ui.widgets.recyclerview.DynamicRecyclerView
android:id="@+id/nestedRecyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/spacing_normal"
android:orientation="vertical"
android:visibility="gone"
app:layoutManager="@string/staggered_layout_manager"
app:spanCount="@integer/small_spans"
tools:listitem="@layout/review_comments_row_item"
tools:visibility="visible"/>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>