From 0e750a835d2ce1bbecb4f15d368d29eba0f35ea1 Mon Sep 17 00:00:00 2001 From: Kosh Date: Sun, 12 Mar 2017 15:51:35 +0800 Subject: [PATCH] now starring, forking and watching repo/gist should be done from a service to close #12 . Improving layouts margins. this commit also fixes #128 --- app/src/main/AndroidManifest.xml | 1 + .../tasks/git/GithubActionService.java | 185 ++++++++++++++++++ .../fastaccess/ui/adapter/IssuesAdapter.java | 4 +- .../adapter/viewholder/IssuesViewHolder.java | 21 +- .../viewholder/SearchCodeViewHolder.java | 4 +- .../com/fastaccess/ui/base/BaseActivity.java | 1 + .../ui/modules/gists/gist/GistPresenter.java | 25 +-- .../ui/modules/gists/gist/GistView.java | 19 +- .../ui/modules/repos/RepoPagerPresenter.java | 77 ++------ .../ui/modules/repos/RepoPagerView.java | 36 ++-- .../fastaccess/ui/widgets/AvatarLayout.java | 2 +- .../fastaccess/ui/widgets/FontTextView.java | 7 +- .../recyclerview/DynamicRecyclerView.java | 2 +- .../layout-land/repo_file_header_layout.xml | 4 +- .../layout-large/repo_file_header_layout.xml | 4 +- .../layout/title_header_layout.xml | 2 +- .../other_layouts/layout/drawer_header.xml | 2 +- .../row_layouts/layout/comments_row_item.xml | 4 +- .../row_layouts/layout/feeds_row_item.xml | 2 +- .../layout/issue_detail_header_row_item.xml | 4 +- .../layout/issue_no_image_row_item.xml | 44 +++++ .../row_layouts/layout/issue_row_item.xml | 2 +- .../layout/issue_timeline_row_item.xml | 2 +- .../row_layouts/layout/releases_row_item.xml | 2 +- .../layout/repo_files_row_item.xml | 2 +- .../row_layouts/layout/repos_row_item.xml | 2 +- app/src/main/res/menu/gist_menu.xml | 2 +- app/src/main/res/values/dimens.xml | 2 + app/src/main/res/values/strings.xml | 1 + 29 files changed, 332 insertions(+), 133 deletions(-) create mode 100644 app/src/main/java/com/fastaccess/provider/tasks/git/GithubActionService.java create mode 100644 app/src/main/res/layouts/row_layouts/layout/issue_no_image_row_item.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 01452eaf..fa99d605 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -188,6 +188,7 @@ + \ No newline at end of file diff --git a/app/src/main/java/com/fastaccess/provider/tasks/git/GithubActionService.java b/app/src/main/java/com/fastaccess/provider/tasks/git/GithubActionService.java new file mode 100644 index 00000000..2cd7fdc5 --- /dev/null +++ b/app/src/main/java/com/fastaccess/provider/tasks/git/GithubActionService.java @@ -0,0 +1,185 @@ +package com.fastaccess.provider.tasks.git; + +import android.app.IntentService; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.support.annotation.IntDef; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; + +import com.fastaccess.helper.BundleConstant; +import com.fastaccess.helper.Bundler; +import com.fastaccess.provider.rest.RestProvider; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +import rx.schedulers.Schedulers; + +/** + * Created by Kosh on 12 Mar 2017, 2:25 PM + */ + +public class GithubActionService extends IntentService { + + public static final int STAR_REPO = 1; + public static final int UNSTAR_REPO = 2; + public static final int FORK_REPO = 3; + public static final int WATCH_REPO = 4; + public static final int UNWATCH_REPO = 5; + public static final int STAR_GIST = 6; + public static final int UNSTAR_GIST = 7; + public static final int FORK_GIST = 8; + + @IntDef({ + STAR_REPO, + UNSTAR_REPO, + FORK_REPO, + WATCH_REPO, + UNWATCH_REPO, + STAR_GIST, + UNSTAR_GIST, + FORK_GIST, + }) + @Retention(RetentionPolicy.SOURCE) @interface GitActionType {} + + + public static void startForRepo(@NonNull Context context, @NonNull String login, @NonNull String repo, @GitActionType int type) { + Intent intent = new Intent(context, GithubActionService.class); + intent.putExtras(Bundler.start() + .put(BundleConstant.ID, repo) + .put(BundleConstant.EXTRA, login) + .put(BundleConstant.EXTRA_TYPE, type) + .end()); + context.startService(intent); + } + + public static void startForGist(@NonNull Context context, @NonNull String id, @GitActionType int type) { + Intent intent = new Intent(context, GithubActionService.class); + intent.putExtras(Bundler.start() + .put(BundleConstant.ID, id) + .put(BundleConstant.EXTRA_TYPE, type) + .end()); + context.startService(intent); + } + + public GithubActionService() { + super(GithubActionService.class.getName()); + } + + @Override protected void onHandleIntent(@Nullable Intent intent) { + if (intent != null && intent.getExtras() != null) { + Bundle bundle = intent.getExtras(); + @GitActionType int type = bundle.getInt(BundleConstant.EXTRA_TYPE); + String id = bundle.getString(BundleConstant.ID); + String login = bundle.getString(BundleConstant.EXTRA); + switch (type) { + case FORK_GIST: + forkGist(id); + break; + case FORK_REPO: + forkRepo(id, login); + break; + case STAR_GIST: + starGist(id); + break; + case STAR_REPO: + starRepo(id, login); + break; + case UNSTAR_GIST: + unStarGist(id); + break; + case UNSTAR_REPO: + unStarRepo(id, login); + break; + case UNWATCH_REPO: + unWatchRepo(id, login); + break; + case WATCH_REPO: + watchRepo(id, login); + break; + } + } + } + + private void forkGist(@Nullable String id) { + if (id != null) { + RestProvider.getGistService() + .forkGist(id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void forkRepo(@Nullable String id, @Nullable String login) { + if (id != null && login != null) { + RestProvider.getRepoService() + .forkRepo(login, id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void starGist(@Nullable String id) { + if (id != null) { + RestProvider.getGistService() + .starGist(id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void starRepo(@Nullable String id, @Nullable String login) { + if (id != null && login != null) { + RestProvider.getRepoService() + .starRepo(login, id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void unStarGist(@Nullable String id) { + if (id != null) { + RestProvider.getGistService() + .unStarGist(id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void unStarRepo(@Nullable String id, @Nullable String login) { + if (id != null && login != null) { + RestProvider.getRepoService() + .unstarRepo(login, id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void unWatchRepo(@Nullable String id, @Nullable String login) { + if (id != null && login != null) { + RestProvider.getRepoService() + .unwatchRepo(login, id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } + + private void watchRepo(@Nullable String id, @Nullable String login) { + if (id != null && login != null) { + RestProvider.getRepoService() + .watchRepo(login, id) + .subscribeOn(Schedulers.io()) + .subscribe(response -> { + }, Throwable::printStackTrace); + } + } +} diff --git a/app/src/main/java/com/fastaccess/ui/adapter/IssuesAdapter.java b/app/src/main/java/com/fastaccess/ui/adapter/IssuesAdapter.java index 3beb6f86..ed452e3b 100644 --- a/app/src/main/java/com/fastaccess/ui/adapter/IssuesAdapter.java +++ b/app/src/main/java/com/fastaccess/ui/adapter/IssuesAdapter.java @@ -28,10 +28,10 @@ public class IssuesAdapter extends BaseRecyclerAdapter { @BindView(R.id.title) FontTextView title; - @BindView(R.id.avatarLayout) AvatarLayout avatarLayout; + @Nullable @BindView(R.id.avatarLayout) AvatarLayout avatarLayout; @BindView(R.id.details) FontTextView details; @BindString(R.string.by) String by; - private IssuesViewHolder(@NonNull View itemView, @Nullable BaseRecyclerAdapter adapter) { + private boolean withAvatar; + + private IssuesViewHolder(@NonNull View itemView, @Nullable BaseRecyclerAdapter adapter, boolean withAvatar) { super(itemView, adapter); + this.withAvatar = withAvatar; } - public static IssuesViewHolder newInstance(ViewGroup viewGroup, BaseRecyclerAdapter adapter) { - return new IssuesViewHolder(getView(viewGroup, R.layout.issue_row_item), adapter); + public static IssuesViewHolder newInstance(ViewGroup viewGroup, BaseRecyclerAdapter adapter, boolean withAvatar) { + if (withAvatar) { + return new IssuesViewHolder(getView(viewGroup, R.layout.issue_row_item), adapter, true); + } else { + return new IssuesViewHolder(getView(viewGroup, R.layout.issue_no_image_row_item), adapter, false); + } } - public void bind(@NonNull IssueModel issueModel, boolean withAvatar) { + @Override public void bind(@NonNull IssueModel issueModel) { title.setText(issueModel.getTitle()); if (issueModel.getState() != null) { CharSequence data = ParseDateFormat.getTimeAgo(issueModel.getState() == IssueState.open @@ -49,11 +56,9 @@ public class IssuesViewHolder extends BaseViewHolder { .append(" ") .append(data)); } - if (withAvatar) { + if (withAvatar && avatarLayout != null) { avatarLayout.setUrl(issueModel.getUser().getAvatarUrl(), issueModel.getUser().getLogin()); avatarLayout.setVisibility(View.VISIBLE); } } - - @Override public void bind(@NonNull IssueModel issueModel) {} } diff --git a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/SearchCodeViewHolder.java b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/SearchCodeViewHolder.java index 06ea8dd3..3a9036f9 100644 --- a/app/src/main/java/com/fastaccess/ui/adapter/viewholder/SearchCodeViewHolder.java +++ b/app/src/main/java/com/fastaccess/ui/adapter/viewholder/SearchCodeViewHolder.java @@ -7,7 +7,6 @@ import android.view.ViewGroup; import com.fastaccess.R; import com.fastaccess.data.dao.SearchCodeModel; -import com.fastaccess.ui.widgets.AvatarLayout; import com.fastaccess.ui.widgets.FontTextView; import com.fastaccess.ui.widgets.recyclerview.BaseRecyclerAdapter; import com.fastaccess.ui.widgets.recyclerview.BaseViewHolder; @@ -21,7 +20,6 @@ import butterknife.BindView; public class SearchCodeViewHolder extends BaseViewHolder { @BindView(R.id.title) FontTextView title; - @BindView(R.id.avatarLayout) AvatarLayout avatarLayout; @BindView(R.id.details) FontTextView details; private SearchCodeViewHolder(@NonNull View itemView, @Nullable BaseRecyclerAdapter adapter) { @@ -29,7 +27,7 @@ public class SearchCodeViewHolder extends BaseViewHolder { } public static SearchCodeViewHolder newInstance(ViewGroup viewGroup, BaseRecyclerAdapter adapter) { - return new SearchCodeViewHolder(getView(viewGroup, R.layout.issue_row_item), adapter); + return new SearchCodeViewHolder(getView(viewGroup, R.layout.issue_no_image_row_item), adapter); } @Override public void bind(@NonNull SearchCodeModel codeMode) { diff --git a/app/src/main/java/com/fastaccess/ui/base/BaseActivity.java b/app/src/main/java/com/fastaccess/ui/base/BaseActivity.java index c7526d9c..a6c9812b 100644 --- a/app/src/main/java/com/fastaccess/ui/base/BaseActivity.java +++ b/app/src/main/java/com/fastaccess/ui/base/BaseActivity.java @@ -186,6 +186,7 @@ public abstract class BaseActivity implements GistMvp.Prese } @Override public void onStarGist() { - if (getGist() != null) { - makeRestCall(!isGistStarred ? RestProvider.getGistService().starGist(gistId) - : RestProvider.getGistService().unStarGist(gistId), - booleanResponse -> { - if (!isGistStarred) { - isGistStarred = booleanResponse.code() == 204; - } else { - isGistStarred = booleanResponse.code() != 204; - } - sendToView(view -> view.onGistStarred(isGistStarred)); - }); - } + isGistStarred = !isGistStarred; + sendToView(view -> view.onGistStarred(isGistStarred)); } @Override public void onForkGist() { - if (getGist() != null) { - if (!isGistForked) { - makeRestCall(RestProvider.getGistService().forkGist(gistId), - gistsModelResponse -> { - isGistForked = gistsModelResponse.code() == 201; - sendToView(view -> view.onGistForked(isGistForked)); - }); - } - } + isGistForked = !isGistForked; + sendToView(view -> view.onGistForked(isGistForked)); } @Override public boolean isForked() { diff --git a/app/src/main/java/com/fastaccess/ui/modules/gists/gist/GistView.java b/app/src/main/java/com/fastaccess/ui/modules/gists/gist/GistView.java index c96a571e..b4926f05 100644 --- a/app/src/main/java/com/fastaccess/ui/modules/gists/gist/GistView.java +++ b/app/src/main/java/com/fastaccess/ui/modules/gists/gist/GistView.java @@ -21,6 +21,7 @@ import com.fastaccess.helper.BundleConstant; import com.fastaccess.helper.Bundler; import com.fastaccess.helper.InputHelper; import com.fastaccess.helper.ParseDateFormat; +import com.fastaccess.provider.tasks.git.GithubActionService; import com.fastaccess.ui.adapter.FragmentsPagerAdapter; import com.fastaccess.ui.base.BaseActivity; import com.fastaccess.ui.modules.gists.gist.comments.GistCommentsView; @@ -75,10 +76,18 @@ public class GistView extends BaseActivity view.setEnabled(false); switch (view.getId()) { case R.id.startGist: - getPresenter().onStarGist(); + if (getPresenter().getGist() != null) { + GithubActionService.startForGist(this, getPresenter().getGist().getGistId(), + getPresenter().isStarred() ? GithubActionService.UNSTAR_GIST : GithubActionService.STAR_GIST); + getPresenter().onStarGist(); + } break; case R.id.forkGist: - getPresenter().onForkGist(); + if (getPresenter().getGist() != null) { + GithubActionService.startForGist(this, getPresenter().getGist().getGistId(), + GithubActionService.FORK_GIST); + getPresenter().onForkGist(); + } break; } } @@ -161,12 +170,14 @@ public class GistView extends BaseActivity } @Override public void onGistStarred(boolean isStarred) { - startGist.tintDrawable(isStarred ? R.color.accent : R.color.black); + startGist.setImageResource(isStarred ? R.drawable.ic_star_filled : R.drawable.ic_star); + startGist.tintDrawable(R.color.accent); startGist.setEnabled(true); } @Override public void onGistForked(boolean isForked) { - forkGist.tintDrawable(isForked ? R.color.accent : R.color.black); + forkGist.setImageResource(isForked ? R.drawable.ic_fork_filled : R.drawable.ic_fork); + forkGist.tintDrawable(R.color.accent); forkGist.setEnabled(true); } diff --git a/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerPresenter.java b/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerPresenter.java index 96f550dc..b5cc4c70 100644 --- a/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerPresenter.java +++ b/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerPresenter.java @@ -18,9 +18,6 @@ import com.fastaccess.ui.modules.repos.code.RepoCodePagerView; import com.fastaccess.ui.modules.repos.issues.RepoIssuesPagerView; import com.fastaccess.ui.modules.repos.pull_requests.RepoPullRequestPagerView; -import retrofit2.Response; -import rx.Observable; - import static com.fastaccess.helper.ActivityHelper.getVisibleFragment; /** @@ -96,73 +93,29 @@ class RepoPagerPresenter extends BasePresenter implements Rep @Override public void onWatch() { if (getRepo() == null) return; - String login = getRepo().getOwner().getLogin(); - String name = getRepo().getName(); - Observable> observable = RxHelper - .getObserver(!isWatched ? RestProvider.getRepoService().watchRepo(login, name) - : RestProvider.getRepoService().unwatchRepo(login, name)); - manageSubscription(observable - .doOnSubscribe(() -> sendToView(view -> view.onEnableDisableWatch(false))) - .doOnNext(booleanResponse -> { - if (!isWatched) { - isWatched = booleanResponse.code() == 204; - } else { - isWatched = booleanResponse.code() != 204; - } - sendToView(view -> { - view.onRepoWatched(isWatched); - view.onChangeWatchedCount(isWatched); - }); - }) - .onErrorReturn(throwable -> { - sendToView(view -> view.onEnableDisableWatch(true)); - return null; - }) - .subscribe()); + isWatched = !isWatched; + sendToView(view -> { + view.onRepoWatched(isWatched); + view.onChangeWatchedCount(isWatched); + }); } @Override public void onStar() { if (getRepo() == null) return; - String login = getRepo().getOwner().getLogin(); - String name = getRepo().getName(); - Observable> observable = RxHelper - .getObserver(!isStarred ? RestProvider.getRepoService().starRepo(login, name) - : RestProvider.getRepoService().unstarRepo(login, name)); - manageSubscription(observable - .doOnSubscribe(() -> sendToView(view -> view.onEnableDisableStar(false))) - .doOnNext(booleanResponse -> { - if (!isStarred) { - isStarred = booleanResponse.code() == 204; - } else { - isStarred = booleanResponse.code() != 204; - } - sendToView(view -> { - view.onRepoStarred(isStarred); - view.onChangeStarCount(isStarred); - }); - }) - .onErrorReturn(throwable -> { - sendToView(view -> view.onEnableDisableStar(true)); - return null; - }) - .subscribe()); + isStarred = !isStarred; + sendToView(view -> { + view.onRepoStarred(isStarred); + view.onChangeStarCount(isStarred); + }); } @Override public void onFork() { if (!isForked && getRepo() != null) { - String login = login(); - String name = repoId(); - manageSubscription(RxHelper.getObserver(RestProvider.getRepoService().forkRepo(login, name)) - .doOnSubscribe(() -> sendToView(view -> view.onEnableDisableFork(false))) - .doOnNext(repoModel -> sendToView(view -> { - view.onRepoForked(isForked = repoModel != null); - view.onChangeForkCount(isForked); - })) - .onErrorReturn(throwable -> { - sendToView(view -> view.onEnableDisableFork(true)); - return null; - }) - .subscribe()); + isForked = true; + sendToView(view -> { + view.onRepoForked(isForked); + view.onChangeForkCount(isForked); + }); } } diff --git a/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerView.java b/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerView.java index 95ce43c7..6f7d2fb5 100644 --- a/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerView.java +++ b/app/src/main/java/com/fastaccess/ui/modules/repos/RepoPagerView.java @@ -27,6 +27,7 @@ import com.fastaccess.helper.InputHelper; import com.fastaccess.helper.ParseDateFormat; import com.fastaccess.helper.PrefGetter; import com.fastaccess.helper.TypeFaceHelper; +import com.fastaccess.provider.tasks.git.GithubActionService; import com.fastaccess.ui.base.BaseActivity; import com.fastaccess.ui.modules.repos.code.RepoCodePagerView; import com.fastaccess.ui.modules.repos.issues.RepoIssuesPagerView; @@ -113,7 +114,7 @@ public class RepoPagerView extends BaseActivity 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 2f5a6ff7..ecfb4796 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 @@ -21,7 +21,7 @@ android:id="@+id/avatarLayout" android:layout_width="@dimen/large_icon_zie" android:layout_height="@dimen/large_icon_zie" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin" android:transitionName="@string/icon_transition"/> diff --git a/app/src/main/res/layouts/row_layouts/layout/issue_detail_header_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/issue_detail_header_row_item.xml index 2c37a755..d720a923 100644 --- a/app/src/main/res/layouts/row_layouts/layout/issue_detail_header_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/issue_detail_header_row_item.xml @@ -26,7 +26,7 @@ android:id="@+id/avatarView" android:layout_width="48dp" android:layout_height="48dp" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin"/> diff --git a/app/src/main/res/layouts/row_layouts/layout/issue_no_image_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/issue_no_image_row_item.xml new file mode 100644 index 00000000..8a4a5b01 --- /dev/null +++ b/app/src/main/res/layouts/row_layouts/layout/issue_no_image_row_item.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layouts/row_layouts/layout/issue_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/issue_row_item.xml index 77288b95..7954d978 100644 --- a/app/src/main/res/layouts/row_layouts/layout/issue_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/issue_row_item.xml @@ -24,7 +24,7 @@ android:layout_width="48dp" android:layout_height="48dp" android:visibility="gone" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin" tools:visibility="visible"/> diff --git a/app/src/main/res/layouts/row_layouts/layout/issue_timeline_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/issue_timeline_row_item.xml index b77d4e71..fafe2bd4 100644 --- a/app/src/main/res/layouts/row_layouts/layout/issue_timeline_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/issue_timeline_row_item.xml @@ -43,7 +43,7 @@ android:layout_width="24dp" android:layout_height="24dp" android:layout_gravity="top" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin"/> diff --git a/app/src/main/res/layouts/row_layouts/layout/repo_files_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/repo_files_row_item.xml index 1ea70a9d..e7fa70c9 100644 --- a/app/src/main/res/layouts/row_layouts/layout/repo_files_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/repo_files_row_item.xml @@ -22,7 +22,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin" android:background="?selectableItemBackgroundBorderless" android:contentDescription="@string/file" diff --git a/app/src/main/res/layouts/row_layouts/layout/repos_row_item.xml b/app/src/main/res/layouts/row_layouts/layout/repos_row_item.xml index d55958ca..42019794 100644 --- a/app/src/main/res/layouts/row_layouts/layout/repos_row_item.xml +++ b/app/src/main/res/layouts/row_layouts/layout/repos_row_item.xml @@ -23,7 +23,7 @@ android:id="@+id/avatarLayout" android:layout_width="48dp" android:layout_height="48dp" - android:layout_marginEnd="@dimen/avatar_margin" + android:layout_marginEnd="@dimen/avatar_margin_end" android:layout_marginStart="@dimen/avatar_margin" tools:visibility="visible" android:visibility="gone"/> diff --git a/app/src/main/res/menu/gist_menu.xml b/app/src/main/res/menu/gist_menu.xml index 77140ab3..6c9a89fc 100644 --- a/app/src/main/res/menu/gist_menu.xml +++ b/app/src/main/res/menu/gist_menu.xml @@ -7,7 +7,7 @@ android:id="@+id/share" android:icon="@drawable/ic_share" android:title="@string/share" - app:showAsAction="ifRoom"/> + app:showAsAction="never"/> 48dp 64dp 72dp + 76dp 86dp 16dp 1 @@ -27,4 +28,5 @@ @dimen/spacing_micro 1px 12dp + 16dp diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0991f87a..bad3606c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -254,4 +254,5 @@ Having an issue? Report it here About Notification Settings + Unauthorized user. \ No newline at end of file