From 5795417ef66804c3ee62fef9fbec038b6bd4da42 Mon Sep 17 00:00:00 2001 From: Floens Date: Sun, 21 Jul 2019 21:33:23 +0200 Subject: [PATCH] add checkstyle, add to travis. fixup any issues found with checkstyle. --- .travis.yml | 2 +- Clover/app/build.gradle | 16 ++ .../chan/core/database/DatabaseHelper.java | 3 +- .../chan/core/presenter/ThreadPresenter.java | 7 +- .../floens/chan/core/site/ImageSearch.java | 4 +- .../chan/core/site/common/CommonSite.java | 8 +- .../ImageViewerNavigationController.java | 3 +- .../StyledToolbarNavigationController.java | 1 - .../floens/chan/ui/layout/ReplyLayout.java | 12 +- .../chan/ui/layout/ThreadListLayout.java | 6 +- .../ThreadWatchNotifications.java | 1 - .../org/floens/chan/ui/text/FastTextView.java | 3 +- Clover/checkstyle.xml | 141 ++++++++++++++++++ 13 files changed, 186 insertions(+), 21 deletions(-) create mode 100644 Clover/checkstyle.xml diff --git a/.travis.yml b/.travis.yml index 3b41070a..1d6dcd32 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,7 @@ android: - build-tools-28.0.3 - android-28 -script: cd Clover && ./gradlew build --console plain -x lint +script: cd Clover && ./gradlew clean check --console plain notifications: email: false diff --git a/Clover/app/build.gradle b/Clover/app/build.gradle index 5cb0cd11..2fea3e0f 100644 --- a/Clover/app/build.gradle +++ b/Clover/app/build.gradle @@ -10,6 +10,22 @@ if (project.sentryMappingUploadingEnabled) { } } +// Code style +apply plugin: 'checkstyle' +task('checkstyle', type: Checkstyle) { + configFile rootProject.file('checkstyle.xml') + source 'src/main/java' + ignoreFailures false + showViolations true + include '**/*.java' + classpath = files() +} + + +afterEvaluate { + tasks.findByName('check').dependsOn('checkstyle') +} + /** * Gets the version name from the latest Git tag */ diff --git a/Clover/app/src/main/java/org/floens/chan/core/database/DatabaseHelper.java b/Clover/app/src/main/java/org/floens/chan/core/database/DatabaseHelper.java index db616a01..f0bbcc08 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/database/DatabaseHelper.java +++ b/Clover/app/src/main/java/org/floens/chan/core/database/DatabaseHelper.java @@ -188,7 +188,8 @@ public class DatabaseHelper extends OrmLiteSqliteOpenHelper { if (oldVersion < 19) { try { - filterDao.executeRawNoArgs("CREATE TABLE `filter` (`action` INTEGER NOT NULL , `allBoards` SMALLINT NOT NULL , `boards` VARCHAR NOT NULL , `color` INTEGER NOT NULL , `enabled` SMALLINT NOT NULL , `id` INTEGER PRIMARY KEY AUTOINCREMENT , `pattern` VARCHAR NOT NULL , `type` INTEGER NOT NULL );"); + filterDao.executeRawNoArgs("CREATE TABLE `filter` (`action` INTEGER NOT NULL , `allBoards` SMALLINT NOT NULL , `boards` VARCHAR NOT NULL , `color` INTEGER NOT NULL , " + + "`enabled` SMALLINT NOT NULL , `id` INTEGER PRIMARY KEY AUTOINCREMENT , `pattern` VARCHAR NOT NULL , `type` INTEGER NOT NULL );"); } catch (SQLException e) { Logger.e(TAG, "Error upgrading to version 19", e); } diff --git a/Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java b/Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java index 53b01838..37eef892 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java +++ b/Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java @@ -59,7 +59,12 @@ import javax.inject.Inject; import static org.floens.chan.utils.AndroidUtils.getString; -public class ThreadPresenter implements ChanThreadLoader.ChanLoaderCallback, PostAdapter.PostAdapterCallback, PostCellInterface.PostCellCallback, ThreadStatusCell.Callback, ThreadListLayout.ThreadListLayoutPresenterCallback { +public class ThreadPresenter implements + ChanThreadLoader.ChanLoaderCallback, + PostAdapter.PostAdapterCallback, + PostCellInterface.PostCellCallback, + ThreadStatusCell.Callback, + ThreadListLayout.ThreadListLayoutPresenterCallback { private static final int POST_OPTION_QUOTE = 0; private static final int POST_OPTION_QUOTE_TEXT = 1; private static final int POST_OPTION_INFO = 2; diff --git a/Clover/app/src/main/java/org/floens/chan/core/site/ImageSearch.java b/Clover/app/src/main/java/org/floens/chan/core/site/ImageSearch.java index cd586f89..5e633b31 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/site/ImageSearch.java +++ b/Clover/app/src/main/java/org/floens/chan/core/site/ImageSearch.java @@ -85,7 +85,7 @@ public abstract class ImageSearch { return "http://tineye.com/search/?url=" + imageUrl; } }); - + engines.add(new ImageSearch() { public int getId() { return 4; @@ -99,7 +99,7 @@ public abstract class ImageSearch { return "https://trace.moe/?url=" + imageUrl; } }); - + engines.add(new ImageSearch() { public int getId() { return 5; diff --git a/Clover/app/src/main/java/org/floens/chan/core/site/common/CommonSite.java b/Clover/app/src/main/java/org/floens/chan/core/site/common/CommonSite.java index c3357473..6363a51a 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/site/common/CommonSite.java +++ b/Clover/app/src/main/java/org/floens/chan/core/site/common/CommonSite.java @@ -239,7 +239,7 @@ public abstract class CommonSite extends SiteBase { } } - public static abstract class CommonSiteUrlHandler implements SiteUrlHandler { + public abstract static class CommonSiteUrlHandler implements SiteUrlHandler { public abstract HttpUrl getUrl(); public abstract String[] getNames(); @@ -315,7 +315,7 @@ public abstract class CommonSite extends SiteBase { } } - public static abstract class CommonEndpoints implements SiteEndpoints { + public abstract static class CommonEndpoints implements SiteEndpoints { protected CommonSite site; public CommonEndpoints(CommonSite site) { @@ -413,7 +413,7 @@ public abstract class CommonSite extends SiteBase { } } - public static abstract class CommonActions implements SiteActions { + public abstract static class CommonActions implements SiteActions { protected CommonSite site; public CommonActions(CommonSite site) { @@ -550,7 +550,7 @@ public abstract class CommonSite extends SiteBase { } } - public static abstract class CommonApi implements ChanReader { + public abstract static class CommonApi implements ChanReader { protected CommonSite site; public CommonApi(CommonSite site) { diff --git a/Clover/app/src/main/java/org/floens/chan/ui/controller/ImageViewerNavigationController.java b/Clover/app/src/main/java/org/floens/chan/ui/controller/ImageViewerNavigationController.java index 2a2cd50b..657f0b59 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/controller/ImageViewerNavigationController.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/controller/ImageViewerNavigationController.java @@ -21,9 +21,8 @@ import android.content.Context; import org.floens.chan.R; import org.floens.chan.controller.ui.NavigationControllerContainerLayout; -import org.floens.chan.core.model.orm.Loadable; import org.floens.chan.core.model.PostImage; -import org.floens.chan.ui.toolbar.Toolbar; +import org.floens.chan.core.model.orm.Loadable; import java.util.List; diff --git a/Clover/app/src/main/java/org/floens/chan/ui/controller/StyledToolbarNavigationController.java b/Clover/app/src/main/java/org/floens/chan/ui/controller/StyledToolbarNavigationController.java index 21b5df69..9fcacdc8 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/controller/StyledToolbarNavigationController.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/controller/StyledToolbarNavigationController.java @@ -25,7 +25,6 @@ import org.floens.chan.controller.ControllerTransition; import org.floens.chan.controller.ui.NavigationControllerContainerLayout; import org.floens.chan.core.settings.ChanSettings; import org.floens.chan.ui.theme.ThemeHelper; -import org.floens.chan.ui.toolbar.Toolbar; public class StyledToolbarNavigationController extends ToolbarNavigationController { public StyledToolbarNavigationController(Context context) { diff --git a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java index 0286f130..a203fcd8 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java @@ -70,7 +70,12 @@ import static org.floens.chan.utils.AndroidUtils.getAttrColor; import static org.floens.chan.utils.AndroidUtils.getString; import static org.floens.chan.utils.AndroidUtils.setRoundItemBackground; -public class ReplyLayout extends LoadView implements View.OnClickListener, ReplyPresenter.ReplyPresenterCallback, TextWatcher, ImageDecoder.ImageDecoderCallback, SelectionListeningEditText.SelectionChangedListener { +public class ReplyLayout extends LoadView implements + View.OnClickListener, + ReplyPresenter.ReplyPresenterCallback, + TextWatcher, + ImageDecoder.ImageDecoderCallback, + SelectionListeningEditText.SelectionChangedListener { @Inject ReplyPresenter presenter; @@ -228,15 +233,14 @@ public class ReplyLayout extends LoadView implements View.OnClickListener, Reply @Override public void onClick(View v) { + // TODO handle preview if (v == more) { presenter.onMoreClicked(); } else if (v == attach) { presenter.onAttachClicked(); } else if (v == submit) { presenter.onSubmitClicked(); - }/* else if (v == preview) { - // TODO - }*/ else if (v == captchaHardReset) { + } else if (v == captchaHardReset) { if (authenticationLayout != null) { authenticationLayout.hardReset(); } diff --git a/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java b/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java index bbb997cf..97c06394 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java @@ -678,7 +678,7 @@ public class ThreadListLayout extends FrameLayout implements ReplyLayout.ReplyLa private Bitmap hat; - private final RecyclerView.ItemDecoration PARTY = new RecyclerView.ItemDecoration() { + private final RecyclerView.ItemDecoration party = new RecyclerView.ItemDecoration() { @Override public void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) { if (hat == null) { @@ -705,13 +705,13 @@ public class ThreadListLayout extends FrameLayout implements ReplyLayout.ReplyLa if (showingThread.loadable.site instanceof Chan4) { Calendar calendar = Calendar.getInstance(); if (calendar.get(Calendar.MONTH) == Calendar.OCTOBER && calendar.get(Calendar.DAY_OF_MONTH) == 1) { - recyclerView.addItemDecoration(PARTY); + recyclerView.addItemDecoration(party); } } } private void noParty() { - recyclerView.removeItemDecoration(PARTY); + recyclerView.removeItemDecoration(party); } public interface ThreadListLayoutPresenterCallback { diff --git a/Clover/app/src/main/java/org/floens/chan/ui/notification/ThreadWatchNotifications.java b/Clover/app/src/main/java/org/floens/chan/ui/notification/ThreadWatchNotifications.java index 5d5ed32e..4b30d63c 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/notification/ThreadWatchNotifications.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/notification/ThreadWatchNotifications.java @@ -12,7 +12,6 @@ import android.support.v4.app.NotificationCompat; import org.floens.chan.R; import org.floens.chan.core.manager.WatchManager; import org.floens.chan.core.model.Post; -import org.floens.chan.core.model.orm.Pin; import org.floens.chan.ui.activity.BoardActivity; import java.util.List; diff --git a/Clover/app/src/main/java/org/floens/chan/ui/text/FastTextView.java b/Clover/app/src/main/java/org/floens/chan/ui/text/FastTextView.java index 91e3eebd..a85c1c4a 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/text/FastTextView.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/text/FastTextView.java @@ -222,7 +222,8 @@ public class FastTextView extends View { // Logger.test("staticlayout cache miss: text = %s", text); cached = getStaticLayout(layoutWidth); textCache.put(item, cached); - }/* else { + } + /* else { Logger.test("staticlayout cache hit"); }*/ diff --git a/Clover/checkstyle.xml b/Clover/checkstyle.xml new file mode 100644 index 00000000..0176b82d --- /dev/null +++ b/Clover/checkstyle.xml @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +