Update to SDK 28 (#2394)

This commit is contained in:
arkon 2019-12-26 16:01:16 -05:00 committed by GitHub
parent 698e17178a
commit ff8e3f0af4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 20 additions and 19 deletions

View File

@ -3,7 +3,7 @@ language: android
android: android:
components: components:
- build-tools-29.0.2 - build-tools-29.0.2
- android-27 - android-28
- extra-android-m2repository - extra-android-m2repository
- extra-google-m2repository - extra-google-m2repository
- extra-android-support - extra-android-support
@ -11,7 +11,7 @@ android:
licenses: licenses:
- android-sdk-license-.+ - android-sdk-license-.+
before_install: before_install:
- yes | sdkmanager "platforms;android-27" # workaround for accepting the license - yes | sdkmanager "platforms;android-28" # workaround for accepting the license
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
openssl aes-256-cbc -K $encrypted_e56be693d4fd_key -iv $encrypted_e56be693d4fd_iv -in "$PWD/.travis/secrets.tar.enc" -out secrets.tar -d; openssl aes-256-cbc -K $encrypted_e56be693d4fd_key -iv $encrypted_e56be693d4fd_iv -in "$PWD/.travis/secrets.tar.enc" -out secrets.tar -d;
tar xf secrets.tar; tar xf secrets.tar;

View File

@ -29,14 +29,14 @@ ext {
} }
android { android {
compileSdkVersion 27 compileSdkVersion 28
buildToolsVersion '29.0.2' buildToolsVersion '29.0.2'
publishNonDefault true publishNonDefault true
defaultConfig { defaultConfig {
applicationId "eu.kanade.tachiyomi" applicationId "eu.kanade.tachiyomi"
minSdkVersion 16 minSdkVersion 16
targetSdkVersion 27 targetSdkVersion 28
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
versionCode 41 versionCode 41
versionName "0.8.4" versionName "0.8.4"
@ -100,7 +100,7 @@ dependencies {
implementation 'com.github.inorichi:junrar-android:634c1f5' implementation 'com.github.inorichi:junrar-android:634c1f5'
// Android support library // Android support library
final support_library_version = '27.1.1' final support_library_version = '28.0.0'
implementation "com.android.support:support-v4:$support_library_version" implementation "com.android.support:support-v4:$support_library_version"
implementation "com.android.support:appcompat-v7:$support_library_version" implementation "com.android.support:appcompat-v7:$support_library_version"
implementation "com.android.support:cardview-v7:$support_library_version" implementation "com.android.support:cardview-v7:$support_library_version"

View File

@ -9,6 +9,7 @@
<uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" /> <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<application <application

View File

@ -201,7 +201,7 @@ open class BrowseCatalogueController(bundle: Bundle) :
catalogue_view.addView(recycler, 1) catalogue_view.addView(recycler, 1)
if (oldPosition != RecyclerView.NO_POSITION) { if (oldPosition != RecyclerView.NO_POSITION) {
recycler.layoutManager.scrollToPosition(oldPosition) recycler.layoutManager?.scrollToPosition(oldPosition)
} }
this.recycler = recycler this.recycler = recycler
} }

View File

@ -179,7 +179,6 @@ class MangaController : RxController, TabbedController {
} }
companion object { companion object {
const val FROM_CATALOGUE_EXTRA = "from_catalogue" const val FROM_CATALOGUE_EXTRA = "from_catalogue"
const val MANGA_EXTRA = "manga" const val MANGA_EXTRA = "manga"
@ -187,9 +186,8 @@ class MangaController : RxController, TabbedController {
const val CHAPTERS_CONTROLLER = 1 const val CHAPTERS_CONTROLLER = 1
const val TRACK_CONTROLLER = 2 const val TRACK_CONTROLLER = 2
private val tabField = TabLayout.Tab::class.java.getDeclaredField("mView") private val tabField = TabLayout.Tab::class.java.getDeclaredField("view")
.apply { isAccessible = true } .apply { isAccessible = true }
} }
} }

View File

@ -62,8 +62,8 @@ open class WebtoonRecyclerView @JvmOverloads constructor(
override fun onScrollStateChanged(state: Int) { override fun onScrollStateChanged(state: Int) {
super.onScrollStateChanged(state) super.onScrollStateChanged(state)
val layoutManager = layoutManager val layoutManager = layoutManager
val visibleItemCount = layoutManager.childCount val visibleItemCount = layoutManager?.childCount ?: 0
val totalItemCount = layoutManager.itemCount val totalItemCount = layoutManager?.itemCount ?: 0
atLastPosition = visibleItemCount > 0 && lastVisibleItemPosition == totalItemCount - 1 atLastPosition = visibleItemCount > 0 && lastVisibleItemPosition == totalItemCount - 1
atFirstPosition = firstVisibleItemPosition == 0 atFirstPosition = firstVisibleItemPosition == 0
} }

View File

@ -67,7 +67,7 @@ class WebtoonViewer(val activity: ReaderActivity) : BaseViewer {
recycler.layoutManager = layoutManager recycler.layoutManager = layoutManager
recycler.adapter = adapter recycler.adapter = adapter
recycler.addOnScrollListener(object : RecyclerView.OnScrollListener() { recycler.addOnScrollListener(object : RecyclerView.OnScrollListener() {
override fun onScrolled(recyclerView: RecyclerView?, dx: Int, dy: Int) { override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
val position = layoutManager.findLastEndVisibleItemPosition() val position = layoutManager.findLastEndVisibleItemPosition()
val item = adapter.items.getOrNull(position) val item = adapter.items.getOrNull(position)
if (item != null && currentPage != item) { if (item != null && currentPage != item) {
@ -98,11 +98,13 @@ class WebtoonViewer(val activity: ReaderActivity) : BaseViewer {
recycler.longTapListener = f@ { event -> recycler.longTapListener = f@ { event ->
if (activity.menuVisible || config.longTapEnabled) { if (activity.menuVisible || config.longTapEnabled) {
val child = recycler.findChildViewUnder(event.x, event.y) val child = recycler.findChildViewUnder(event.x, event.y)
val position = recycler.getChildAdapterPosition(child) if (child != null) {
val item = adapter.items.getOrNull(position) val position = recycler.getChildAdapterPosition(child)
if (item is ReaderPage) { val item = adapter.items.getOrNull(position)
activity.onPageLongTap(item) if (item is ReaderPage) {
return@f true activity.onPageLongTap(item)
return@f true
}
} }
} }
false false

View File

@ -150,14 +150,14 @@ class SettingsAboutController : SettingsController() {
override fun onCreateDialog(savedViewState: Bundle?): Dialog { override fun onCreateDialog(savedViewState: Bundle?): Dialog {
return MaterialDialog.Builder(activity!!) return MaterialDialog.Builder(activity!!)
.title(R.string.update_check_title) .title(R.string.update_check_title)
.content(args.getString(BODY_KEY)) .content(args.getString(BODY_KEY) ?: "")
.positiveText(R.string.update_check_confirm) .positiveText(R.string.update_check_confirm)
.negativeText(R.string.update_check_ignore) .negativeText(R.string.update_check_ignore)
.onPositive { _, _ -> .onPositive { _, _ ->
val appContext = applicationContext val appContext = applicationContext
if (appContext != null) { if (appContext != null) {
// Start download // Start download
val url = args.getString(URL_KEY) val url = args.getString(URL_KEY) ?: ""
UpdaterService.downloadUpdate(appContext, url) UpdaterService.downloadUpdate(appContext, url)
} }
} }