From 8570d65080dfcd06c8b15cf166d7f564e1e348db Mon Sep 17 00:00:00 2001 From: Kosh Date: Sun, 9 Apr 2017 10:13:31 +0800 Subject: [PATCH] this commit fixes #267 --- .../fastaccess/data/dao/types/EventsType.java | 65 ++++++++++--------- .../adapter/viewholder/FeedsViewHolder.java | 10 ++- .../fastaccess/ui/widgets/FontTextView.java | 14 ++++ app/src/main/res/drawable/ic_repo.xml | 11 ++++ .../other_layouts/layout/nav_menu_layout.xml | 2 +- .../row_layouts/layout/feeds_row_item.xml | 5 +- ...drawer_menu.xml => extras_drawer_menu.xml} | 2 +- 7 files changed, 74 insertions(+), 35 deletions(-) create mode 100644 app/src/main/res/drawable/ic_repo.xml rename app/src/main/res/menu/{deeper_drawer_menu.xml => extras_drawer_menu.xml} (97%) diff --git a/app/src/main/java/com/fastaccess/data/dao/types/EventsType.java b/app/src/main/java/com/fastaccess/data/dao/types/EventsType.java index 6b46f2cb..4cbdeed0 100644 --- a/app/src/main/java/com/fastaccess/data/dao/types/EventsType.java +++ b/app/src/main/java/com/fastaccess/data/dao/types/EventsType.java @@ -1,44 +1,51 @@ package com.fastaccess.data.dao.types; +import android.support.annotation.DrawableRes; import android.support.annotation.StringRes; import com.fastaccess.R; public enum EventsType { - WatchEvent(R.string.starred), - CreateEvent(R.string.created_repo), - CommitCommentEvent(R.string.commented_on_commit), - DownloadEvent(R.string.downloaded), - FollowEvent(R.string.followed), - ForkEvent(R.string.forked), - GistEvent(R.string.created_gist), - GollumEvent(R.string.gollum), - IssueCommentEvent(R.string.commented_on_issue), - IssuesEvent(R.string.created_issue), - MemberEvent(R.string.member), - PublicEvent(R.string.public_event), - PullRequestEvent(R.string.pull_request), - PullRequestReviewCommentEvent(R.string.pr_comment_review), - PullRequestReviewEvent(R.string.pr_review_event), - RepositoryEvent(R.string.repo_event), - PushEvent(R.string.pushed), - StatusEvent(R.string.status), - TeamAddEvent(R.string.team_event), - DeleteEvent(R.string.deleted), - ReleaseEvent(R.string.released), - Unhandled(R.string.unknown), - ForkApplyEvent(R.string.forked), - OrgBlockEvent(R.string.organization_event), - ProjectCardEvent(R.string.card_event), - ProjectColumnEvent(R.string.project_event), - OrganizationEvent(R.string.organization_event), - ProjectEvent(R.string.project_event); + WatchEvent(R.string.starred, R.drawable.ic_star_filled), + CreateEvent(R.string.created_repo, R.drawable.ic_add), + CommitCommentEvent(R.string.commented_on_commit, R.drawable.ic_comment), + DownloadEvent(R.string.downloaded, R.drawable.ic_download), + FollowEvent(R.string.followed, R.drawable.ic_add), + ForkEvent(R.string.forked, R.drawable.ic_fork), + GistEvent(R.string.created_gist, R.drawable.ic_gists), + GollumEvent(R.string.gollum, R.drawable.ic_info_outline), + IssueCommentEvent(R.string.commented_on_issue, R.drawable.ic_comment), + IssuesEvent(R.string.created_issue, R.drawable.ic_issues), + MemberEvent(R.string.member, R.drawable.ic_add), + PublicEvent(R.string.public_event, R.drawable.ic_repo), + PullRequestEvent(R.string.pull_request, R.drawable.ic_pull_requests), + PullRequestReviewCommentEvent(R.string.pr_comment_review, R.drawable.ic_comment), + PullRequestReviewEvent(R.string.pr_review_event, R.drawable.ic_eye), + RepositoryEvent(R.string.repo_event, R.drawable.ic_repo), + PushEvent(R.string.pushed, R.drawable.ic_arrow_right), + StatusEvent(R.string.status, R.drawable.ic_info_outline), + TeamAddEvent(R.string.team_event, R.drawable.ic_profile), + DeleteEvent(R.string.deleted, R.drawable.ic_trash), + ReleaseEvent(R.string.released, R.drawable.ic_download), + Unhandled(R.string.unknown, R.drawable.ic_info_outline), + ForkApplyEvent(R.string.forked, R.drawable.ic_fork), + OrgBlockEvent(R.string.organization_event, R.drawable.ic_profile), + ProjectCardEvent(R.string.card_event, R.drawable.ic_info_outline), + ProjectColumnEvent(R.string.project_event, R.drawable.ic_info_outline), + OrganizationEvent(R.string.organization_event, R.drawable.ic_profile), + ProjectEvent(R.string.project_event, R.drawable.ic_info_outline); @StringRes int type; + @DrawableRes int drawableRes; - EventsType(@StringRes int type) { + EventsType(@StringRes int type, @DrawableRes int drawableRes) { this.type = type; + this.drawableRes = drawableRes; + } + + @DrawableRes public int getDrawableRes() { + return drawableRes; } @StringRes public int getType() { diff --git a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/FeedsViewHolder.java b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/FeedsViewHolder.java index 5d56d8ff..b3ff3d21 100644 --- a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/FeedsViewHolder.java +++ b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/FeedsViewHolder.java @@ -2,6 +2,7 @@ package com.fastaccess.ui.adapter.viewholder; import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.view.Gravity; import android.view.View; import android.view.ViewGroup; @@ -47,6 +48,8 @@ public class FeedsViewHolder extends BaseViewHolder { SpannableBuilder spannableBuilder = SpannableBuilder.builder(); spannableBuilder.append(eventsModel.getActor() != null ? eventsModel.getActor().getLogin() : "N/A").append(" "); if (eventsModel.getType() != null) { + date.setGravity(Gravity.CENTER); + date.setSmallLeftDrawable(eventsModel.getType().getDrawableRes()); String action; if (eventsModel.getType() == EventsType.WatchEvent) { action = itemView.getResources().getString(eventsModel.getType().getType()).toLowerCase(); @@ -56,7 +59,8 @@ public class FeedsViewHolder extends BaseViewHolder { spannableBuilder.bold(action != null ? action.toLowerCase() : "") .append(eventsModel.getPayload() != null && eventsModel.getPayload().getAction() != null ? " " : ""); if (eventsModel.getType() != EventsType.WatchEvent) { - if (eventsModel.getType() == EventsType.CreateEvent && eventsModel.getPayload().getRefType().equalsIgnoreCase("branch")) { + if (eventsModel.getType() == EventsType.CreateEvent && eventsModel.getPayload() + .getRefType().equalsIgnoreCase("branch")) { spannableBuilder .bold(itemView.getResources().getString(eventsModel.getType().getType()).toLowerCase()) .append(" ") @@ -64,8 +68,8 @@ public class FeedsViewHolder extends BaseViewHolder { .append(" ") .append(to).append(" "); } else { - spannableBuilder.bold(itemView.getResources().getString(eventsModel.getType().getType()).toLowerCase()) - .append(" "); + spannableBuilder.bold(itemView.getResources().getString(eventsModel.getType() + .getType()).toLowerCase()).append(" "); } } } diff --git a/app/src/main/java/com/fastaccess/ui/widgets/FontTextView.java b/app/src/main/java/com/fastaccess/ui/widgets/FontTextView.java index c64c5bec..6ee6b72d 100644 --- a/app/src/main/java/com/fastaccess/ui/widgets/FontTextView.java +++ b/app/src/main/java/com/fastaccess/ui/widgets/FontTextView.java @@ -3,12 +3,16 @@ package com.fastaccess.ui.widgets; import android.content.Context; import android.content.res.TypedArray; import android.graphics.drawable.Drawable; +import android.graphics.drawable.ScaleDrawable; import android.os.Parcelable; import android.support.annotation.ColorInt; +import android.support.annotation.DrawableRes; import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.support.v4.content.ContextCompat; import android.support.v7.widget.AppCompatTextView; import android.util.AttributeSet; +import android.view.Gravity; import com.fastaccess.R; import com.fastaccess.helper.TypeFaceHelper; @@ -72,4 +76,14 @@ public class FontTextView extends AppCompatTextView { } } } + + public void setSmallLeftDrawable(@DrawableRes int drawableRes) { + Drawable drawable = ContextCompat.getDrawable(getContext(), drawableRes); + int width = drawable.getIntrinsicWidth(); + int height = drawable.getIntrinsicHeight(); + drawable.setBounds(0, 0, width / 2, height / 2); + ScaleDrawable sd = new ScaleDrawable(drawable, Gravity.CENTER, 0.8f, 0.8f); + sd.setLevel(8000); + setCompoundDrawablesWithIntrinsicBounds(sd, null, null, null); + } } diff --git a/app/src/main/res/drawable/ic_repo.xml b/app/src/main/res/drawable/ic_repo.xml new file mode 100644 index 00000000..3d909306 --- /dev/null +++ b/app/src/main/res/drawable/ic_repo.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layouts/other_layouts/layout/nav_menu_layout.xml b/app/src/main/res/layouts/other_layouts/layout/nav_menu_layout.xml index a6e765b4..fb16bab5 100644 --- a/app/src/main/res/layouts/other_layouts/layout/nav_menu_layout.xml +++ b/app/src/main/res/layouts/other_layouts/layout/nav_menu_layout.xml @@ -12,4 +12,4 @@ app:headerLayout="@layout/drawer_header" app:itemIconTint="?colorAccent" app:itemTextColor="?colorAccent" - app:menu="@menu/deeper_drawer_menu"/> \ No newline at end of file + app:menu="@menu/extras_drawer_menu"/> \ No newline at end of file diff --git a/app/src/main/res/layouts/row_layouts/layout/feeds_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/feeds_row_item.xml index 0806736e..701b14a3 100644 --- a/app/src/main/res/layouts/row_layouts/layout/feeds_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/feeds_row_item.xml @@ -15,6 +15,7 @@ android:layout_height="wrap_content" android:orientation="horizontal"> + diff --git a/app/src/main/res/menu/deeper_drawer_menu.xml b/app/src/main/res/menu/extras_drawer_menu.xml similarity index 97% rename from app/src/main/res/menu/deeper_drawer_menu.xml rename to app/src/main/res/menu/extras_drawer_menu.xml index 76453b0a..c7dc8727 100644 --- a/app/src/main/res/menu/deeper_drawer_menu.xml +++ b/app/src/main/res/menu/extras_drawer_menu.xml @@ -4,7 +4,7 @@