diff --git a/app/build.gradle b/app/build.gradle index 7faead76f..c3b1b1887 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,3 +1,4 @@ +//noinspection GradleDependency import java.text.SimpleDateFormat apply plugin: 'com.android.application' @@ -5,8 +6,11 @@ apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-kapt' apply plugin: 'com.github.zellius.shortcut-helper' -//Realm (EH) +// Realm (EH) apply plugin: 'realm-android' +// Firebase (EH) +apply plugin: 'com.google.firebase.firebase-perf' +apply plugin: 'io.fabric' shortcutHelper.filePath = './shortcuts.xml' @@ -64,7 +68,7 @@ android { release { minifyEnabled true shrinkResources true - multiDexEnabled false + multiDexEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } @@ -111,7 +115,7 @@ dependencies { implementation 'com.github.inorichi:junrar-android:634c1f5' // Android support library - final support_library_version = '27.0.2' + final support_library_version = '27.1.1' implementation "com.android.support:support-v4:$support_library_version" implementation "com.android.support:appcompat-v7:$support_library_version" implementation "com.android.support:cardview-v7:$support_library_version" @@ -121,11 +125,11 @@ dependencies { implementation "com.android.support:support-annotations:$support_library_version" implementation "com.android.support:customtabs:$support_library_version" - implementation 'com.android.support.constraint:constraint-layout:1.1.0-beta6' + implementation 'com.android.support.constraint:constraint-layout:1.1.2' - implementation 'com.android.support:multidex:1.0.2' + implementation 'com.android.support:multidex:1.0.3' - standardImplementation 'com.google.firebase:firebase-core:11.8.0' + standardImplementation 'com.google.firebase:firebase-core:16.0.1' // ReactiveX implementation 'io.reactivex:rxandroid:1.2.1' @@ -145,7 +149,7 @@ dependencies { implementation "com.squareup.retrofit2:adapter-rxjava:$retrofit_version" // JSON - implementation 'com.google.code.gson:gson:2.8.2' + implementation 'com.google.code.gson:gson:2.8.5' implementation 'com.github.salomonbrys.kotson:kotson:2.5.0' // JavaScript engine @@ -156,11 +160,11 @@ dependencies { implementation 'com.github.inorichi:unifile:e9ee588' // HTML parser - implementation 'org.jsoup:jsoup:1.10.2' + implementation 'org.jsoup:jsoup:1.11.3' // Job scheduling implementation 'com.evernote:android-job:1.2.5' - implementation 'com.google.android.gms:play-services-gcm:11.8.0' + implementation 'com.google.android.gms:play-services-gcm:15.0.1' // Changelog implementation 'com.github.gabrielemariotti.changeloglib:changelog:2.1.0' @@ -186,7 +190,7 @@ dependencies { implementation 'jp.wasabeef:glide-transformations:3.1.1' // Logging - implementation 'com.jakewharton.timber:timber:4.6.1' + implementation 'com.jakewharton.timber:timber:4.7.0' // Crash reports implementation 'ch.acra:acra:4.9.2' @@ -238,25 +242,29 @@ dependencies { implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version" - //Pin lock view (EXH) + // Pin lock view (EH) implementation 'com.andrognito.pinlockview:pinlockview:2.1.0' - //Reprint (EXH) + // Reprint (EH) implementation 'com.github.ajalt.reprint:core:3.2.1@aar' // required: supports marshmallow devices implementation 'com.github.ajalt.reprint:rxjava:3.2.1@aar' // optional: the RxJava 1 interface - //Swirl (EXH) + // Swirl (EH) implementation 'com.mattprecious.swirl:swirl:1.1.0' - //RxJava 2 interop for Realm (EXH) + // RxJava 2 interop for Realm (EH) implementation 'com.lvla.android:rxjava2-interop-kt:0.2.1' - //Debug network interceptor (EXH) + // Debug network interceptor (EH) devImplementation "com.squareup.okhttp3:logging-interceptor:3.10.0" + + // Firebase (EH) + implementation 'com.google.firebase:firebase-perf:16.0.0' + implementation 'com.crashlytics.sdk.android:crashlytics:2.9.4' } buildscript { - ext.kotlin_version = '1.2.30' + ext.kotlin_version = '1.2.51' repositories { mavenCentral() } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 0f0eed2d5..ec71f8f1f 100755 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -110,8 +110,8 @@ + android:label="TachiyomiEH" + android:theme="@style/Theme.EHIntercept"> diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/catalogue/global_search/CatalogueSearchAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/catalogue/global_search/CatalogueSearchAdapter.kt index cb8b473aa..0a96786ce 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/catalogue/global_search/CatalogueSearchAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/catalogue/global_search/CatalogueSearchAdapter.kt @@ -25,7 +25,7 @@ class CatalogueSearchAdapter(val controller: CatalogueSearchController) : */ private var bundle = Bundle() - override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int, payloads: List?) { + override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int, payloads: List) { super.onBindViewHolder(holder, position, payloads) restoreHolderState(holder) } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt index a22a713a9..c12ca8d7d 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt @@ -13,6 +13,7 @@ import eu.kanade.tachiyomi.data.cache.ChapterCache import eu.kanade.tachiyomi.data.database.DatabaseHelper import eu.kanade.tachiyomi.data.library.LibraryUpdateService import eu.kanade.tachiyomi.data.library.LibraryUpdateService.Target +import eu.kanade.tachiyomi.data.preference.PreferenceKeys import eu.kanade.tachiyomi.network.NetworkHelper import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.library.LibraryController diff --git a/app/src/main/java/exh/ui/intercept/InterceptActivity.kt b/app/src/main/java/exh/ui/intercept/InterceptActivity.kt index c87c58581..f6961d718 100755 --- a/app/src/main/java/exh/ui/intercept/InterceptActivity.kt +++ b/app/src/main/java/exh/ui/intercept/InterceptActivity.kt @@ -8,6 +8,8 @@ import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.ui.base.activity.BaseRxActivity import eu.kanade.tachiyomi.ui.main.MainActivity import eu.kanade.tachiyomi.ui.manga.MangaController +import eu.kanade.tachiyomi.util.gone +import eu.kanade.tachiyomi.util.visible import kotlinx.android.synthetic.main.eh_activity_intercept.* import nucleus.factory.RequiresPresenter import rx.Subscription @@ -29,8 +31,11 @@ class InterceptActivity : BaseRxActivity() { } private fun processLink() { - if(Intent.ACTION_VIEW == intent.action) + if(Intent.ACTION_VIEW == intent.action) { + intercept_progress.visible() + intercept_status.text = "Loading gallery..." presenter.loadGallery(intent.dataString) + } } override fun onOptionsItemSelected(item: MenuItem): Boolean { @@ -49,13 +54,17 @@ class InterceptActivity : BaseRxActivity() { .subscribe { when(it) { is InterceptResult.Success -> { + intercept_progress.gone() + intercept_status.text = "Launching app..." + onBackPressed() startActivity(Intent(this, MainActivity::class.java) .setAction(MainActivity.SHORTCUT_MANGA) .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP) .putExtra(MangaController.MANGA_EXTRA, it.mangaId)) - onBackPressed() } - is InterceptResult.Failure -> + is InterceptResult.Failure -> { + intercept_progress.gone() + intercept_status.text = "Error: ${it.reason}" MaterialDialog.Builder(this) .title("Error") .content("Could not open this gallery:\n\n${it.reason}") @@ -65,6 +74,7 @@ class InterceptActivity : BaseRxActivity() { .cancelListener { onBackPressed() } .dismissListener { onBackPressed() } .show() + } } } } diff --git a/app/src/main/res/layout/eh_activity_intercept.xml b/app/src/main/res/layout/eh_activity_intercept.xml index 8ad4ca2cc..9d140ce36 100755 --- a/app/src/main/res/layout/eh_activity_intercept.xml +++ b/app/src/main/res/layout/eh_activity_intercept.xml @@ -37,6 +37,7 @@ android:orientation="vertical"> @color/colorAmoledPrimary + + + diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 83611ff6e..f7bc9574c 100755 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -47,6 +47,10 @@ + + diff --git a/build.gradle b/build.gradle index 6d4f4a329..de8b9bc19 100755 --- a/build.gradle +++ b/build.gradle @@ -5,6 +5,9 @@ buildscript { repositories { jcenter() google() + maven { + url 'https://maven.fabric.io/public' + } } dependencies { classpath 'com.android.tools.build:gradle:3.1.3' @@ -14,8 +17,12 @@ buildscript { // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files - //Realm (EH) + // Realm (EH) classpath "io.realm:realm-gradle-plugin:5.3.1" + + // Firebase (EH) + classpath 'com.google.firebase:firebase-plugins:1.1.5' + classpath 'io.fabric.tools:gradle:1.25.4' } }