From 8a42c1bf685988c54b08eb293299964e252d865e Mon Sep 17 00:00:00 2001 From: tateisu Date: Fri, 15 Feb 2019 10:51:22 +0900 Subject: [PATCH] AndroidX migration, Glide 4.9.0 --- apng_android/build.gradle | 6 +-- .../juggler/apng/ExampleInstrumentedTest.java | 4 +- app/build.gradle | 27 +++++----- .../subwaytooter/ExampleInstrumentedTest.java | 4 +- .../juggler/subwaytooter/JsonArrayForEach.kt | 2 +- .../juggler/subwaytooter/WordTrieTreeTest.kt | 2 +- .../subwaytooter/api/TestDuplicateMap.kt | 2 +- .../subwaytooter/api/TestTootApiClient.kt | 4 +- .../api/entity/TestEntityUtils.kt | 2 +- .../api/entity/TestTootAccount.kt | 2 +- .../subwaytooter/util/TestBucketList.kt | 2 +- app/src/main/AndroidManifest.xml | 2 +- .../glide/load/resource/gif/MyGifDrawable.kt | 2 +- .../java/jp/juggler/subwaytooter/ActAbout.kt | 2 +- .../juggler/subwaytooter/ActAccountSetting.kt | 8 +-- .../jp/juggler/subwaytooter/ActAppSetting.kt | 6 +-- .../subwaytooter/ActAppSettingChild.kt | 6 +-- .../jp/juggler/subwaytooter/ActCallback.kt | 4 +- .../subwaytooter/ActColumnCustomize.kt | 6 +-- .../jp/juggler/subwaytooter/ActColumnList.kt | 8 +-- .../jp/juggler/subwaytooter/ActFavMute.kt | 6 +-- .../subwaytooter/ActHighlightWordEdit.kt | 2 +- .../subwaytooter/ActHighlightWordList.kt | 6 +-- .../juggler/subwaytooter/ActKeywordFilter.kt | 2 +- .../java/jp/juggler/subwaytooter/ActMain.kt | 48 +++++++++-------- .../jp/juggler/subwaytooter/ActMediaViewer.kt | 6 +-- .../jp/juggler/subwaytooter/ActMutedApp.kt | 6 +-- .../jp/juggler/subwaytooter/ActMutedWord.kt | 6 +-- .../jp/juggler/subwaytooter/ActNickname.kt | 4 +- .../jp/juggler/subwaytooter/ActOSSLicense.kt | 2 +- .../java/jp/juggler/subwaytooter/ActPost.kt | 12 ++--- .../java/jp/juggler/subwaytooter/ActText.kt | 2 +- .../main/java/jp/juggler/subwaytooter/App1.kt | 2 +- .../java/jp/juggler/subwaytooter/Column.kt | 2 +- .../subwaytooter/ColumnPagerAdapter.kt | 4 +- .../juggler/subwaytooter/ColumnViewHolder.kt | 30 +++++------ .../jp/juggler/subwaytooter/DlgContextMenu.kt | 10 ++-- .../juggler/subwaytooter/ItemListAdapter.kt | 16 +++--- .../jp/juggler/subwaytooter/ItemViewHolder.kt | 8 +-- .../subwaytooter/PollingForegrounder.kt | 4 +- .../jp/juggler/subwaytooter/PollingWorker.kt | 4 +- .../jp/juggler/subwaytooter/StatusButtons.kt | 2 +- .../subwaytooter/StatusButtonsPopup.kt | 4 +- .../java/jp/juggler/subwaytooter/Styler.kt | 2 +- .../subwaytooter/TabletColumnPagerAdapter.kt | 4 +- .../subwaytooter/TabletColumnViewHolder.kt | 4 +- .../subwaytooter/ViewHolderHeaderBase.kt | 4 +- .../subwaytooter/ViewHolderHeaderProfile.kt | 2 +- .../jp/juggler/subwaytooter/ViewHolderItem.kt | 4 +- .../subwaytooter/action/Action_Account.kt | 2 +- .../subwaytooter/action/Action_Follow.kt | 2 +- .../action/Action_Notification.kt | 2 +- .../subwaytooter/api/entity/TootStatus.kt | 2 +- .../subwaytooter/dialog/AccountPicker.kt | 2 +- .../subwaytooter/dialog/ActionsDialog.kt | 2 +- .../juggler/subwaytooter/dialog/DlgConfirm.kt | 2 +- .../subwaytooter/dialog/DlgDraftPicker.kt | 2 +- .../subwaytooter/dialog/EmojiPicker.kt | 8 +-- .../juggler/subwaytooter/dialog/LoginForm.kt | 2 +- .../subwaytooter/span/EmojiImageSpan.kt | 4 +- .../subwaytooter/span/NetworkEmojiSpan.kt | 2 +- .../juggler/subwaytooter/table/AcctColor.kt | 4 +- .../subwaytooter/table/UserRelation.kt | 4 +- .../juggler/subwaytooter/util/EmojiDecoder.kt | 2 +- .../util/PopupAutoCompleteAcct.kt | 2 +- .../juggler/subwaytooter/util/PostHelper.kt | 4 +- .../subwaytooter/util/ScrollPosition.kt | 4 +- .../subwaytooter/util/WaitNotifyHelper.java | 2 +- .../subwaytooter/view/GravitySnapHelper.kt | 54 +++++++++---------- .../juggler/subwaytooter/view/ListDivider.kt | 12 ++--- .../juggler/subwaytooter/view/MyEditText.kt | 6 +-- .../subwaytooter/view/MyNetworkImageView.kt | 50 ++++++++--------- .../juggler/subwaytooter/view/MyTextView.kt | 2 +- .../juggler/subwaytooter/view/MyViewPager.kt | 4 +- .../subwaytooter/view/TabletColumnDivider.kt | 12 ++--- .../view/TabletModeRecyclerView.kt | 4 +- app/src/main/java/jp/juggler/util/UiUtils.kt | 2 +- .../main/java/jp/juggler/util/WordTrieTree.kt | 4 +- app/src/main/res/layout/act_main.xml | 6 +-- app/src/main/res/layout/page_column.xml | 2 +- build.gradle | 3 +- colorpicker/build.gradle | 4 +- .../colorpicker/ColorPaletteAdapter.java | 2 +- .../android/colorpicker/ColorPanelView.java | 6 +-- .../colorpicker/ColorPickerDialog.java | 12 ++--- .../ColorPickerDialogListener.java | 2 +- .../android/colorpicker/ColorPreference.java | 4 +- .../android/colorpicker/ColorShape.java | 2 +- .../android/colorpicker/NestedGridView.java | 2 +- emoji/build.gradle | 2 +- .../java/jp/juggler/emoji/EmojiMap201709.java | 6 +-- gradle.properties | 2 + sample_apng/build.gradle | 8 +-- .../apng/sample/ExampleInstrumentedTest.java | 4 +- .../java/jp/juggler/apng/sample/ActList.kt | 6 +-- .../java/jp/juggler/apng/sample/ActViewer.kt | 2 +- 96 files changed, 295 insertions(+), 293 deletions(-) diff --git a/apng_android/build.gradle b/apng_android/build.gradle index 42510b8a..4f25965e 100644 --- a/apng_android/build.gradle +++ b/apng_android/build.gradle @@ -11,7 +11,7 @@ android { versionCode 1 versionName "1.0" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { @@ -29,8 +29,8 @@ repositories { dependencies { testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' + androidTestImplementation 'androidx.test:runner:1.1.0-alpha4' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4' api project(':apng') // 'api' に指定した依存関係はこのライブラリの利用者に公開されます diff --git a/apng_android/src/androidTest/java/jp/juggler/apng/ExampleInstrumentedTest.java b/apng_android/src/androidTest/java/jp/juggler/apng/ExampleInstrumentedTest.java index 98d6e451..5c79e612 100644 --- a/apng_android/src/androidTest/java/jp/juggler/apng/ExampleInstrumentedTest.java +++ b/apng_android/src/androidTest/java/jp/juggler/apng/ExampleInstrumentedTest.java @@ -1,8 +1,8 @@ package jp.juggler.apng; import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; +import androidx.test.InstrumentationRegistry; +import androidx.test.runner.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/build.gradle b/app/build.gradle index b8c4dace..7e4f118c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -16,7 +16,7 @@ android { versionCode 342 versionName "3.4.2" applicationId "jp.juggler.subwaytooter" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" // https://stackoverflow.com/questions/47791227/java-lang-illegalstateexception-dex-archives-setting-dex-extension-only-for multiDexEnabled true @@ -69,7 +69,7 @@ kapt { dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') - androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { + androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0-alpha4', { exclude group: 'com.android.support', module: 'support-annotations' }) @@ -78,14 +78,14 @@ dependencies { implementation project(':emoji') implementation project(':apng_android') - implementation "com.android.support:support-v4:$asl_version" - implementation "com.android.support:appcompat-v7:$asl_version" - implementation "com.android.support:design:$asl_version" - implementation "com.android.support:customtabs:$asl_version" - implementation "com.android.support:support-v13:$asl_version" + implementation "androidx.appcompat:appcompat:$appcompat_version" + implementation "androidx.legacy:legacy-support-v4:$androidx_version" + implementation "androidx.legacy:legacy-support-v13:$androidx_version" + implementation "androidx.browser:browser:$androidx_version" + implementation "com.google.android.material:material:$androidx_version" // https://firebase.google.com/support/release-notes/android - implementation "com.google.firebase:firebase-core:16.0.6" + implementation "com.google.firebase:firebase-core:16.0.7" implementation "com.google.firebase:firebase-messaging:17.3.4" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" @@ -110,11 +110,12 @@ dependencies { androidTestImplementation 'com.squareup.okhttp3:mockwebserver:3.12.1' // glide 4.8.0 は CustomTarget がないので保留 - implementation 'com.github.bumptech.glide:glide:4.7.1' - implementation 'com.github.bumptech.glide:okhttp3-integration:4.7.1' - implementation 'com.github.bumptech.glide:annotations:4.7.1' - kapt 'com.github.bumptech.glide:compiler:4.7.1' + implementation 'com.github.bumptech.glide:glide:4.9.0' + implementation 'com.github.bumptech.glide:okhttp3-integration:4.9.0' + implementation 'com.github.bumptech.glide:annotations:4.9.0' // kotlin では annotationProcessor の代わりに kapt を使う + kapt 'androidx.annotation:annotation:1.0.1' + kapt 'com.github.bumptech.glide:compiler:4.9.0' implementation "org.conscrypt:conscrypt-android:1.3.0" @@ -130,7 +131,7 @@ dependencies { implementation 'org.hjson:hjson:3.0.0' - implementation 'com.google.android:flexbox:1.0.0' // 1.1.0 から AndroidX 依存 + implementation 'com.google.android:flexbox:1.1.0' // 1.1.0 から AndroidX 依存 implementation 'com.astuetz:pagerslidingtabstrip:1.0.1' diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/ExampleInstrumentedTest.java b/app/src/androidTest/java/jp/juggler/subwaytooter/ExampleInstrumentedTest.java index 7ae02a1c..555d7eaf 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/ExampleInstrumentedTest.java +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/ExampleInstrumentedTest.java @@ -1,8 +1,8 @@ package jp.juggler.subwaytooter; import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; +import androidx.test.InstrumentationRegistry; +import androidx.test.runner.AndroidJUnit4; import org.junit.Test; import org.junit.runner.RunWith; diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/JsonArrayForEach.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/JsonArrayForEach.kt index 9d9f47f4..21002efa 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/JsonArrayForEach.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/JsonArrayForEach.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import org.junit.Test import org.junit.runner.RunWith diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/WordTrieTreeTest.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/WordTrieTreeTest.kt index 29f97e18..4d4fd723 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/WordTrieTreeTest.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/WordTrieTreeTest.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import org.junit.Test import org.junit.runner.RunWith diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestDuplicateMap.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestDuplicateMap.kt index 28fc57a7..59dcabe7 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestDuplicateMap.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestDuplicateMap.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.api -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import android.test.mock.MockContext import jp.juggler.subwaytooter.api.entity.* import jp.juggler.subwaytooter.table.SavedAccount diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestTootApiClient.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestTootApiClient.kt index 4459a32d..9260ee26 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestTootApiClient.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/api/TestTootApiClient.kt @@ -2,8 +2,8 @@ package jp.juggler.subwaytooter.api -import android.support.test.InstrumentationRegistry -import android.support.test.runner.AndroidJUnit4 +import androidx.test.InstrumentationRegistry +import androidx.test.runner.AndroidJUnit4 import jp.juggler.subwaytooter.table.SavedAccount import jp.juggler.subwaytooter.util.CurrentCallCallback import jp.juggler.subwaytooter.util.SimpleHttpClient diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestEntityUtils.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestEntityUtils.kt index 6c257a1e..6df3c2b7 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestEntityUtils.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestEntityUtils.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.api.entity -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import android.test.mock.MockContext import jp.juggler.subwaytooter.api.TootParser import jp.juggler.subwaytooter.table.SavedAccount diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestTootAccount.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestTootAccount.kt index b8cecdb6..9da292a6 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestTootAccount.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/api/entity/TestTootAccount.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.api.entity -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import org.junit.Test import org.junit.runner.RunWith diff --git a/app/src/androidTest/java/jp/juggler/subwaytooter/util/TestBucketList.kt b/app/src/androidTest/java/jp/juggler/subwaytooter/util/TestBucketList.kt index f83fafc4..f2db32d3 100644 --- a/app/src/androidTest/java/jp/juggler/subwaytooter/util/TestBucketList.kt +++ b/app/src/androidTest/java/jp/juggler/subwaytooter/util/TestBucketList.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.util -import android.support.test.runner.AndroidJUnit4 +import androidx.test.runner.AndroidJUnit4 import org.junit.Assert.* import org.junit.Test diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c59b6d0a..a5a013a9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -238,7 +238,7 @@ /> outState.putInt(STATE_CURRENT_PAGE, env.pager.currentItem) }, { env -> val ve = env.tablet_layout_manager.findLastVisibleItemPosition() - if(ve != RecyclerView.NO_POSITION) { + if(ve != androidx.recyclerview.widget.RecyclerView.NO_POSITION) { outState.putInt(STATE_CURRENT_PAGE, ve) } }) @@ -949,7 +949,7 @@ class ActMain : AppCompatActivity() override fun onBackPressed() { // メニューが開いていたら閉じる - val drawer = findViewById(R.id.drawer_layout) + val drawer = findViewById(R.id.drawer_layout) if(drawer.isDrawerOpen(GravityCompat.START)) { drawer.closeDrawer(GravityCompat.START) return @@ -1220,7 +1220,7 @@ class ActMain : AppCompatActivity() R.id.nav_app_exit -> finish() } - val drawer = findViewById(R.id.drawer_layout) + val drawer = findViewById(R.id.drawer_layout) drawer.closeDrawer(GravityCompat.START) return true } @@ -1421,7 +1421,11 @@ class ActMain : AppCompatActivity() env.tablet_pager = findViewById(R.id.rvPager) env.tablet_pager_adapter = TabletColumnPagerAdapter(this) env.tablet_layout_manager = - LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false) + androidx.recyclerview.widget.LinearLayoutManager( + this, + androidx.recyclerview.widget.LinearLayoutManager.HORIZONTAL, + false + ) if(env.tablet_pager.itemDecorationCount == 0) { env.tablet_pager.addItemDecoration(TabletColumnDivider(this@ActMain)) @@ -1430,9 +1434,9 @@ class ActMain : AppCompatActivity() env.tablet_pager.adapter = env.tablet_pager_adapter env.tablet_pager.layoutManager = env.tablet_layout_manager - env.tablet_pager.addOnScrollListener(object : RecyclerView.OnScrollListener() { + env.tablet_pager.addOnScrollListener(object : androidx.recyclerview.widget.RecyclerView.OnScrollListener() { - override fun onScrollStateChanged(recyclerView : RecyclerView, newState : Int) { + override fun onScrollStateChanged(recyclerView : androidx.recyclerview.widget.RecyclerView, newState : Int) { super.onScrollStateChanged(recyclerView, newState) val vs = env.tablet_layout_manager.findFirstVisibleItemPosition() @@ -1447,7 +1451,7 @@ class ActMain : AppCompatActivity() } } - override fun onScrolled(recyclerView : RecyclerView, dx : Int, dy : Int) { + override fun onScrolled(recyclerView : androidx.recyclerview.widget.RecyclerView, dx : Int, dy : Int) { super.onScrolled(recyclerView, dx, dy) updateColumnStripSelection(- 1, - 1f) } diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActMediaViewer.kt b/app/src/main/java/jp/juggler/subwaytooter/ActMediaViewer.kt index a690619f..89a105ff 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActMediaViewer.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActMediaViewer.kt @@ -13,9 +13,9 @@ import android.os.Build import android.os.Bundle import android.os.Environment import android.os.SystemClock -import android.support.v4.app.ActivityCompat -import android.support.v4.content.ContextCompat -import android.support.v7.app.AppCompatActivity +import androidx.core.app.ActivityCompat +import androidx.core.content.ContextCompat +import androidx.appcompat.app.AppCompatActivity import android.view.View import android.view.Window import android.widget.TextView diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActMutedApp.kt b/app/src/main/java/jp/juggler/subwaytooter/ActMutedApp.kt index 3595b3d7..b572ab89 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActMutedApp.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActMutedApp.kt @@ -2,8 +2,8 @@ package jp.juggler.subwaytooter import android.content.Context import android.os.Bundle -import android.support.v7.app.AppCompatActivity -import android.support.v7.widget.LinearLayoutManager +import androidx.appcompat.app.AppCompatActivity +import androidx.recyclerview.widget.LinearLayoutManager import android.view.View import android.view.ViewGroup import android.widget.TextView @@ -48,7 +48,7 @@ class ActMutedApp : AppCompatActivity() { // ハンドル部分をドラッグで並べ替えできるRecyclerView listView = findViewById(R.id.drag_list_view) - listView.setLayoutManager(LinearLayoutManager(this)) + listView.setLayoutManager(androidx.recyclerview.widget.LinearLayoutManager(this)) listView.setAdapter(listAdapter, false) listView.setCanDragHorizontally(true) diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActMutedWord.kt b/app/src/main/java/jp/juggler/subwaytooter/ActMutedWord.kt index 991314cd..2f68e3ea 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActMutedWord.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActMutedWord.kt @@ -2,8 +2,8 @@ package jp.juggler.subwaytooter import android.content.Context import android.os.Bundle -import android.support.v7.app.AppCompatActivity -import android.support.v7.widget.LinearLayoutManager +import androidx.appcompat.app.AppCompatActivity +import androidx.recyclerview.widget.LinearLayoutManager import android.view.View import android.view.ViewGroup import android.widget.TextView @@ -49,7 +49,7 @@ class ActMutedWord : AppCompatActivity() { // ハンドル部分をドラッグで並べ替えできるRecyclerView listView = findViewById(R.id.drag_list_view) - listView.setLayoutManager(LinearLayoutManager(this)) + listView.setLayoutManager(androidx.recyclerview.widget.LinearLayoutManager(this)) listView.setAdapter(listAdapter, false) listView.setCanDragHorizontally(true) diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActNickname.kt b/app/src/main/java/jp/juggler/subwaytooter/ActNickname.kt index f2f822c9..762f479b 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActNickname.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActNickname.kt @@ -6,8 +6,8 @@ import android.media.RingtoneManager import android.net.Uri import android.os.Build import android.os.Bundle -import android.support.annotation.ColorInt -import android.support.v7.app.AppCompatActivity +import androidx.annotation.ColorInt +import androidx.appcompat.app.AppCompatActivity import android.text.Editable import android.text.TextWatcher import android.view.View diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActOSSLicense.kt b/app/src/main/java/jp/juggler/subwaytooter/ActOSSLicense.kt index 88d58c30..948b21c3 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActOSSLicense.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActOSSLicense.kt @@ -1,7 +1,7 @@ package jp.juggler.subwaytooter import android.os.Bundle -import android.support.v7.app.AppCompatActivity +import androidx.appcompat.app.AppCompatActivity import android.widget.TextView import jp.juggler.util.* diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActPost.kt b/app/src/main/java/jp/juggler/subwaytooter/ActPost.kt index 40d5b7eb..c2e168cb 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActPost.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActPost.kt @@ -16,12 +16,12 @@ import android.os.Build import android.os.Bundle import android.os.Handler import android.provider.MediaStore -import android.support.v13.view.inputmethod.InputConnectionCompat -import android.support.v13.view.inputmethod.InputContentInfoCompat -import android.support.v4.app.ActivityCompat -import android.support.v4.content.ContextCompat -import android.support.v7.app.AlertDialog -import android.support.v7.app.AppCompatActivity +import androidx.core.view.inputmethod.InputConnectionCompat +import androidx.core.view.inputmethod.InputContentInfoCompat +import androidx.core.app.ActivityCompat +import androidx.core.content.ContextCompat +import androidx.appcompat.app.AlertDialog +import androidx.appcompat.app.AppCompatActivity import android.text.Editable import android.text.Spannable import android.text.TextWatcher diff --git a/app/src/main/java/jp/juggler/subwaytooter/ActText.kt b/app/src/main/java/jp/juggler/subwaytooter/ActText.kt index 7da692be..f823f880 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ActText.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ActText.kt @@ -4,7 +4,7 @@ import android.app.SearchManager import android.content.Context import android.content.Intent import android.os.Bundle -import android.support.v7.app.AppCompatActivity +import androidx.appcompat.app.AppCompatActivity import android.view.View import android.widget.EditText import jp.juggler.subwaytooter.api.entity.* diff --git a/app/src/main/java/jp/juggler/subwaytooter/App1.kt b/app/src/main/java/jp/juggler/subwaytooter/App1.kt index b4437460..5b61714f 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/App1.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/App1.kt @@ -11,7 +11,7 @@ import android.database.sqlite.SQLiteDatabase import android.database.sqlite.SQLiteOpenHelper import android.net.Uri import android.os.Build -import android.support.customtabs.CustomTabsIntent +import androidx.browser.customtabs.CustomTabsIntent import android.util.Log import com.bumptech.glide.Glide import com.bumptech.glide.GlideBuilder diff --git a/app/src/main/java/jp/juggler/subwaytooter/Column.kt b/app/src/main/java/jp/juggler/subwaytooter/Column.kt index a9618fda..f453de49 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/Column.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/Column.kt @@ -7,7 +7,7 @@ import android.net.Uri import android.os.AsyncTask import android.os.Environment import android.os.SystemClock -import android.support.v7.app.AppCompatActivity +import androidx.appcompat.app.AppCompatActivity import android.view.Gravity import android.view.View import jp.juggler.subwaytooter.api.* diff --git a/app/src/main/java/jp/juggler/subwaytooter/ColumnPagerAdapter.kt b/app/src/main/java/jp/juggler/subwaytooter/ColumnPagerAdapter.kt index a35ff0b8..00612e96 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ColumnPagerAdapter.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ColumnPagerAdapter.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter -import android.support.v4.view.PagerAdapter +import androidx.viewpager.widget.PagerAdapter import android.util.SparseArray import android.view.LayoutInflater import android.view.View @@ -9,7 +9,7 @@ import jp.juggler.subwaytooter.util.Benchmark import jp.juggler.util.LogCategory import java.util.* -internal class ColumnPagerAdapter(private val activity : ActMain) : PagerAdapter() { +internal class ColumnPagerAdapter(private val activity : ActMain) : androidx.viewpager.widget.PagerAdapter() { companion object { val log = LogCategory("ColumnPagerAdapter") diff --git a/app/src/main/java/jp/juggler/subwaytooter/ColumnViewHolder.kt b/app/src/main/java/jp/juggler/subwaytooter/ColumnViewHolder.kt index 743ef062..13f2e7fe 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ColumnViewHolder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ColumnViewHolder.kt @@ -6,9 +6,9 @@ import android.content.res.ColorStateList import android.graphics.Bitmap import android.graphics.Color import android.os.AsyncTask -import android.support.v4.content.ContextCompat -import android.support.v7.widget.LinearLayoutManager -import android.support.v7.widget.RecyclerView +import androidx.core.content.ContextCompat +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView import android.text.SpannableStringBuilder import android.text.TextUtils import android.view.GestureDetector @@ -46,13 +46,13 @@ class ColumnViewHolder( private val log = LogCategory("ColumnViewHolder") val fieldRecycler : Field by lazy { - val field = RecyclerView::class.java.getDeclaredField("mRecycler") + val field = androidx.recyclerview.widget.RecyclerView::class.java.getDeclaredField("mRecycler") field.isAccessible = true field } val fieldState : Field by lazy { - val field = RecyclerView::class.java.getDeclaredField("mState") + val field = androidx.recyclerview.widget.RecyclerView::class.java.getDeclaredField("mState") field.isAccessible = true field } @@ -68,9 +68,9 @@ class ColumnViewHolder( private var page_idx : Int = 0 private val tvLoading : TextView - val listView : RecyclerView + val listView : androidx.recyclerview.widget.RecyclerView val refreshLayout : SwipyRefreshLayout - lateinit var listLayoutManager : LinearLayoutManager + lateinit var listLayoutManager : androidx.recyclerview.widget.LinearLayoutManager private val llColumnHeader : View private val tvColumnIndex : TextView @@ -710,7 +710,7 @@ class ColumnViewHolder( llRefreshError.visibility = View.GONE // - listLayoutManager = LinearLayoutManager(activity) + listLayoutManager = androidx.recyclerview.widget.LinearLayoutManager(activity) listView.layoutManager = listLayoutManager listView.adapter = status_adapter @@ -1160,7 +1160,7 @@ class ColumnViewHolder( fun rebindAdapterItems() { for(childIndex in 0 until listView.childCount) { val adapterIndex = listView.getChildAdapterPosition(listView.getChildAt(childIndex)) - if(adapterIndex == RecyclerView.NO_POSITION) continue + if(adapterIndex == androidx.recyclerview.widget.RecyclerView.NO_POSITION) continue status_adapter?.notifyItemChanged(adapterIndex) } } @@ -1377,23 +1377,23 @@ class ColumnViewHolder( if(column == null || listView.adapter !== last_adapter) return@Runnable try { - val recycler = fieldRecycler.get(listView) as RecyclerView.Recycler - val state = fieldState.get(listView) as RecyclerView.State + val recycler = fieldRecycler.get(listView) as androidx.recyclerview.widget.RecyclerView.Recycler + val state = fieldState.get(listView) as androidx.recyclerview.widget.RecyclerView.State listLayoutManager.scrollVerticallyBy(dy, recycler, state) } catch(ex : Throwable) { log.trace(ex) - log.e("can't access field in class %s", RecyclerView::class.java.simpleName) + log.e("can't access field in class %s", androidx.recyclerview.widget.RecyclerView::class.java.simpleName) } }, 20L) } - inner class AdapterItemHeightWorkarea internal constructor(val adapter : ItemListAdapter) : + internal inner class AdapterItemHeightWorkarea internal constructor(val adapter : ItemListAdapter) : Closeable { private val item_width : Int private val widthSpec : Int private var lastViewType : Int = - 1 - private var lastViewHolder : RecyclerView.ViewHolder? = null + private var lastViewHolder : androidx.recyclerview.widget.RecyclerView.ViewHolder? = null init { this.item_width = listView.width - listView.paddingLeft - listView.paddingRight @@ -1482,7 +1482,7 @@ class ColumnViewHolder( val adapterIndex = listLayoutManager.findFirstVisibleItemPosition() - if(adapterIndex == RecyclerView.NO_POSITION) + if(adapterIndex == androidx.recyclerview.widget.RecyclerView.NO_POSITION) throw IndexOutOfBoundsException() return column?.toListIndex(adapterIndex) diff --git a/app/src/main/java/jp/juggler/subwaytooter/DlgContextMenu.kt b/app/src/main/java/jp/juggler/subwaytooter/DlgContextMenu.kt index d348e288..229495a1 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/DlgContextMenu.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/DlgContextMenu.kt @@ -3,11 +3,11 @@ package jp.juggler.subwaytooter import android.annotation.SuppressLint import android.app.Dialog import android.content.res.ColorStateList -import android.support.v4.app.ShareCompat -import android.support.v4.content.ContextCompat -import android.support.v4.view.ViewCompat -import android.support.v7.app.AlertDialog -import android.support.v7.widget.AppCompatImageButton +import androidx.core.app.ShareCompat +import androidx.core.content.ContextCompat +import androidx.core.view.ViewCompat +import androidx.appcompat.app.AlertDialog +import androidx.appcompat.widget.AppCompatImageButton import android.view.Gravity import android.view.View import android.view.ViewGroup diff --git a/app/src/main/java/jp/juggler/subwaytooter/ItemListAdapter.kt b/app/src/main/java/jp/juggler/subwaytooter/ItemListAdapter.kt index 82710d4e..95bf458d 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ItemListAdapter.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ItemListAdapter.kt @@ -2,9 +2,9 @@ package jp.juggler.subwaytooter import android.os.Handler import android.os.SystemClock -import android.support.v7.util.DiffUtil -import android.support.v7.util.ListUpdateCallback -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.DiffUtil +import androidx.recyclerview.widget.ListUpdateCallback +import androidx.recyclerview.widget.RecyclerView import android.view.ViewGroup import jp.juggler.subwaytooter.api.entity.TimelineItem import jp.juggler.util.LogCategory @@ -14,7 +14,7 @@ internal class ItemListAdapter( private val column : Column, internal val columnVh : ColumnViewHolder, private val bSimpleList : Boolean -) : RecyclerView.Adapter() { +) : androidx.recyclerview.widget.RecyclerView.Adapter() { companion object { private val log = LogCategory("ItemListAdapter") @@ -81,7 +81,7 @@ internal class ItemListAdapter( return headerType.viewType } - override fun onCreateViewHolder(parent : ViewGroup, viewType : Int) : RecyclerView.ViewHolder { + override fun onCreateViewHolder(parent : ViewGroup, viewType : Int) : androidx.recyclerview.widget.RecyclerView.ViewHolder { when(viewType) { 0 -> { val holder = ItemViewHolder(activity) @@ -125,14 +125,14 @@ internal class ItemListAdapter( } } - fun findHeaderViewHolder(listView : RecyclerView) : ViewHolderHeaderBase? { + fun findHeaderViewHolder(listView : androidx.recyclerview.widget.RecyclerView) : ViewHolderHeaderBase? { return when(column.headerType) { null -> null else -> listView.findViewHolderForAdapterPosition(0) as? ViewHolderHeaderBase } } - override fun onBindViewHolder(holder : RecyclerView.ViewHolder, adapterIndex : Int) { + override fun onBindViewHolder(holder : androidx.recyclerview.widget.RecyclerView.ViewHolder, adapterIndex : Int) { if(holder is ViewHolderItem) { val listIndex = column.toListIndex(adapterIndex) holder.ivh.bind(this, column, bSimpleList, list[listIndex]) @@ -141,7 +141,7 @@ internal class ItemListAdapter( } } - override fun onViewRecycled(holder : RecyclerView.ViewHolder) { + override fun onViewRecycled(holder : androidx.recyclerview.widget.RecyclerView.ViewHolder) { if(holder is ViewHolderItem) { holder.ivh.onViewRecycled() } else if(holder is ViewHolderHeaderBase) { diff --git a/app/src/main/java/jp/juggler/subwaytooter/ItemViewHolder.kt b/app/src/main/java/jp/juggler/subwaytooter/ItemViewHolder.kt index 9e95d7f6..f853dfc1 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ItemViewHolder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ItemViewHolder.kt @@ -4,9 +4,9 @@ import android.content.Context import android.content.res.ColorStateList import android.graphics.Typeface import android.os.SystemClock -import android.support.v4.content.ContextCompat -import android.support.v7.app.AlertDialog -import android.support.v7.widget.RecyclerView +import androidx.core.content.ContextCompat +import androidx.appcompat.app.AlertDialog +import androidx.recyclerview.widget.RecyclerView import android.text.Spannable import android.text.SpannableString import android.text.SpannableStringBuilder @@ -2604,7 +2604,7 @@ internal class ItemViewHolder( val b = Benchmark(log, "Item-Inflate", 40L) val rv = verticalLayout { // トップレベルのViewGroupのlparamsはイニシャライザ内部に置くしかないみたい - layoutParams = RecyclerView.LayoutParams(matchParent, wrapContent).apply { + layoutParams = androidx.recyclerview.widget.RecyclerView.LayoutParams(matchParent, wrapContent).apply { marginStart = dip(8) marginEnd = dip(8) topMargin = dip(2f) diff --git a/app/src/main/java/jp/juggler/subwaytooter/PollingForegrounder.kt b/app/src/main/java/jp/juggler/subwaytooter/PollingForegrounder.kt index 437d5f6e..15d2e502 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/PollingForegrounder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/PollingForegrounder.kt @@ -7,8 +7,8 @@ import android.content.Context import android.content.Intent import android.os.Build import android.os.IBinder -import android.support.v4.app.NotificationCompat -import android.support.v4.content.ContextCompat +import androidx.core.app.NotificationCompat +import androidx.core.content.ContextCompat import jp.juggler.util.LogCategory import jp.juggler.subwaytooter.util.NotificationHelper diff --git a/app/src/main/java/jp/juggler/subwaytooter/PollingWorker.kt b/app/src/main/java/jp/juggler/subwaytooter/PollingWorker.kt index e37e7c07..f98a0f97 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/PollingWorker.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/PollingWorker.kt @@ -18,8 +18,8 @@ import android.os.Build import android.os.Handler import android.os.PowerManager import android.os.SystemClock -import android.support.v4.app.NotificationCompat -import android.support.v4.content.ContextCompat +import androidx.core.app.NotificationCompat +import androidx.core.content.ContextCompat import com.google.firebase.iid.FirebaseInstanceId import jp.juggler.subwaytooter.api.TootApiCallback import jp.juggler.subwaytooter.api.TootApiClient diff --git a/app/src/main/java/jp/juggler/subwaytooter/StatusButtons.kt b/app/src/main/java/jp/juggler/subwaytooter/StatusButtons.kt index 8778da74..f72bac59 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/StatusButtons.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/StatusButtons.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter import android.content.Context import android.content.res.ColorStateList -import android.support.v4.content.ContextCompat +import androidx.core.content.ContextCompat import android.view.View import android.widget.ImageButton import android.widget.ImageView diff --git a/app/src/main/java/jp/juggler/subwaytooter/StatusButtonsPopup.kt b/app/src/main/java/jp/juggler/subwaytooter/StatusButtonsPopup.kt index b1b4e214..aeb1612e 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/StatusButtonsPopup.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/StatusButtonsPopup.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter import android.annotation.SuppressLint import android.graphics.drawable.ColorDrawable import android.os.SystemClock -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.Gravity import android.view.MotionEvent import android.view.View @@ -63,7 +63,7 @@ internal class StatusButtonsPopup( @SuppressLint("RtlHardcoded") fun show( - listView : RecyclerView + listView : androidx.recyclerview.widget.RecyclerView , anchor : View , status : TootStatus , notification : TootNotification? diff --git a/app/src/main/java/jp/juggler/subwaytooter/Styler.kt b/app/src/main/java/jp/juggler/subwaytooter/Styler.kt index 39bb6b66..d6ce199b 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/Styler.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/Styler.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter import android.content.Context import android.graphics.PorterDuff import android.graphics.drawable.Drawable -import android.support.v4.content.ContextCompat +import androidx.core.content.ContextCompat import android.text.SpannableStringBuilder import android.text.Spanned import android.view.View diff --git a/app/src/main/java/jp/juggler/subwaytooter/TabletColumnPagerAdapter.kt b/app/src/main/java/jp/juggler/subwaytooter/TabletColumnPagerAdapter.kt index cc195d82..22091d46 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/TabletColumnPagerAdapter.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/TabletColumnPagerAdapter.kt @@ -1,12 +1,12 @@ package jp.juggler.subwaytooter -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.LayoutInflater import android.view.ViewGroup internal class TabletColumnPagerAdapter( private val activity : ActMain -) : RecyclerView.Adapter() { +) : androidx.recyclerview.widget.RecyclerView.Adapter() { private val inflater : LayoutInflater private val columnList : List diff --git a/app/src/main/java/jp/juggler/subwaytooter/TabletColumnViewHolder.kt b/app/src/main/java/jp/juggler/subwaytooter/TabletColumnViewHolder.kt index 83e577f9..930d7b12 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/TabletColumnViewHolder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/TabletColumnViewHolder.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.View import jp.juggler.util.LogCategory @@ -8,7 +8,7 @@ import jp.juggler.util.LogCategory internal class TabletColumnViewHolder( activity : ActMain, viewRoot : View -) : RecyclerView.ViewHolder(viewRoot) { +) : androidx.recyclerview.widget.RecyclerView.ViewHolder(viewRoot) { companion object { val log = LogCategory("TabletColumnViewHolder") diff --git a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderBase.kt b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderBase.kt index 01a95fb6..e69c0215 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderBase.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderBase.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.View import android.widget.Button import android.widget.TextView @@ -9,7 +9,7 @@ import jp.juggler.util.LogCategory import jp.juggler.util.scan internal abstract class ViewHolderHeaderBase(val activity : ActMain, val viewRoot : View) : - RecyclerView.ViewHolder(viewRoot) { + androidx.recyclerview.widget.RecyclerView.ViewHolder(viewRoot) { companion object { private val log = LogCategory("HeaderViewHolderBase") diff --git a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderProfile.kt b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderProfile.kt index a694e65a..c74c72eb 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderProfile.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderHeaderProfile.kt @@ -1,7 +1,7 @@ package jp.juggler.subwaytooter import android.graphics.Color -import android.support.v4.view.ViewCompat +import androidx.core.view.ViewCompat import android.text.SpannableStringBuilder import android.text.Spanned import android.text.style.ForegroundColorSpan diff --git a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderItem.kt b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderItem.kt index f165aedd..84a49e93 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/ViewHolderItem.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/ViewHolderItem.kt @@ -1,5 +1,5 @@ package jp.juggler.subwaytooter -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView -internal class ViewHolderItem(val ivh : ItemViewHolder) : RecyclerView.ViewHolder(ivh.viewRoot) +internal class ViewHolderItem(val ivh : ItemViewHolder) : androidx.recyclerview.widget.RecyclerView.ViewHolder(ivh.viewRoot) diff --git a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Account.kt b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Account.kt index d7b34c66..e7826821 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Account.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Account.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter.action import android.app.Dialog import android.content.Intent import android.os.Build -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import jp.juggler.subwaytooter.* import jp.juggler.subwaytooter.api.* import jp.juggler.subwaytooter.api.entity.EntityId diff --git a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Follow.kt b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Follow.kt index 6ec75a4c..e1a8f3c6 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Follow.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Follow.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.action -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import jp.juggler.subwaytooter.ActMain import jp.juggler.subwaytooter.App1 import jp.juggler.subwaytooter.Column diff --git a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Notification.kt b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Notification.kt index 53f1a87c..d8a11ffd 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/action/Action_Notification.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/action/Action_Notification.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.action -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import jp.juggler.subwaytooter.ActMain import jp.juggler.subwaytooter.App1 import jp.juggler.subwaytooter.Column diff --git a/app/src/main/java/jp/juggler/subwaytooter/api/entity/TootStatus.kt b/app/src/main/java/jp/juggler/subwaytooter/api/entity/TootStatus.kt index c4300fc8..830a2672 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/api/entity/TootStatus.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/api/entity/TootStatus.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter.api.entity import android.annotation.SuppressLint import android.content.Context -import android.support.annotation.StringRes +import androidx.annotation.StringRes import android.text.Spannable import android.text.SpannableString import jp.juggler.subwaytooter.App1 diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/AccountPicker.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/AccountPicker.kt index 60714932..e31719d0 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/AccountPicker.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/AccountPicker.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter.dialog import android.annotation.SuppressLint import android.app.Dialog -import android.support.v7.app.AppCompatActivity +import androidx.appcompat.app.AppCompatActivity import android.view.Gravity import android.view.View import android.widget.Button diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/ActionsDialog.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/ActionsDialog.kt index 793595a9..ed8bb329 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/ActionsDialog.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/ActionsDialog.kt @@ -1,7 +1,7 @@ package jp.juggler.subwaytooter.dialog import android.content.Context -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import java.util.ArrayList diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgConfirm.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgConfirm.kt index f6461e62..9a3901a5 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgConfirm.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgConfirm.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter.dialog import android.annotation.SuppressLint import android.app.Activity -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import android.view.View import android.widget.CheckBox import android.widget.TextView diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgDraftPicker.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgDraftPicker.kt index 6a9e4fac..a5edcf3d 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgDraftPicker.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/DlgDraftPicker.kt @@ -4,7 +4,7 @@ import android.annotation.SuppressLint import android.content.DialogInterface import android.database.Cursor import android.os.AsyncTask -import android.support.v7.app.AlertDialog +import androidx.appcompat.app.AlertDialog import android.view.View import android.view.ViewGroup import android.widget.AdapterView diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/EmojiPicker.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/EmojiPicker.kt index c3cfbfc2..dd456d55 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/EmojiPicker.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/EmojiPicker.kt @@ -3,8 +3,8 @@ package jp.juggler.subwaytooter.dialog import android.annotation.SuppressLint import android.app.Activity import android.app.Dialog -import android.support.v4.view.PagerAdapter -import android.support.v4.view.ViewPager +import androidx.viewpager.widget.PagerAdapter +import androidx.viewpager.widget.ViewPager import android.util.SparseArray import android.view.LayoutInflater import android.view.View @@ -31,7 +31,7 @@ class EmojiPicker( @Suppress("CanBeParameter") private val isMisskey : Boolean, private val onEmojiPicked : (name : String, instance : String?, bInstanceHasCustomEmoji : Boolean) -> Unit // onEmojiPickedのinstance引数は通常の絵文字ならnull、カスタム絵文字なら非null、 -) : View.OnClickListener, ViewPager.OnPageChangeListener { +) : View.OnClickListener, androidx.viewpager.widget.ViewPager.OnPageChangeListener { companion object { @@ -492,7 +492,7 @@ class EmojiPicker( onEmojiPicked(name, instance, bInstanceHasCustomEmoji) } - internal inner class EmojiPickerPagerAdapter : PagerAdapter() { + internal inner class EmojiPickerPagerAdapter : androidx.viewpager.widget.PagerAdapter() { private val inflater : LayoutInflater private val holder_list = SparseArray() diff --git a/app/src/main/java/jp/juggler/subwaytooter/dialog/LoginForm.kt b/app/src/main/java/jp/juggler/subwaytooter/dialog/LoginForm.kt index fdfe4d94..a97c7dae 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/dialog/LoginForm.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/dialog/LoginForm.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter.dialog import android.annotation.SuppressLint import android.app.Activity import android.app.Dialog -import android.support.annotation.StringRes +import androidx.annotation.StringRes import android.text.InputType import android.view.View import android.view.WindowManager diff --git a/app/src/main/java/jp/juggler/subwaytooter/span/EmojiImageSpan.kt b/app/src/main/java/jp/juggler/subwaytooter/span/EmojiImageSpan.kt index 1100a14d..9de7e37b 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/span/EmojiImageSpan.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/span/EmojiImageSpan.kt @@ -3,8 +3,8 @@ package jp.juggler.subwaytooter.span import android.content.Context import android.graphics.* import android.graphics.drawable.Drawable -import android.support.annotation.IntRange -import android.support.v4.content.ContextCompat +import androidx.annotation.IntRange +import androidx.core.content.ContextCompat import android.text.style.ReplacementSpan import java.lang.ref.WeakReference diff --git a/app/src/main/java/jp/juggler/subwaytooter/span/NetworkEmojiSpan.kt b/app/src/main/java/jp/juggler/subwaytooter/span/NetworkEmojiSpan.kt index 6b4c2f1b..001a8a78 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/span/NetworkEmojiSpan.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/span/NetworkEmojiSpan.kt @@ -4,7 +4,7 @@ import android.graphics.Canvas import android.graphics.Paint import android.graphics.Rect import android.graphics.RectF -import android.support.annotation.IntRange +import androidx.annotation.IntRange import android.text.style.ReplacementSpan import jp.juggler.apng.ApngFrames diff --git a/app/src/main/java/jp/juggler/subwaytooter/table/AcctColor.kt b/app/src/main/java/jp/juggler/subwaytooter/table/AcctColor.kt index 13e3d53e..f4a089f1 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/table/AcctColor.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/table/AcctColor.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter.table import android.content.ContentValues import android.content.Context import android.database.sqlite.SQLiteDatabase -import android.support.v4.util.LruCache +import androidx.collection.LruCache import android.text.Spannable import android.text.SpannableStringBuilder import android.text.style.BackgroundColorSpan @@ -87,7 +87,7 @@ class AcctColor { } } - private val mMemoryCache = LruCache(2048) + private val mMemoryCache = androidx.collection.LruCache(2048) override fun onDBCreate(db : SQLiteDatabase) { log.d("onDBCreate!") diff --git a/app/src/main/java/jp/juggler/subwaytooter/table/UserRelation.kt b/app/src/main/java/jp/juggler/subwaytooter/table/UserRelation.kt index 18ad80b7..0518bf22 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/table/UserRelation.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/table/UserRelation.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter.table import android.content.ContentValues import android.database.sqlite.SQLiteDatabase -import android.support.v4.util.LruCache +import androidx.collection.LruCache import jp.juggler.subwaytooter.App1 import jp.juggler.subwaytooter.api.TootParser import jp.juggler.subwaytooter.api.entity.EntityId @@ -42,7 +42,7 @@ class UserRelation { 1 // show the boosts from target account will be shown on authorized user's home TL. const val REBLOG_UNKNOWN = 2 // not following, or instance don't support hide reblog. - private val mMemoryCache = LruCache(2048) + private val mMemoryCache = androidx.collection.LruCache(2048) private val log = LogCategory("UserRelationMisskey") diff --git a/app/src/main/java/jp/juggler/subwaytooter/util/EmojiDecoder.kt b/app/src/main/java/jp/juggler/subwaytooter/util/EmojiDecoder.kt index f9bfc8f7..5090de63 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/util/EmojiDecoder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/util/EmojiDecoder.kt @@ -1,7 +1,7 @@ package jp.juggler.subwaytooter.util import android.content.Context -import android.support.annotation.DrawableRes +import androidx.annotation.DrawableRes import android.text.Spannable import android.text.SpannableStringBuilder import android.text.Spanned diff --git a/app/src/main/java/jp/juggler/subwaytooter/util/PopupAutoCompleteAcct.kt b/app/src/main/java/jp/juggler/subwaytooter/util/PopupAutoCompleteAcct.kt index 6bde35e8..b6f00be6 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/util/PopupAutoCompleteAcct.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/util/PopupAutoCompleteAcct.kt @@ -3,7 +3,7 @@ package jp.juggler.subwaytooter.util import android.annotation.SuppressLint import android.app.Activity import android.os.Handler -import android.support.v4.content.ContextCompat +import androidx.core.content.ContextCompat import android.text.Spannable import android.text.SpannableStringBuilder import android.view.Gravity diff --git a/app/src/main/java/jp/juggler/subwaytooter/util/PostHelper.kt b/app/src/main/java/jp/juggler/subwaytooter/util/PostHelper.kt index 52aa3ffe..aa67494d 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/util/PostHelper.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/util/PostHelper.kt @@ -3,8 +3,8 @@ package jp.juggler.subwaytooter.util import android.content.SharedPreferences import android.os.Handler import android.os.SystemClock -import android.support.v7.app.AlertDialog -import android.support.v7.app.AppCompatActivity +import androidx.appcompat.app.AlertDialog +import androidx.appcompat.app.AppCompatActivity import android.text.* import android.text.style.ForegroundColorSpan import android.view.View diff --git a/app/src/main/java/jp/juggler/subwaytooter/util/ScrollPosition.kt b/app/src/main/java/jp/juggler/subwaytooter/util/ScrollPosition.kt index f4a20ad7..8be10474 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/util/ScrollPosition.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/util/ScrollPosition.kt @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.util -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.ViewGroup import jp.juggler.subwaytooter.ColumnViewHolder @@ -25,7 +25,7 @@ class ScrollPosition { constructor(holder : ColumnViewHolder) { val layoutManager = holder.listLayoutManager val findPosition = layoutManager.findFirstVisibleItemPosition() - if(findPosition == RecyclerView.NO_POSITION) { + if(findPosition == androidx.recyclerview.widget.RecyclerView.NO_POSITION) { adapterIndex = 0 offset = 0 } else { diff --git a/app/src/main/java/jp/juggler/subwaytooter/util/WaitNotifyHelper.java b/app/src/main/java/jp/juggler/subwaytooter/util/WaitNotifyHelper.java index 44f191b2..4cc20ca8 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/util/WaitNotifyHelper.java +++ b/app/src/main/java/jp/juggler/subwaytooter/util/WaitNotifyHelper.java @@ -1,6 +1,6 @@ package jp.juggler.subwaytooter.util; -import android.support.annotation.NonNull; +import androidx.annotation.NonNull; // このクラスをkotlinに変換しないこと // Kotlin は wait/notify をサポートしてない diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/GravitySnapHelper.kt b/app/src/main/java/jp/juggler/subwaytooter/view/GravitySnapHelper.kt index e5ceb123..89fbd9a9 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/GravitySnapHelper.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/GravitySnapHelper.kt @@ -1,11 +1,11 @@ package jp.juggler.subwaytooter.view import android.annotation.SuppressLint -import android.support.v4.view.ViewCompat -import android.support.v7.widget.LinearLayoutManager -import android.support.v7.widget.LinearSnapHelper -import android.support.v7.widget.OrientationHelper -import android.support.v7.widget.RecyclerView +import androidx.core.view.ViewCompat +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.LinearSnapHelper +import androidx.recyclerview.widget.OrientationHelper +import androidx.recyclerview.widget.RecyclerView import android.view.Gravity import android.view.View import android.view.animation.DecelerateInterpolator @@ -14,18 +14,18 @@ import android.widget.Scroller import jp.juggler.util.LogCategory class GravitySnapHelper @SuppressLint("RtlHardcoded") -constructor(gravity : Int) : LinearSnapHelper() { +constructor(gravity : Int) : androidx.recyclerview.widget.LinearSnapHelper() { companion object { internal val log = LogCategory("GravitySnapHelper") } - private var verticalHelper : OrientationHelper? = null - private var horizontalHelper : OrientationHelper? = null + private var verticalHelper : androidx.recyclerview.widget.OrientationHelper? = null + private var horizontalHelper : androidx.recyclerview.widget.OrientationHelper? = null private var gravity : Int = 0 private var isRTL : Boolean = false - private var mRecyclerView : RecyclerView? = null + private var mRecyclerView : androidx.recyclerview.widget.RecyclerView? = null private var mGravityScroller : Scroller? = null @@ -39,7 +39,7 @@ constructor(gravity : Int) : LinearSnapHelper() { } @Throws(IllegalStateException::class) - override fun attachToRecyclerView(recyclerView : RecyclerView?) { + override fun attachToRecyclerView(recyclerView : androidx.recyclerview.widget.RecyclerView?) { mRecyclerView = recyclerView if(recyclerView != null) { isRTL = ViewCompat.getLayoutDirection(recyclerView) == ViewCompat.LAYOUT_DIRECTION_RTL @@ -50,7 +50,7 @@ constructor(gravity : Int) : LinearSnapHelper() { } override fun calculateDistanceToFinalSnap( - layoutManager : RecyclerView.LayoutManager, targetView : View + layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager, targetView : View ) : IntArray? { val out = IntArray(2) @@ -73,8 +73,8 @@ constructor(gravity : Int) : LinearSnapHelper() { return out } - override fun findSnapView(layoutManager : RecyclerView.LayoutManager) : View? { - if(layoutManager is LinearLayoutManager) { + override fun findSnapView(layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager) : View? { + if(layoutManager is androidx.recyclerview.widget.LinearLayoutManager) { when(gravity) { Gravity.START -> return findStartView(layoutManager, getHorizontalHelper(layoutManager)) @@ -90,7 +90,7 @@ constructor(gravity : Int) : LinearSnapHelper() { return super.findSnapView(layoutManager) } - private fun distanceToStart(targetView : View, helper : OrientationHelper) : Int { + private fun distanceToStart(targetView : View, helper : androidx.recyclerview.widget.OrientationHelper) : Int { return if(isRTL) { helper.getDecoratedEnd(targetView) - helper.endAfterPadding } else { @@ -98,7 +98,7 @@ constructor(gravity : Int) : LinearSnapHelper() { } } - private fun distanceToEnd(targetView : View, helper : OrientationHelper) : Int { + private fun distanceToEnd(targetView : View, helper : androidx.recyclerview.widget.OrientationHelper) : Int { return if(isRTL) { helper.getDecoratedStart(targetView) - helper.startAfterPadding } else { @@ -107,14 +107,14 @@ constructor(gravity : Int) : LinearSnapHelper() { } private fun findStartView( - layoutManager : RecyclerView.LayoutManager, helper : OrientationHelper + layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager, helper : androidx.recyclerview.widget.OrientationHelper ) : View? { - if(layoutManager is LinearLayoutManager) { + if(layoutManager is androidx.recyclerview.widget.LinearLayoutManager) { val firstChild = layoutManager.findFirstVisibleItemPosition() - if(firstChild == RecyclerView.NO_POSITION) { + if(firstChild == androidx.recyclerview.widget.RecyclerView.NO_POSITION) { return null } @@ -134,14 +134,14 @@ constructor(gravity : Int) : LinearSnapHelper() { } private fun findEndView( - layoutManager : RecyclerView.LayoutManager, helper : OrientationHelper + layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager, helper : androidx.recyclerview.widget.OrientationHelper ) : View? { - if(layoutManager is LinearLayoutManager) { + if(layoutManager is androidx.recyclerview.widget.LinearLayoutManager) { val lastChild = layoutManager.findLastVisibleItemPosition() - if(lastChild == RecyclerView.NO_POSITION) { + if(lastChild == androidx.recyclerview.widget.RecyclerView.NO_POSITION) { return null } @@ -160,19 +160,19 @@ constructor(gravity : Int) : LinearSnapHelper() { return super.findSnapView(layoutManager) } - private fun getVerticalHelper(layoutManager : RecyclerView.LayoutManager) : OrientationHelper { + private fun getVerticalHelper(layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager) : androidx.recyclerview.widget.OrientationHelper { var verticalHelper = this.verticalHelper if(verticalHelper == null) { - verticalHelper = OrientationHelper.createVerticalHelper(layoutManager) as OrientationHelper + verticalHelper = androidx.recyclerview.widget.OrientationHelper.createVerticalHelper(layoutManager) as androidx.recyclerview.widget.OrientationHelper this.verticalHelper = verticalHelper } return verticalHelper } - private fun getHorizontalHelper(layoutManager : RecyclerView.LayoutManager) : OrientationHelper { + private fun getHorizontalHelper(layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager) : androidx.recyclerview.widget.OrientationHelper { var horizontalHelper = this.horizontalHelper if(horizontalHelper == null) { - horizontalHelper = OrientationHelper.createHorizontalHelper(layoutManager) as OrientationHelper + horizontalHelper = androidx.recyclerview.widget.OrientationHelper.createHorizontalHelper(layoutManager) as androidx.recyclerview.widget.OrientationHelper this.horizontalHelper = horizontalHelper } return horizontalHelper @@ -181,11 +181,11 @@ constructor(gravity : Int) : LinearSnapHelper() { // var columnWidth : Int = 0 override fun findTargetSnapPosition( - layoutManager : RecyclerView.LayoutManager, velocityX : Int, velocityY : Int + layoutManager : androidx.recyclerview.widget.RecyclerView.LayoutManager, velocityX : Int, velocityY : Int ) : Int { var targetPos = super.findTargetSnapPosition(layoutManager, velocityX, velocityY) - if(targetPos != RecyclerView.NO_POSITION) { + if(targetPos != androidx.recyclerview.widget.RecyclerView.NO_POSITION) { val currentView = findSnapView(layoutManager ) if(currentView != null) { val currentPosition = layoutManager.getPosition(currentView) diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/ListDivider.kt b/app/src/main/java/jp/juggler/subwaytooter/view/ListDivider.kt index e579468f..8ab47214 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/ListDivider.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/ListDivider.kt @@ -4,12 +4,12 @@ import android.content.Context import android.graphics.Canvas import android.graphics.Paint import android.graphics.Rect -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.View import jp.juggler.subwaytooter.R import jp.juggler.util.getAttributeDrawable -class ListDivider(context : Context) : RecyclerView.ItemDecoration() { +class ListDivider(context : Context) : androidx.recyclerview.widget.RecyclerView.ItemDecoration() { companion object { @@ -35,13 +35,13 @@ class ListDivider(context : Context) : RecyclerView.ItemDecoration() { override fun getItemOffsets( outRect : Rect, view : View, - parent : RecyclerView, - state : RecyclerView.State + parent : androidx.recyclerview.widget.RecyclerView, + state : androidx.recyclerview.widget.RecyclerView.State ) { outRect.set(0, 0, 0, height) } - override fun onDraw(canvas : Canvas, parent : RecyclerView, state : RecyclerView.State) { + override fun onDraw(canvas : Canvas, parent : androidx.recyclerview.widget.RecyclerView, state : androidx.recyclerview.widget.RecyclerView.State) { val left = parent.paddingLeft +marginH val right = parent.width - parent.paddingRight -marginH @@ -51,7 +51,7 @@ class ListDivider(context : Context) : RecyclerView.ItemDecoration() { for(i in 0 until parent.childCount) { val child = parent.getChildAt(i) - val params = child.layoutParams as RecyclerView.LayoutParams + val params = child.layoutParams as androidx.recyclerview.widget.RecyclerView.LayoutParams val top = child.bottom + params.bottomMargin val bottom = top + height if( color != 0){ diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/MyEditText.kt b/app/src/main/java/jp/juggler/subwaytooter/view/MyEditText.kt index 9bdc44e5..c159a79d 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/MyEditText.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/MyEditText.kt @@ -2,9 +2,9 @@ package jp.juggler.subwaytooter.view import android.annotation.SuppressLint import android.content.Context -import android.support.v13.view.inputmethod.EditorInfoCompat -import android.support.v13.view.inputmethod.InputConnectionCompat -import android.support.v7.widget.AppCompatEditText +import androidx.core.view.inputmethod.EditorInfoCompat +import androidx.core.view.inputmethod.InputConnectionCompat +import androidx.appcompat.widget.AppCompatEditText import android.util.AttributeSet import android.view.MotionEvent import android.view.inputmethod.EditorInfo diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/MyNetworkImageView.kt b/app/src/main/java/jp/juggler/subwaytooter/view/MyNetworkImageView.kt index b6bc85aa..aa3394a9 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/MyNetworkImageView.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/MyNetworkImageView.kt @@ -8,13 +8,13 @@ import android.graphics.Matrix import android.graphics.drawable.Animatable import android.graphics.drawable.BitmapDrawable import android.graphics.drawable.Drawable -import android.support.v4.content.ContextCompat -import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory -import android.support.v7.widget.AppCompatImageView import android.util.AttributeSet import android.view.View import android.view.ViewGroup import android.widget.ImageView +import androidx.appcompat.widget.AppCompatImageView +import androidx.core.content.ContextCompat +import androidx.core.graphics.drawable.RoundedBitmapDrawableFactory import com.bumptech.glide.Glide import com.bumptech.glide.RequestManager import com.bumptech.glide.load.model.GlideUrl @@ -22,7 +22,6 @@ import com.bumptech.glide.load.model.LazyHeaders import com.bumptech.glide.load.resource.gif.GifDrawable import com.bumptech.glide.load.resource.gif.MyGifDrawable import com.bumptech.glide.request.target.ImageViewTarget -import com.bumptech.glide.request.target.SimpleTarget import com.bumptech.glide.request.target.Target import com.bumptech.glide.request.transition.Transition import jp.juggler.subwaytooter.Pref @@ -36,10 +35,10 @@ class MyNetworkImageView : AppCompatImageView { } // ロード中などに表示するDrawableのリソースID - private var mDefaultImage :Drawable? = null + private var mDefaultImage : Drawable? = null // エラー時に表示するDrawableのリソースID - private var mErrorImage :Drawable? = null + private var mErrorImage : Drawable? = null // 角丸の半径。元画像の短辺に対する割合を指定するらしい internal var mCornerRadius = 0f @@ -138,8 +137,6 @@ class MyNetworkImageView : AppCompatImageView { } - - // 必要なら非同期処理を開始する private fun loadImageIfNecessary() { try { @@ -180,20 +177,20 @@ class MyNetworkImageView : AppCompatImageView { return } + val glideHeaders = LazyHeaders.Builder() + .addHeader("Accept", "image/webp,image/*,*/*;q=0.8") + .build() + + val glideUrl = GlideUrl(url, glideHeaders) mTarget = if(mMayGif) { getGlide() - ?.load(url) + ?.load(glideUrl) ?.into(MyTargetGif(url)) } else { - val glideHeaders = LazyHeaders.Builder() - .addHeader("Accept", "image/webp,image/*,*/*;q=0.8") - .build() - - val glideUrl = GlideUrl(url, glideHeaders) - - getGlide()?.asBitmap()?.load(glideUrl) - ?.into(MyTarget(url, desiredWidth, desiredHeight)) + getGlide() + ?.load(glideUrl) + ?.into(MyTarget(url)) } } catch(ex : Throwable) { log.trace(ex) @@ -249,31 +246,28 @@ class MyNetworkImageView : AppCompatImageView { // 静止画用のターゲット private inner class MyTarget internal constructor( - override val urlLoading : String, - desiredWidth : Int, - desiredHeight : Int - ) : SimpleTarget(desiredWidth, desiredHeight), UrlTarget { + override val urlLoading : String + ) : ImageViewTarget(this@MyNetworkImageView), UrlTarget { // errorDrawable The error drawable to optionally show, or null. override fun onLoadFailed(errorDrawable : Drawable?) = onLoadFailed(urlLoading) - override fun onResourceReady( - bitmap : Bitmap, - transition : Transition? - ) { + override fun setResource(resource : Drawable?) { try { // 別の画像を表示するよう指定が変化していたなら何もしない if(urlLoading != mUrl) return + if(resource !is BitmapDrawable) return if(mCornerRadius <= 0f) { - setImageBitmap(bitmap) + setImageDrawable(resource) } else { - setImageDrawable(replaceBitmapDrawable(bitmap)) + setImageDrawable(replaceBitmapDrawable(resource.bitmap)) } } catch(ex : Throwable) { log.trace(ex) } } + } private inner class MyTargetGif internal constructor( @@ -315,7 +309,6 @@ class MyNetworkImageView : AppCompatImageView { } catch(ex : Throwable) { log.trace(ex) } - } private fun afterResourceReady(transition : Transition?, drawable : Drawable) { @@ -566,4 +559,5 @@ class MyNetworkImageView : AppCompatImageView { } } } + } diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/MyTextView.kt b/app/src/main/java/jp/juggler/subwaytooter/view/MyTextView.kt index 8a677df1..281e7e2f 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/MyTextView.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/MyTextView.kt @@ -2,7 +2,7 @@ package jp.juggler.subwaytooter.view import android.annotation.SuppressLint import android.content.Context -import android.support.v7.widget.AppCompatTextView +import androidx.appcompat.widget.AppCompatTextView import android.util.AttributeSet import android.view.MotionEvent diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/MyViewPager.kt b/app/src/main/java/jp/juggler/subwaytooter/view/MyViewPager.kt index 8391fe48..327cb928 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/MyViewPager.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/MyViewPager.kt @@ -2,11 +2,11 @@ package jp.juggler.subwaytooter.view import android.annotation.SuppressLint import android.content.Context -import android.support.v4.view.ViewPager +import androidx.viewpager.widget.ViewPager import android.util.AttributeSet import android.view.MotionEvent -class MyViewPager : ViewPager { +class MyViewPager : androidx.viewpager.widget.ViewPager { constructor(context : Context) : super(context) constructor(context : Context, attrs : AttributeSet?) : super(context, attrs) diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/TabletColumnDivider.kt b/app/src/main/java/jp/juggler/subwaytooter/view/TabletColumnDivider.kt index 58fcbef5..a86b7088 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/TabletColumnDivider.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/TabletColumnDivider.kt @@ -4,13 +4,13 @@ import android.content.Context import android.graphics.Canvas import android.graphics.Paint import android.graphics.Rect -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.view.View import jp.juggler.subwaytooter.R import jp.juggler.util.LogCategory import jp.juggler.util.getAttributeDrawable -class TabletColumnDivider(context : Context) : RecyclerView.ItemDecoration() { +class TabletColumnDivider(context : Context) : androidx.recyclerview.widget.RecyclerView.ItemDecoration() { companion object { private val log = LogCategory("TabletColumnDivider") @@ -34,13 +34,13 @@ class TabletColumnDivider(context : Context) : RecyclerView.ItemDecoration() { override fun getItemOffsets( outRect : Rect, view : View, - parent : RecyclerView, - state : RecyclerView.State + parent : androidx.recyclerview.widget.RecyclerView, + state : androidx.recyclerview.widget.RecyclerView.State ) { outRect.set(0, 0, barWidth, 0) } - override fun onDraw(canvas : Canvas, parent : RecyclerView, state : RecyclerView.State) { + override fun onDraw(canvas : Canvas, parent : androidx.recyclerview.widget.RecyclerView, state : androidx.recyclerview.widget.RecyclerView.State) { val clip = canvas.clipBounds val top = clip.top @@ -52,7 +52,7 @@ class TabletColumnDivider(context : Context) : RecyclerView.ItemDecoration() { for(i in 0 until parent.childCount) { val child = parent.getChildAt(i) - val params = child.layoutParams as RecyclerView.LayoutParams + val params = child.layoutParams as androidx.recyclerview.widget.RecyclerView.LayoutParams if( child.left >= clip.right ) break diff --git a/app/src/main/java/jp/juggler/subwaytooter/view/TabletModeRecyclerView.kt b/app/src/main/java/jp/juggler/subwaytooter/view/TabletModeRecyclerView.kt index c507706f..661c98e8 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/view/TabletModeRecyclerView.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/view/TabletModeRecyclerView.kt @@ -1,12 +1,12 @@ package jp.juggler.subwaytooter.view import android.content.Context -import android.support.v7.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView import android.util.AttributeSet import android.view.MotionEvent import android.view.ViewConfiguration -class TabletModeRecyclerView : RecyclerView { +class TabletModeRecyclerView : androidx.recyclerview.widget.RecyclerView { private var mForbidStartDragging : Boolean = false diff --git a/app/src/main/java/jp/juggler/util/UiUtils.kt b/app/src/main/java/jp/juggler/util/UiUtils.kt index bbe6dcef..b8650001 100644 --- a/app/src/main/java/jp/juggler/util/UiUtils.kt +++ b/app/src/main/java/jp/juggler/util/UiUtils.kt @@ -14,7 +14,7 @@ import android.graphics.drawable.* import android.graphics.drawable.shapes.RectShape import android.os.Build import android.os.SystemClock -import android.support.v4.content.ContextCompat +import androidx.core.content.ContextCompat import android.text.Editable import android.text.TextWatcher import android.util.SparseArray diff --git a/app/src/main/java/jp/juggler/util/WordTrieTree.kt b/app/src/main/java/jp/juggler/util/WordTrieTree.kt index 8a2397ce..5183f122 100644 --- a/app/src/main/java/jp/juggler/util/WordTrieTree.kt +++ b/app/src/main/java/jp/juggler/util/WordTrieTree.kt @@ -1,6 +1,6 @@ package jp.juggler.util -import android.support.v4.util.SparseArrayCompat +import androidx.collection.SparseArrayCompat import jp.juggler.subwaytooter.util.CharacterGroup import java.util.ArrayList @@ -49,7 +49,7 @@ class WordTrieTree { private class Node { // 続くノード - internal val child_nodes = SparseArrayCompat() + internal val child_nodes = androidx.collection.SparseArrayCompat() // このノードが終端なら、マッチした単語の元の表記がある internal var match_word : String? = null diff --git a/app/src/main/res/layout/act_main.xml b/app/src/main/res/layout/act_main.xml index 88c3264e..517ac67f 100644 --- a/app/src/main/res/layout/act_main.xml +++ b/app/src/main/res/layout/act_main.xml @@ -1,5 +1,5 @@ ---> - - + diff --git a/app/src/main/res/layout/page_column.xml b/app/src/main/res/layout/page_column.xml index c9007e93..1d4c1817 100644 --- a/app/src/main/res/layout/page_column.xml +++ b/app/src/main/res/layout/page_column.xml @@ -600,7 +600,7 @@ app:srl_direction="both" > -