From 3c9dc73df86d63df3e3f5c17a57ccf22792795b0 Mon Sep 17 00:00:00 2001 From: Hannes Dorfmann Date: Mon, 20 Mar 2017 15:12:22 +0100 Subject: [PATCH 1/6] Update ISSUE_TEMPLATE.md --- .github/ISSUE_TEMPLATE.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md index 06a4137f..7b14cd7d 100644 --- a/.github/ISSUE_TEMPLATE.md +++ b/.github/ISSUE_TEMPLATE.md @@ -11,10 +11,10 @@ With that said, if you want to report a bug or file a feature request, then go a If you want to report an issue, please use the following template to make it easier for us to identify the bug: -### Mosby Version +**Mosby Version:** -### Expected behavior +**Expected behavior** -### Actual behavior (include a stacktrace if crash): +**Actual behavior (include a stacktrace if crash)** -### Steps to reproduce the behavior +**Steps to reproduce the behavior or link to a sample repository** From 0cfeacb4c5762e96d942ffd8adf44a961b48d562 Mon Sep 17 00:00:00 2001 From: jonathan-caryl Date: Wed, 22 Mar 2017 10:13:07 +0000 Subject: [PATCH 2/6] Modifier public is redundant for interface methods (#223) --- .../mosby3/ActivityMviDelegate.java | 22 +++++++------- .../mosby3/FragmentMviDelegate.java | 30 +++++++++---------- .../mosby3/MviDelegateCallback.java | 6 ++-- .../mosby3/ViewGroupMviDelegate.java | 8 ++--- .../mosby3/ViewGroupMviDelegateCallback.java | 6 ++-- .../mosby3/mvp/lce/MvpLceView.java | 10 +++---- .../mvp/delegate/ActivityMvpDelegate.java | 20 ++++++------- .../mvp/delegate/FragmentMvpDelegate.java | 24 +++++++-------- .../mvp/delegate/MvpDelegateCallback.java | 8 ++--- .../delegate/ViewGroupDelegateCallback.java | 6 ++-- .../mvp/delegate/ViewGroupMvpDelegate.java | 8 ++--- .../sample/mail/MainActivityComponent.java | 2 +- .../sample/mail/base/view/AuthView.java | 2 +- .../sample/mail/base/view/BaseMailView.java | 10 +++---- .../base/view/viewstate/AuthViewState.java | 4 +-- .../sample/mail/details/DetailsComponent.java | 4 +-- .../mosby3/sample/mail/label/LabelView.java | 8 ++--- .../sample/mail/login/LoginComponent.java | 2 +- .../mosby3/sample/mail/login/LoginView.java | 8 ++--- .../sample/mail/mails/MailsComponent.java | 4 +-- .../mosby3/sample/mail/mails/MailsView.java | 2 +- .../mosby3/sample/mail/menu/MenuView.java | 4 +-- .../sample/mail/model/mail/MailGenerator.java | 4 +-- .../model/mail/service/ServiceComponent.java | 4 +-- .../sample/mail/profile/ProfileComponent.java | 2 +- .../profile/mails/ProfileMailsComponent.java | 4 +-- .../sample/mail/search/SearchComponent.java | 4 +-- .../mosby3/sample/mail/search/SearchView.java | 8 ++--- .../mail/statistics/StatisticsComponent.java | 2 +- .../sample/mail/write/WriteComponent.java | 4 +-- .../mosby3/sample/mail/write/WriteView.java | 10 +++---- .../businesslogic/http/ProductBackendApi.java | 2 +- .../details/ProductDetailsViewState.java | 6 ++-- .../mvi/view/category/CategoryView.java | 4 +-- .../mvi/view/category/CategoryViewState.java | 6 ++-- .../checkoutbutton/CheckoutButtonView.java | 4 +-- .../mvi/view/detail/ProductDetailsView.java | 8 ++--- .../mosby3/sample/mvi/view/home/HomeView.java | 10 +++---- .../mvi/view/home/PartialStateChanges.java | 24 +++++++-------- .../sample/mvi/view/menu/MenuViewState.java | 6 ++-- .../SelectedCountToolbarView.java | 6 ++-- .../ShoppingCartLabelView.java | 4 +-- .../view/ui/viewholder/ProductViewHolder.java | 2 +- .../mosby3/sample/mvp/CountriesPresenter.java | 2 +- .../mvp/customviewstate/MyCustomView.java | 4 +-- .../MvpViewStateDelegateCallback.java | 14 ++++----- .../mvp/viewstate/RestorableViewState.java | 4 +-- .../mosby3/mvp/viewstate/ViewState.java | 2 +- 48 files changed, 174 insertions(+), 174 deletions(-) diff --git a/mvi/src/main/java/com/hannesdorfmann/mosby3/ActivityMviDelegate.java b/mvi/src/main/java/com/hannesdorfmann/mosby3/ActivityMviDelegate.java index 330992d5..ed1f49de 100644 --- a/mvi/src/main/java/com/hannesdorfmann/mosby3/ActivityMviDelegate.java +++ b/mvi/src/main/java/com/hannesdorfmann/mosby3/ActivityMviDelegate.java @@ -54,58 +54,58 @@ public interface ActivityMviDelegate extends MvpView { * @param pullToRefresh true, if pull-to-refresh has been invoked loading. */ @UiThread - public void showLoading(boolean pullToRefresh); + void showLoading(boolean pullToRefresh); /** * Show the content view. @@ -58,7 +58,7 @@ public interface MvpLceView extends MvpView { * The content view must have the id = R.id.contentView */ @UiThread - public void showContent(); + void showContent(); /** * Show the error view. @@ -69,13 +69,13 @@ public interface MvpLceView extends MvpView { * false. */ @UiThread - public void showError(Throwable e, boolean pullToRefresh); + void showError(Throwable e, boolean pullToRefresh); /** * The data that should be displayed with {@link #showContent()} */ @UiThread - public void setData(M data); + void setData(M data); /** * Load the data. Typically invokes the presenter method to load the desired data. @@ -88,5 +88,5 @@ public interface MvpLceView extends MvpView { * @param pullToRefresh true, if triggered by a pull to refresh. Otherwise false. */ @UiThread - public void loadData(boolean pullToRefresh); + void loadData(boolean pullToRefresh); } diff --git a/mvp/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/ActivityMvpDelegate.java b/mvp/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/ActivityMvpDelegate.java index 875717d1..95b88cdf 100644 --- a/mvp/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/ActivityMvpDelegate.java +++ b/mvp/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/ActivityMvpDelegate.java @@ -53,52 +53,52 @@ public interface ActivityMvpDelegate extends MvpLceView { - public void showAuthenticationRequired(); + void showAuthenticationRequired(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/BaseMailView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/BaseMailView.java index c4d922b1..28599ef1 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/BaseMailView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/BaseMailView.java @@ -23,18 +23,18 @@ */ public interface BaseMailView extends AuthView { - public void markMailAsStared(int mailId); + void markMailAsStared(int mailId); - public void markMailAsUnstared(int mailId); + void markMailAsUnstared(int mailId); - public void showStaringFailed(Mail mail); + void showStaringFailed(Mail mail); - public void showUnstaringFailed(Mail mail); + void showUnstaringFailed(Mail mail); /** * Marks a certain mail as read */ - public void markMailAsRead(Mail mail, boolean read); + void markMailAsRead(Mail mail, boolean read); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/viewstate/AuthViewState.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/viewstate/AuthViewState.java index 58c213dc..6bf40be2 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/viewstate/AuthViewState.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/base/view/viewstate/AuthViewState.java @@ -24,7 +24,7 @@ */ public interface AuthViewState> extends LceViewState { - public static final int SHOWING_AUTHENTICATION_REQUIRED = 2; + static final int SHOWING_AUTHENTICATION_REQUIRED = 2; - public void setShowingAuthenticationRequired(); + void setShowingAuthenticationRequired(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/details/DetailsComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/details/DetailsComponent.java index fb57c019..988adb0c 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/details/DetailsComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/details/DetailsComponent.java @@ -16,8 +16,8 @@ ) public interface DetailsComponent { - public DetailsPresenter presenter(); + DetailsPresenter presenter(); - public void inject(DetailsFragment fragment); + void inject(DetailsFragment fragment); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/label/LabelView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/label/LabelView.java index 8f275294..52e21234 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/label/LabelView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/label/LabelView.java @@ -10,12 +10,12 @@ */ public interface LabelView extends MvpLceView> { - public void showLabel(); + void showLabel(); - public void changeLabel(Mail mail, String label); + void changeLabel(Mail mail, String label); - public void showChangeLabelFailed(Mail mail, Throwable t); + void showChangeLabelFailed(Mail mail, Throwable t); - public void setMail(Mail mail); + void setMail(Mail mail); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginComponent.java index 4b968d34..f8c0f190 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginComponent.java @@ -29,5 +29,5 @@ dependencies = MailAppComponent.class) public interface LoginComponent { - public LoginPresenter presenter(); + LoginPresenter presenter(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginView.java index 2f14e1c7..dcb4c917 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/login/LoginView.java @@ -23,11 +23,11 @@ */ public interface LoginView extends MvpView { - public void showLoginForm(); + void showLoginForm(); - public void showError(); + void showError(); - public void showLoading(); + void showLoading(); - public void loginSuccessful(); + void loginSuccessful(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsComponent.java index 844468a3..db2c7cd9 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsComponent.java @@ -14,7 +14,7 @@ dependencies = MailAppComponent.class) public interface MailsComponent { - public MailsPresenter presenter(); + MailsPresenter presenter(); - public void inject(MailsFragment fragment); + void inject(MailsFragment fragment); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsView.java index 35e1a914..5fe8e6e4 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/mails/MailsView.java @@ -25,5 +25,5 @@ */ public interface MailsView extends BaseMailView> { - public void changeLabel(Mail mail, String label); + void changeLabel(Mail mail, String label); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/menu/MenuView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/menu/MenuView.java index 43c5afe5..180466c1 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/menu/MenuView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/menu/MenuView.java @@ -26,7 +26,7 @@ */ public interface MenuView extends AuthView> { - public void setAccount(Account account); + void setAccount(Account account); - public void decrementUnreadCount(String label); + void decrementUnreadCount(String label); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/MailGenerator.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/MailGenerator.java index f8fdb464..74bf7d2b 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/MailGenerator.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/MailGenerator.java @@ -23,7 +23,7 @@ */ public interface MailGenerator { - public List generateMails(); + List generateMails(); - public Mail generateResponseMail(String senderMail); + Mail generateResponseMail(String senderMail); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/ServiceComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/ServiceComponent.java index 875e3490..989746d0 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/ServiceComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/ServiceComponent.java @@ -14,7 +14,7 @@ dependencies = MailAppComponent.class) public interface ServiceComponent { - public void inject(SendMailService service); + void inject(SendMailService service); - public void inject(GcmFakeIntentService service); + void inject(GcmFakeIntentService service); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/ProfileComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/ProfileComponent.java index c737b64d..88ed7142 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/ProfileComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/ProfileComponent.java @@ -16,5 +16,5 @@ }, dependencies = MailAppComponent.class) public interface ProfileComponent { - public ProfilePresenter presenter(); + ProfilePresenter presenter(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/mails/ProfileMailsComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/mails/ProfileMailsComponent.java index 848eedb8..781c46a4 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/mails/ProfileMailsComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/profile/mails/ProfileMailsComponent.java @@ -15,7 +15,7 @@ public interface ProfileMailsComponent { - public ProfileMailsPresenter presenter(); + ProfileMailsPresenter presenter(); - public void inject(ProfileMailsFragment fragment); + void inject(ProfileMailsFragment fragment); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchComponent.java index 57598c69..eaf761b9 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchComponent.java @@ -13,7 +13,7 @@ modules = { MailModule.class, NavigationModule.class }, dependencies = MailAppComponent.class) public interface SearchComponent { - public SearchPresenter presenter(); + SearchPresenter presenter(); - public void inject(SearchFragment fragment); + void inject(SearchFragment fragment); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchView.java index 3ab89f75..29beb448 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/search/SearchView.java @@ -9,11 +9,11 @@ */ public interface SearchView extends BaseMailView> { - public void addOlderMails(List older); + void addOlderMails(List older); - public void showLoadMore(boolean showLoadMore); + void showLoadMore(boolean showLoadMore); - public void showLoadMoreError(Throwable e); + void showLoadMoreError(Throwable e); - public void showSearchNotStartedYet(); + void showSearchNotStartedYet(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/statistics/StatisticsComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/statistics/StatisticsComponent.java index d4ebeb69..1ec00c02 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/statistics/StatisticsComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/statistics/StatisticsComponent.java @@ -14,5 +14,5 @@ dependencies = MailAppComponent.class) public interface StatisticsComponent { - public StatisticsPresenter presenter(); + StatisticsPresenter presenter(); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteComponent.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteComponent.java index f9ea83b3..73e92ca7 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteComponent.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteComponent.java @@ -13,7 +13,7 @@ modules = { MailModule.class, NavigationModule.class }, dependencies = MailAppComponent.class) public interface WriteComponent { - public WritePresenter presenter(); + WritePresenter presenter(); - public void inject(WriteActivity activity); + void inject(WriteActivity activity); } diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteView.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteView.java index b1a9d137..8d939fac 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteView.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/write/WriteView.java @@ -7,13 +7,13 @@ */ public interface WriteView extends MvpView { - public void showForm(); + void showForm(); - public void showLoading(); + void showLoading(); - public void showError(Throwable e); + void showError(Throwable e); - public void showAuthenticationRequired(); + void showAuthenticationRequired(); - public void finishBecauseSuccessful(); + void finishBecauseSuccessful(); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/http/ProductBackendApi.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/http/ProductBackendApi.java index 1233b0b6..a6aee234 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/http/ProductBackendApi.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/http/ProductBackendApi.java @@ -34,5 +34,5 @@ public interface ProductBackendApi { @GET("/sockeqwe/mosby/" + DependencyInjection.BASE_URL_BRANCH + "/sample-mvi/server/api/products{pagination}.json") - public Observable> getProducts(@Path("pagination") int pagination); + Observable> getProducts(@Path("pagination") int pagination); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/interactor/details/ProductDetailsViewState.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/interactor/details/ProductDetailsViewState.java index 44960a71..b1ca0928 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/interactor/details/ProductDetailsViewState.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/businesslogic/interactor/details/ProductDetailsViewState.java @@ -29,7 +29,7 @@ public interface ProductDetailsViewState { /** * Loads the list of all menu items */ - public final class LoadingState implements ProductDetailsViewState { + final class LoadingState implements ProductDetailsViewState { @Override public String toString() { return "LoadingState{}"; @@ -39,7 +39,7 @@ public final class LoadingState implements ProductDetailsViewState { /** * Ane error has ocurred while loading the data */ - public final class ErrorState implements ProductDetailsViewState { + final class ErrorState implements ProductDetailsViewState { private final Throwable error; public ErrorState(Throwable error) { @@ -60,7 +60,7 @@ public Throwable getError() { /** * Data has been loaded successfully and can now be displayed */ - public final class DataState implements ProductDetailsViewState { + final class DataState implements ProductDetailsViewState { private final ProductDetail detail; public DataState(ProductDetail detail) { diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryView.java index c6e93de3..ba6a4b89 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryView.java @@ -32,10 +32,10 @@ public interface CategoryView extends MvpView { * * @return Observable containing the category name as String */ - public Observable loadIntents(); + Observable loadIntents(); /** * Render the state on the view */ - public void render(CategoryViewState state); + void render(CategoryViewState state); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryViewState.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryViewState.java index 1dfd8bdb..8330a6af 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryViewState.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/category/CategoryViewState.java @@ -29,7 +29,7 @@ public interface CategoryViewState { /** * Loads the list of all menu items */ - public final class LoadingState implements CategoryViewState { + final class LoadingState implements CategoryViewState { @Override public String toString() { return "LoadingState{}"; @@ -39,7 +39,7 @@ public final class LoadingState implements CategoryViewState { /** * Ane error has ocurred while loading the data */ - public final class ErrorState implements CategoryViewState { + final class ErrorState implements CategoryViewState { private final Throwable error; public ErrorState(Throwable error) { @@ -60,7 +60,7 @@ public Throwable getError() { /** * Data has been loaded successfully and can now be displayed */ - public final class DataState implements CategoryViewState { + final class DataState implements CategoryViewState { private final List products; public DataState(List products) { diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/checkoutbutton/CheckoutButtonView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/checkoutbutton/CheckoutButtonView.java index b019b8d7..543cd24f 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/checkoutbutton/CheckoutButtonView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/checkoutbutton/CheckoutButtonView.java @@ -29,7 +29,7 @@ public interface CheckoutButtonView extends MvpView { /** * Intent to load the data */ - public Observable loadIntent(); + Observable loadIntent(); - public void render(double sum); + void render(double sum); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/detail/ProductDetailsView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/detail/ProductDetailsView.java index 32e1338d..90aa33f7 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/detail/ProductDetailsView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/detail/ProductDetailsView.java @@ -31,20 +31,20 @@ public interface ProductDetailsView extends MvpView { /** * The intent to load details of a certain product */ - public Observable loadDetailsIntent(); + Observable loadDetailsIntent(); /** * The intent to add a product to the shopping cart */ - public Observable addToShoppingCartIntent(); + Observable addToShoppingCartIntent(); /** * the intent to remove a product from the shopping cart */ - public Observable removeFromShoppingCartIntent(); + Observable removeFromShoppingCartIntent(); /** * Render the state n the UI */ - public void render(ProductDetailsViewState state); + void render(ProductDetailsViewState state); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeView.java index 2a607c58..037e839f 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/HomeView.java @@ -33,31 +33,31 @@ public interface HomeView extends MvpView { * * @return The emitted item boolean can be ignored because it is always true */ - public Observable loadFirstPageIntent(); + Observable loadFirstPageIntent(); /** * The intent to load the next page * * @return The emitted item boolean can be ignored because it is always true */ - public Observable loadNextPageIntent(); + Observable loadNextPageIntent(); /** * The intent to react on pull-to-refresh * * @return The emitted item boolean can be ignored because it is always true */ - public Observable pullToRefreshIntent(); + Observable pullToRefreshIntent(); /** * The intent to load more items from a given group * * @return Observable with the name of the group */ - public Observable loadAllProductsFromCategoryIntent(); + Observable loadAllProductsFromCategoryIntent(); /** * Renders the viewState */ - public void render(HomeViewState viewState); + void render(HomeViewState viewState); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java index df4ea817..35f8f49d 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/home/PartialStateChanges.java @@ -30,7 +30,7 @@ public interface PartialStateChanges { /** * Indicates that the first page is loading */ - public final class FirstPageLoading implements PartialStateChanges { + final class FirstPageLoading implements PartialStateChanges { @Override public String toString() { return "FirstPageLoadingState{}"; @@ -40,7 +40,7 @@ public final class FirstPageLoading implements PartialStateChanges { /** * Indicates that an error has occurred while loading the first page */ - public final class FirstPageError implements PartialStateChanges { + final class FirstPageError implements PartialStateChanges { private final Throwable error; public FirstPageError(Throwable error) { @@ -61,7 +61,7 @@ public Throwable getError() { /** * Indicates that the first page data has been loaded successfully */ - public final class FirstPageLoaded implements PartialStateChanges { + final class FirstPageLoaded implements PartialStateChanges { private final List data; public FirstPageLoaded(List data) { @@ -76,7 +76,7 @@ public List getData() { /** * Next Page has been loaded successfully */ - public final class NextPageLoaded implements PartialStateChanges { + final class NextPageLoaded implements PartialStateChanges { private final List data; public NextPageLoaded(List data) { @@ -91,7 +91,7 @@ public List getData() { /** * Error while loading new page */ - public final class NexPageLoadingError implements PartialStateChanges { + final class NexPageLoadingError implements PartialStateChanges { private final Throwable error; public NexPageLoadingError(Throwable error) { @@ -106,19 +106,19 @@ public Throwable getError() { /** * Indicates that loading the next page has started */ - public final class NextPageLoading implements PartialStateChanges { + final class NextPageLoading implements PartialStateChanges { } /** * Indicates that loading the newest items via pull to refresh has started */ - public final class PullToRefreshLoading implements PartialStateChanges { + final class PullToRefreshLoading implements PartialStateChanges { } /** * Indicates that an error while loading the newest items via pull to refresh has occurred */ - public final class PullToRefeshLoadingError implements PartialStateChanges { + final class PullToRefeshLoadingError implements PartialStateChanges { private final Throwable error; public PullToRefeshLoadingError(Throwable error) { @@ -133,7 +133,7 @@ public Throwable getError() { /** * Indicates that data has been loaded successfully over pull-to-refresh */ - public final class PullToRefreshLoaded implements PartialStateChanges { + final class PullToRefreshLoaded implements PartialStateChanges { private final List data; public PullToRefreshLoaded(List data) { @@ -148,7 +148,7 @@ public List getData() { /** * Loading all Products of a given category has been started */ - public final class ProductsOfCategoryLoading implements PartialStateChanges { + final class ProductsOfCategoryLoading implements PartialStateChanges { private final String categoryName; public ProductsOfCategoryLoading(String categoryName) { @@ -163,7 +163,7 @@ public String getCategoryName() { /** * An error while loading all products has been occurred */ - public final class ProductsOfCategoryLoadingError implements PartialStateChanges { + final class ProductsOfCategoryLoadingError implements PartialStateChanges { private final String categoryName; private final Throwable error; @@ -184,7 +184,7 @@ public Throwable getError() { /** * Products of a given Category has been loaded */ - public final class ProductsOfCategoryLoaded implements PartialStateChanges { + final class ProductsOfCategoryLoaded implements PartialStateChanges { private final List data; private final String categoryName; diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/menu/MenuViewState.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/menu/MenuViewState.java index db673ecd..dbcfedcd 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/menu/MenuViewState.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/menu/MenuViewState.java @@ -29,7 +29,7 @@ public interface MenuViewState { /** * Loads the list of all menu items */ - public final class LoadingState implements MenuViewState{ + final class LoadingState implements MenuViewState{ @Override public String toString() { return "LoadingState{}"; @@ -39,7 +39,7 @@ public final class LoadingState implements MenuViewState{ /** * Ane error has ocurred while loading the data */ - public final class ErrorState implements MenuViewState{ + final class ErrorState implements MenuViewState{ private final Throwable error; public ErrorState(Throwable error) { @@ -60,7 +60,7 @@ public Throwable getError() { /** * Data has been loaded successfully and can now be displayed */ - public final class DataState implements MenuViewState { + final class DataState implements MenuViewState { private final List categories; public DataState(List categories) { diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbarView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbarView.java index 1e8630e1..62264cc2 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbarView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbarView.java @@ -28,15 +28,15 @@ public interface SelectedCountToolbarView extends MvpView { /** * The intent to clear the selection */ - public Observable clearSelectionIntent(); + Observable clearSelectionIntent(); /** * Intent to delete the selected items */ - public Observable deleteSelectedItemsIntent(); + Observable deleteSelectedItemsIntent(); /** * Render the selected state */ - public void render(int selectedCount); + void render(int selectedCount); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabelView.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabelView.java index 77ab49aa..0e02b2e0 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabelView.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabelView.java @@ -30,7 +30,7 @@ public interface ShoppingCartLabelView extends MvpView { /** * Intent to load the data */ - public Observable loadIntent(); + Observable loadIntent(); - public void render(int intemsInShoppingCart); + void render(int intemsInShoppingCart); } diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/ui/viewholder/ProductViewHolder.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/ui/viewholder/ProductViewHolder.java index 8042a032..8a78d78b 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/ui/viewholder/ProductViewHolder.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/ui/viewholder/ProductViewHolder.java @@ -38,7 +38,7 @@ public class ProductViewHolder extends RecyclerView.ViewHolder { public interface ProductClickedListener { - public void onProductClicked(Product product); + void onProductClicked(Product product); } public static ProductViewHolder create(LayoutInflater inflater, ProductClickedListener listener) { diff --git a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesPresenter.java b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesPresenter.java index c9817836..873219da 100644 --- a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesPresenter.java +++ b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/CountriesPresenter.java @@ -23,5 +23,5 @@ */ public interface CountriesPresenter extends MvpPresenter{ - public void loadCountries(final boolean pullToRefresh); + void loadCountries(final boolean pullToRefresh); } diff --git a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/customviewstate/MyCustomView.java b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/customviewstate/MyCustomView.java index 58067909..66db9cb5 100644 --- a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/customviewstate/MyCustomView.java +++ b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/mvp/customviewstate/MyCustomView.java @@ -26,7 +26,7 @@ public interface MyCustomView extends MvpView { - public void showA(A a); + void showA(A a); - public void showB(B b); + void showB(B b); } diff --git a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/MvpViewStateDelegateCallback.java b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/MvpViewStateDelegateCallback.java index f48dfc5c..1679c212 100644 --- a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/MvpViewStateDelegateCallback.java +++ b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/delegate/MvpViewStateDelegateCallback.java @@ -38,17 +38,17 @@ public interface MvpViewStateDelegateCallbackShould only be called by {@link MvpViewStateInternalDelegate} */ - public void setViewState(VS viewState); + void setViewState(VS viewState); /** * Create the viewstate. */ - @NonNull public VS createViewState(); + @NonNull VS createViewState(); /** * This method will be called by {@link MvpViewStateInternalDelegate} to inform that restoring @@ -58,12 +58,12 @@ public interface MvpViewStateDelegateCallbackTypically this is called on the first time the Activity or Fragment starts * and therefore no view state instance previously exists

*/ - public void onNewViewStateInstance(); + void onNewViewStateInstance(); } diff --git a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/RestorableViewState.java b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/RestorableViewState.java index eb91388c..84fa7b9a 100644 --- a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/RestorableViewState.java +++ b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/RestorableViewState.java @@ -37,7 +37,7 @@ public interface RestorableViewState extends ViewState { * * @param out The bundle where the viewstate should be stored in */ - public void saveInstanceState(@NonNull Bundle out); + void saveInstanceState(@NonNull Bundle out); /** * Restores the viewstate that has been saved before with {@link #saveInstanceState(Bundle)} @@ -46,5 +46,5 @@ public interface RestorableViewState extends ViewState { * @return null, if view state could not be restored or the restore viestate instance. Typically * this method will return this. */ - public RestorableViewState restoreInstanceState(Bundle in); + RestorableViewState restoreInstanceState(Bundle in); } diff --git a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/ViewState.java b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/ViewState.java index 07e81a77..0fd2db9a 100644 --- a/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/ViewState.java +++ b/viewstate/src/main/java/com/hannesdorfmann/mosby3/mvp/viewstate/ViewState.java @@ -49,5 +49,5 @@ public interface ViewState { * retained * because the {@link Fragment#setRetainInstance(boolean)} has been set to true */ - public void apply(V view, boolean retained); + void apply(V view, boolean retained); } From 4ccea2cb3d3362a98d22dc65e7ac708cc2d5db94 Mon Sep 17 00:00:00 2001 From: jonathan-caryl Date: Wed, 22 Mar 2017 10:13:44 +0000 Subject: [PATCH 3/6] switch from hardcoded 8.4.0 (#225) --- sample-mvi/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sample-mvi/build.gradle b/sample-mvi/build.gradle index 2a8266b7..7abcd88a 100644 --- a/sample-mvi/build.gradle +++ b/sample-mvi/build.gradle @@ -81,8 +81,8 @@ dependencies { compile "com.squareup.retrofit2:adapter-rxjava2:$retrofitVersion" compile "com.squareup.retrofit2:converter-moshi:$retrofitVersion" - compile 'com.jakewharton:butterknife:8.4.0' - apt 'com.jakewharton:butterknife-compiler:8.4.0' + compile 'com.jakewharton:butterknife:'+rootProject.ext.butterknifeVersion + apt 'com.jakewharton:butterknife-compiler:' + rootProject.ext.butterknifeVersion compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile 'com.github.bumptech.glide:glide:3.7.0' From 9cf785f2ce327e938db2610eb4f4952e506d662f Mon Sep 17 00:00:00 2001 From: jonathan-caryl Date: Wed, 22 Mar 2017 10:58:06 +0000 Subject: [PATCH 4/6] Use plurals for items strings (#224) --- .../selectedcounttoolbar/SelectedCountToolbar.java | 7 +------ .../mvi/view/shoppingcartlabel/ShoppingCartLabel.java | 10 ++-------- sample-mvi/src/main/res/values/strings.xml | 4 ++++ 3 files changed, 7 insertions(+), 14 deletions(-) diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbar.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbar.java index 3782ec31..1f910042 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbar.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/selectedcounttoolbar/SelectedCountToolbar.java @@ -83,12 +83,7 @@ public SelectedCountToolbar(Context context, AttributeSet attrs) { setVisibility(View.GONE); } } else { - // TODO remove hardcoded strings - move to stings.xml with plurals - if (selectedCount == 1) { - setTitle(selectedCount + " Item"); - } else { - setTitle(selectedCount + " Items"); - } + setTitle(getResources().getQuantityString(R.plurals.items, selectedCount, selectedCount)); if (getVisibility() != View.VISIBLE) { animate().alpha(1f).withStartAction(() -> setVisibility(View.VISIBLE)).start(); diff --git a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabel.java b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabel.java index a6294863..0e954594 100644 --- a/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabel.java +++ b/sample-mvi/src/main/java/com/hannesdorfmann/mosby3/sample/mvi/view/shoppingcartlabel/ShoppingCartLabel.java @@ -25,6 +25,7 @@ import com.hannesdorfmann.mosby3.ViewGroupMviDelegate; import com.hannesdorfmann.mosby3.ViewGroupMviDelegateCallback; import com.hannesdorfmann.mosby3.ViewGroupMviDelegateImpl; +import com.hannesdorfmann.mosby3.sample.mvi.R; import com.hannesdorfmann.mosby3.sample.mvi.SampleApplication; import io.reactivex.Observable; import timber.log.Timber; @@ -65,15 +66,8 @@ public ShoppingCartLabel(Context context, AttributeSet attrs) { } @Override public void render(int itemsInShoppingCart) { - // TODO move to strings.xml / internationalization with plurals Timber.d("render %d items in shopping cart", itemsInShoppingCart); - if (itemsInShoppingCart == 0) { - setText("0 items"); - } else if (itemsInShoppingCart == 1) { - setText("1 item"); - } else { - setText(itemsInShoppingCart + " items"); - } + setText(getResources().getQuantityString(R.plurals.items, itemsInShoppingCart, itemsInShoppingCart)); } @Override protected void onAttachedToWindow() { diff --git a/sample-mvi/src/main/res/values/strings.xml b/sample-mvi/src/main/res/values/strings.xml index d91e2315..fb40cd90 100644 --- a/sample-mvi/src/main/res/values/strings.xml +++ b/sample-mvi/src/main/res/values/strings.xml @@ -15,4 +15,8 @@ Search Delete selected items ProductDetailActivity + + %1$d Item + %1$d Items + From 53575fee059987a7baa332fed8ce4c9e178f2871 Mon Sep 17 00:00:00 2001 From: jonathan-caryl Date: Thu, 23 Mar 2017 00:54:14 +0000 Subject: [PATCH 5/6] =?UTF-8?q?Move=20ic=5Flauncher.png=20drawable=20?= =?UTF-8?q?=E2=86=92=20mipmap=20(#226)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sample-mail/src/main/AndroidManifest.xml | 2 +- .../model/mail/service/GcmFakeIntentService.java | 2 +- .../{drawable-hdpi => mipmap-hdpi}/ic_launcher.png | Bin .../{drawable-mdpi => mipmap-mdpi}/ic_launcher.png | Bin .../ic_launcher.png | Bin .../ic_launcher.png | Bin .../ic_launcher.png | Bin 7 files changed, 2 insertions(+), 2 deletions(-) rename sample-mail/src/main/res/{drawable-hdpi => mipmap-hdpi}/ic_launcher.png (100%) rename sample-mail/src/main/res/{drawable-mdpi => mipmap-mdpi}/ic_launcher.png (100%) rename sample-mail/src/main/res/{drawable-xhdpi => mipmap-xhdpi}/ic_launcher.png (100%) rename sample-mail/src/main/res/{drawable-xxhdpi => mipmap-xxhdpi}/ic_launcher.png (100%) rename sample-mail/src/main/res/{drawable-xxxhdpi => mipmap-xxxhdpi}/ic_launcher.png (100%) diff --git a/sample-mail/src/main/AndroidManifest.xml b/sample-mail/src/main/AndroidManifest.xml index 78d96c0e..6f7d4955 100644 --- a/sample-mail/src/main/AndroidManifest.xml +++ b/sample-mail/src/main/AndroidManifest.xml @@ -6,7 +6,7 @@ diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/GcmFakeIntentService.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/GcmFakeIntentService.java index 592923fb..a5b9e974 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/GcmFakeIntentService.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/model/mail/service/GcmFakeIntentService.java @@ -66,7 +66,7 @@ public GcmFakeIntentService() { builder.setLargeIcon(BitmapFactory.decodeResource(getApplicationContext().getResources(), mail.getSender().getImageRes())); - builder.setSmallIcon(R.drawable.ic_launcher) + builder.setSmallIcon(R.mipmap.ic_launcher) .setLights(getResources().getColor(R.color.primary), 1800, 3500) .setAutoCancel(true) .setContentTitle(mail.getSubject()) diff --git a/sample-mail/src/main/res/drawable-hdpi/ic_launcher.png b/sample-mail/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from sample-mail/src/main/res/drawable-hdpi/ic_launcher.png rename to sample-mail/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/sample-mail/src/main/res/drawable-mdpi/ic_launcher.png b/sample-mail/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from sample-mail/src/main/res/drawable-mdpi/ic_launcher.png rename to sample-mail/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/sample-mail/src/main/res/drawable-xhdpi/ic_launcher.png b/sample-mail/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from sample-mail/src/main/res/drawable-xhdpi/ic_launcher.png rename to sample-mail/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/sample-mail/src/main/res/drawable-xxhdpi/ic_launcher.png b/sample-mail/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from sample-mail/src/main/res/drawable-xxhdpi/ic_launcher.png rename to sample-mail/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/sample-mail/src/main/res/drawable-xxxhdpi/ic_launcher.png b/sample-mail/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from sample-mail/src/main/res/drawable-xxxhdpi/ic_launcher.png rename to sample-mail/src/main/res/mipmap-xxxhdpi/ic_launcher.png From ba86a4ce9eef1eafc9685c6d42a4907054111569 Mon Sep 17 00:00:00 2001 From: jonathan-caryl Date: Thu, 23 Mar 2017 10:31:06 +0000 Subject: [PATCH 6/6] Use custom icons/names for leak canary (#228) --- .../res/drawable-hdpi/leak_canary_icon.png | Bin 0 -> 5410 bytes .../res/drawable-mdpi/leak_canary_icon.png | Bin 0 -> 3513 bytes .../res/drawable-xhdpi/leak_canary_icon.png | Bin 0 -> 6840 bytes .../res/drawable-xxhdpi/leak_canary_icon.png | Bin 0 -> 10806 bytes .../res/drawable-xxxhdpi/leak_canary_icon.png | Bin 0 -> 10706 bytes sample-mail/src/debug/res/values/strings.xml | 4 ++++ .../mosby3/sample/mail/MailApplication.java | 5 +++++ .../res/drawable-hdpi/leak_canary_icon.png | Bin 0 -> 5172 bytes .../res/drawable-mdpi/leak_canary_icon.png | Bin 0 -> 3676 bytes .../res/drawable-xhdpi/leak_canary_icon.png | Bin 0 -> 7089 bytes .../res/drawable-xxhdpi/leak_canary_icon.png | Bin 0 -> 8866 bytes .../res/drawable-xxxhdpi/leak_canary_icon.png | Bin 0 -> 16044 bytes sample-mvi/src/debug/res/values/strings.xml | 4 ++++ .../res/drawable-hdpi/leak_canary_icon.png | Bin 0 -> 6695 bytes .../res/drawable-mdpi/leak_canary_icon.png | Bin 0 -> 4292 bytes .../res/drawable-xhdpi/leak_canary_icon.png | Bin 0 -> 9331 bytes .../res/drawable-xxhdpi/leak_canary_icon.png | Bin 0 -> 12840 bytes .../res/drawable-xxxhdpi/leak_canary_icon.png | Bin 0 -> 22082 bytes sample/src/debug/res/values/strings.xml | 4 ++++ .../mosby3/sample/SampleApplication.java | 5 +++++ 20 files changed, 22 insertions(+) create mode 100755 sample-mail/src/debug/res/drawable-hdpi/leak_canary_icon.png create mode 100755 sample-mail/src/debug/res/drawable-mdpi/leak_canary_icon.png create mode 100755 sample-mail/src/debug/res/drawable-xhdpi/leak_canary_icon.png create mode 100755 sample-mail/src/debug/res/drawable-xxhdpi/leak_canary_icon.png create mode 100755 sample-mail/src/debug/res/drawable-xxxhdpi/leak_canary_icon.png create mode 100644 sample-mail/src/debug/res/values/strings.xml create mode 100644 sample-mvi/src/debug/res/drawable-hdpi/leak_canary_icon.png create mode 100644 sample-mvi/src/debug/res/drawable-mdpi/leak_canary_icon.png create mode 100644 sample-mvi/src/debug/res/drawable-xhdpi/leak_canary_icon.png create mode 100644 sample-mvi/src/debug/res/drawable-xxhdpi/leak_canary_icon.png create mode 100644 sample-mvi/src/debug/res/drawable-xxxhdpi/leak_canary_icon.png create mode 100644 sample-mvi/src/debug/res/values/strings.xml create mode 100644 sample/src/debug/res/drawable-hdpi/leak_canary_icon.png create mode 100644 sample/src/debug/res/drawable-mdpi/leak_canary_icon.png create mode 100644 sample/src/debug/res/drawable-xhdpi/leak_canary_icon.png create mode 100644 sample/src/debug/res/drawable-xxhdpi/leak_canary_icon.png create mode 100644 sample/src/debug/res/drawable-xxxhdpi/leak_canary_icon.png create mode 100644 sample/src/debug/res/values/strings.xml diff --git a/sample-mail/src/debug/res/drawable-hdpi/leak_canary_icon.png b/sample-mail/src/debug/res/drawable-hdpi/leak_canary_icon.png new file mode 100755 index 0000000000000000000000000000000000000000..abf86ed68bbd9e15a922d1fe2ab2b49f05ea2e1c GIT binary patch literal 5410 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 literal 0 HcmV?d00001 diff --git a/sample-mail/src/debug/res/drawable-xxhdpi/leak_canary_icon.png b/sample-mail/src/debug/res/drawable-xxhdpi/leak_canary_icon.png new file mode 100755 index 0000000000000000000000000000000000000000..7635659ae3d3e26f5e1759bf42fb16ec032f42a0 GIT binary patch literal 10806 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 G3jPlWT%wQw literal 0 HcmV?d00001 diff --git a/sample-mail/src/debug/res/values/strings.xml b/sample-mail/src/debug/res/values/strings.xml new file mode 100644 index 00000000..2ed8f08b --- /dev/null +++ b/sample-mail/src/debug/res/values/strings.xml @@ -0,0 +1,4 @@ + + + Mosby Mail Leaks + diff --git a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/MailApplication.java b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/MailApplication.java index 8ad87814..2a33e00e 100644 --- a/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/MailApplication.java +++ b/sample-mail/src/main/java/com/hannesdorfmann/mosby3/sample/mail/MailApplication.java @@ -18,6 +18,11 @@ public class MailApplication extends Application { @Override public void onCreate() { super.onCreate(); + if (LeakCanary.isInAnalyzerProcess(this)) { + // This process is dedicated to LeakCanary for heap analysis. + // You should not init your app in this process. + return; + } mailComponent = DaggerMailAppComponent.create(); refWatcher = LeakCanary.install(this); } diff --git a/sample-mvi/src/debug/res/drawable-hdpi/leak_canary_icon.png b/sample-mvi/src/debug/res/drawable-hdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..24e82bc525782727d4298b076310fb42cd6cc983 GIT binary patch literal 5172 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 literal 0 HcmV?d00001 diff --git a/sample-mvi/src/debug/res/drawable-mdpi/leak_canary_icon.png b/sample-mvi/src/debug/res/drawable-mdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..ee55c789bce857e947b37db42caff3b587b27c86 GIT binary patch literal 3676 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 jZVy(8{1p-!tYv#=mD2 literal 0 HcmV?d00001 diff --git a/sample-mvi/src/debug/res/drawable-xhdpi/leak_canary_icon.png b/sample-mvi/src/debug/res/drawable-xhdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e5957d46e568c5eaed6191b0c60830a2e03b7a0a GIT binary patch literal 7089 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 Y&tjmTB`8Gk|NIz}d#NZ@E@>3_KOE#Jk^lez literal 0 HcmV?d00001 diff --git a/sample-mvi/src/debug/res/drawable-xxhdpi/leak_canary_icon.png b/sample-mvi/src/debug/res/drawable-xxhdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..01cf3bfe6bb1484560877b2ca0e0c86651b76f64 GIT binary patch literal 8866 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 Mkx&$`5;YF`FI&WIN&o-= literal 0 HcmV?d00001 diff --git a/sample-mvi/src/debug/res/drawable-xxxhdpi/leak_canary_icon.png b/sample-mvi/src/debug/res/drawable-xxxhdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e6bc591bd5b46e32e3f02b0493fc673b0be41e5d GIT binary patch literal 16044 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 literal 0 HcmV?d00001 diff --git a/sample-mvi/src/debug/res/values/strings.xml b/sample-mvi/src/debug/res/values/strings.xml new file mode 100644 index 00000000..1da36a90 --- /dev/null +++ b/sample-mvi/src/debug/res/values/strings.xml @@ -0,0 +1,4 @@ + + + Mosby MVI Example Leaks + diff --git a/sample/src/debug/res/drawable-hdpi/leak_canary_icon.png b/sample/src/debug/res/drawable-hdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..243be939f1f70af4b4d580658e27f6471e2fea6c GIT binary patch literal 6695 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 literal 0 HcmV?d00001 diff --git a/sample/src/debug/res/drawable-mdpi/leak_canary_icon.png b/sample/src/debug/res/drawable-mdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a55ce32ec9d291a153169b47110e3bb2e2cbc6dd GIT binary patch literal 4292 zcmZu#2T)Vn7L7nas(>O9q}R|AiaJk}`FhI(l-%iIE4FLFy0sz6`0KfqS3SI^P?ofnZZUF%B zhX4R4KBvV9K{=qu>sG25$$(SVCon{i|4$0RRaMXuZOE^V^K#(7B%>e$6+|-d z^YbIT>>c688d`tJDLYj`X958ahd_LMd}Ms&WpG|j5Lp-u27$^!F_(Qxp#^TOf@Seys{iCxTX+#Q0dpx}w4|2)6rBw!u?>&e6Wue2x$LQYN~ zvNBM}|C3RY{ZD-Vqw>Yze~bRi>bEn*i7EJXV+U`X+ntl3kViuee-8c*{!KuMAFl4@fFa<#OmR3jq?Vf>*29S(O+olkb~rB& zN^KNnEU>q>N;i2#J}UGoaxKeAExqdIcMl=fkfN7LJ{j2>RX+;S|ZY(Y3^^8cU+qkweGi_!|w52M>CdMj@M~^L3TSZDoRJo++E$&%pQdvtE{R1lZa%|;O=ATm2vkz1=CGn7+vvLZd<*h$Fj-6JLi=Nzo zaEdnPp>XR@ABT%LPhAarbH#L6KD#$`?Y()VdH)SZ;cDght`4cUqS5`WH?59;^&58; z9m8Ve$&%~nqhSj6n+NbK!nbvA!=;!uKMO5wUs+>fa;g` za07*A-v@&Qso6rdNz`3IuwnXQR_>IKNli-^l;9IL12o50bQ@mT-~Pdy9$6~}wV`#< z85u~B3)Iqd&;XsnjU-wih(I%4?+7mL9IM%`7ka$Z*^>QroU$NL;62X|?dx>8c4aw_ z?zL18X4x)Fx`s38DJZQn#p?5+N7RJeEiKa)%$ZzV?ye-~yPF}!!y;b}tXw$fVc8Z~ zckhG!lq~b?I$LX8z@fTDLVlq6r)Ha2nA4W?yO8t6CWbDbD(SSU(Z2q@x|qufb#-)p z0CRl-6-npgL$JS{lj^${Jh{l$#4M{DUW|ooL_MJgyz9@nma%ylQ|cdvRK5#eX1a?T z&UW-EQU}@skwwC-QS!9fO!cTmbsCYc=JCL`^~p$WRrPO#acuFP284yGSH0Wg+*e}5 z`q$h|blI7`GH|9hcC=gI;0wBS<%lt$mnTWAM-Mf>4l4i$;+)k>7 zA3bguE<@~W&tAs?vAHt zmVH_N9P)vEH|q6HP^P~74YkaiKrw0fifDyF0)1SPi*_JJGK1jDQlfFluq!a87L%hr z{Hrjm`mq0f0R|LFwhZ0H@LH<0sx{-H96Tc1(#U^IUy&px;cd z{?;ee``hEIM_`lEVo00+r#<~(YZVFqh$qpOX|*d z_efgW7LGiIp!Omwv? zxOM0>xYFb}05-&ow8-Y3ts(I#=7gjxR1sc#U2WZuVnk-THyTu)yZE8OJwE1C+~8oi z6O%-Xsww`UTv{c)KE`n;oYDN5=qDHT&9LP#u~g@hgc*>;zHM>QF*eK32Ym03v;0<^SPUIHZQhT3R*jLh!Qo4;lq&*UQ*l`ZV#ctR zp3#+1fO;lD(J)t!eH^fDbN? zFTVe_Jh~efURPkcaCmyo&>{kNnqFQ#;J~(!^P{!ySe8ryY6m~$7(XNps zN;FFa&i~B+cnCZ1&9}%tkG0sOs%Ww;+I3nl)#mk&+2iY*O;RX-S}r^#8qmYnlrQu4 z=beL^)A`Jh4uld0RHJhXfl5E+-*fPJ;bn6q4acG6q}ZEhdhuXZQJv{Tgtm&mVsGQz zlQG3gaY%=^4v0Mj`<*x2C1A$F&jYCgI& zmFj_PXnCw#mh$3QJBr@CWQrb*s%mV8X4xEGPD_q2PEVb7rUG|4{2<0Jym9_&-sVOF z;naWGIG9{Hau{*f|F#qNn|DX(n3u8Z=UbDU-JTeNH5so*>3I%8K1do8FC~?=*#zY( z4fDBL-OhOB+T^Gzr}vHQ1dv}wN{%@QZ~5!JvAQNOhf@!fHyrg!D&pm6S76=;Uwg+= zqBnt;uvE#A-Q8I=SiR*JpFWLY7~Gf=oqMi7_)MSzoku=oo?&IY60ho?MAu2KRftJn z)z^zC0v;KMYKF$&q4#Q*lDWB1*_N?znIU?NLIwR z5=9uMIfn1HQ7u0-vXxZ8^ALLh9>4?3E6?ApeSv*FZ4wbRj42>@5L#pgX-(6iR9O-T zi1pfTAZds4(G6R%SGSUZ%ogvpS*H=TeBH;5 z$pa*tFg}HlmtfvOkw#^#vd}k*%G!F?B6K<1^PAdt}hzL}ZuQ83j{sp0CSMBq7V+d!(S6jAMpo63b<`Q>(JvWnzr zE+Wdu3)3o2iwo?R$H~$@@ip{J-Jf&6eibm|=vTUBIc`d`=nLaoWTl^(5(phUx6?Mw zB56c(o0|QcV<#Doh~#OZ!Kgwe`sWxf9{5)=q?NwPT5_O%LAvP}v|LyjTfCxg*l_NZ z&L1FLj&v})7}x+B!IRt%O4B3xIJ;_AG5Yo4O;OgIk7!UEl4z!|5PX+7S3OURPS`@N zz0ncIR!K`B5p=4Y4w8YHy$b4TXh8`V%MKKW(B3(n5Ji-YFy-|?$>Jaq_8}c#vX9Ms@o& z)?=SE(|&n5Tetdx%+5rKw%8X(k07tHNDdd#?eKcX{mw(<8bLX2sKJP-*;c~mg^U@Q z+mSujU5&-L;?gt}-h5({3`w*H3GS+tB53%6-v(XIyFI{{TAl~~qFHV-$VWCwRTCY$ z|5VVJm6Lwz7O^ls6ylmG;@j~yWomHw@r4PJ?5K##8)Lx>_&#Wu_C28MO|uEm?BT5A zS;A!HzN`O5;Af7TfT%j%qbeci$Bs?iX0$UQf6TR8=4U5mrg1e2*_3(SpMRWf5;i#U zobGJAVMrg*Lf&=>;pbpKJ~Qvv%skun-OHr?w(PB}@E+#0-p!ODfUr?N_m3EnAt@2! zrP|yd$E4_+(~TX|;QgQPXaiM9>^8-C&QEkK7w5XP1~NrSG_AR(t2d-d9h4g$4$vIg zeQ*gf%D>YGvlLC5*P^uyF5k@0-dlH!LE~w_rcwZxwUHQK&HToL0G5g_dr9gndZf<3UuOKA3Bg(^gQjB9ssiA z$G)$kRHM2$P-pF!H;trz=l*G|bg$cFL@Q8t{o*t}OPTw=E?>uNfLazUb$9h3ozL3A z;hcqvXS`z^IsImuZFh24vgQ#m?I+}NoB+oywT717S@TrWM0L%tPmRdhDf`RLlCY-4 l&HY4{&f`moUqbGmN?)AB|NLc7ck-{`s;0h1wc4%Fe*uI&r{Dkp literal 0 HcmV?d00001 diff --git a/sample/src/debug/res/drawable-xhdpi/leak_canary_icon.png b/sample/src/debug/res/drawable-xhdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..171238330032eaf494c4df6504ae3d98b7449f8c GIT binary patch literal 9331 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 literal 0 HcmV?d00001 diff --git a/sample/src/debug/res/drawable-xxhdpi/leak_canary_icon.png b/sample/src/debug/res/drawable-xxhdpi/leak_canary_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..689b7890cb8dcd97369a8a05230a2e4285937a18 GIT binary patch literal 12840 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 literal 0 HcmV?d00001 diff --git a/sample/src/debug/res/values/strings.xml b/sample/src/debug/res/values/strings.xml new file mode 100644 index 00000000..1da2b134 --- /dev/null +++ b/sample/src/debug/res/values/strings.xml @@ -0,0 +1,4 @@ + + + Mosby Samples Leaks + diff --git a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/SampleApplication.java b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/SampleApplication.java index a2890aab..7b300a96 100644 --- a/sample/src/main/java/com/hannesdorfmann/mosby3/sample/SampleApplication.java +++ b/sample/src/main/java/com/hannesdorfmann/mosby3/sample/SampleApplication.java @@ -36,6 +36,11 @@ public static RefWatcher getRefWatcher(Context context) { @Override public void onCreate() { super.onCreate(); + if (LeakCanary.isInAnalyzerProcess(this)) { + // This process is dedicated to LeakCanary for heap analysis. + // You should not init your app in this process. + return; + } refWatcher = LeakCanary.install(this); } }