Bladeren bron

Remove bundled fallback file picker

arkon 4 jaren geleden
bovenliggende
commit
e8627800fe

+ 0 - 1
app/build.gradle

@@ -239,7 +239,6 @@ dependencies {
     implementation 'com.github.dmytrodanylyk.android-process-button:library:1.0.4'
     implementation 'eu.davidea:flexible-adapter:5.1.0'
     implementation 'eu.davidea:flexible-adapter-ui:1.0.0'
-    implementation 'com.nononsenseapps:filepicker:2.5.2'
     implementation 'com.nightlynexus.viewstatepageradapter:viewstatepageradapter:1.1.0'
     implementation 'com.github.chrisbanes:PhotoView:2.3.0'
     implementation 'com.github.carlosesco:DirectionalViewPager:a844dbca0a'

+ 0 - 4
app/src/main/AndroidManifest.xml

@@ -80,10 +80,6 @@
         <activity
             android:name=".ui.webview.WebViewActivity"
             android:configChanges="uiMode|orientation|screenSize" />
-        <activity
-            android:name=".widget.CustomLayoutPickerActivity"
-            android:label="@string/app_name"
-            android:theme="@style/FilePickerTheme" />
         <activity
             android:name=".ui.setting.track.AnilistLoginActivity"
             android:label="Anilist">

+ 1 - 1
app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupNotifier.kt

@@ -146,7 +146,7 @@ class BackupNotifier(private val context: Context) {
                 val uri = destFile.getUriCompat(context)
 
                 addAction(
-                    R.drawable.nnf_ic_file_folder,
+                    R.drawable.ic_folder_24dp,
                     context.getString(R.string.action_open_log),
                     NotificationReceiver.openErrorLogPendingActivity(context, uri)
                 )

+ 1 - 1
app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt

@@ -109,7 +109,7 @@ class LibraryUpdateNotifier(private val context: Context) {
 
                 setContentIntent(errorLogIntent)
                 addAction(
-                    R.drawable.nnf_ic_file_folder,
+                    R.drawable.ic_folder_24dp,
                     context.getString(R.string.action_open_log),
                     errorLogIntent
                 )

+ 2 - 6
app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBackupController.kt

@@ -39,7 +39,6 @@ import eu.kanade.tachiyomi.util.preference.preferenceCategory
 import eu.kanade.tachiyomi.util.preference.summaryRes
 import eu.kanade.tachiyomi.util.preference.switchPreference
 import eu.kanade.tachiyomi.util.preference.titleRes
-import eu.kanade.tachiyomi.util.system.getFilePicker
 import eu.kanade.tachiyomi.util.system.toast
 import kotlinx.coroutines.flow.launchIn
 import kotlinx.coroutines.flow.onEach
@@ -125,13 +124,11 @@ class SettingsBackupController : SettingsController() {
                 titleRes = R.string.pref_backup_directory
 
                 onClick {
-                    val currentDir = preferences.backupsDirectory().get()
                     try {
                         val intent = Intent(Intent.ACTION_OPEN_DOCUMENT_TREE)
                         startActivityForResult(intent, CODE_BACKUP_DIR)
                     } catch (e: ActivityNotFoundException) {
-                        // Fall back to custom picker on error
-                        startActivityForResult(preferences.context.getFilePicker(currentDir), CODE_BACKUP_DIR)
+                        activity?.toast(R.string.file_picker_error)
                     }
                 }
 
@@ -277,8 +274,7 @@ class SettingsBackupController : SettingsController() {
 
             startActivityForResult(intent, code)
         } catch (e: ActivityNotFoundException) {
-            // Handle errors where the Android ROM doesn't support the built in picker
-            startActivityForResult(preferences.context.getFilePicker(currentDir), code)
+            activity?.toast(R.string.file_picker_error)
         }
     }
 

+ 4 - 4
app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsDownloadController.kt

@@ -27,7 +27,7 @@ import eu.kanade.tachiyomi.util.preference.preference
 import eu.kanade.tachiyomi.util.preference.preferenceCategory
 import eu.kanade.tachiyomi.util.preference.switchPreference
 import eu.kanade.tachiyomi.util.preference.titleRes
-import eu.kanade.tachiyomi.util.system.getFilePicker
+import eu.kanade.tachiyomi.util.system.toast
 import kotlinx.coroutines.flow.launchIn
 import kotlinx.coroutines.flow.onEach
 import uy.kohesive.injekt.Injekt
@@ -155,12 +155,12 @@ class SettingsDownloadController : SettingsController() {
         preferences.downloadsDirectory().set(path.toString())
     }
 
-    fun customDirectorySelected(currentDir: String) {
+    fun customDirectorySelected() {
         val intent = Intent(Intent.ACTION_OPEN_DOCUMENT_TREE)
         try {
             startActivityForResult(intent, DOWNLOAD_DIR)
         } catch (e: ActivityNotFoundException) {
-            startActivityForResult(preferences.context.getFilePicker(currentDir), DOWNLOAD_DIR)
+            activity?.toast(R.string.file_picker_error)
         }
     }
 
@@ -181,7 +181,7 @@ class SettingsDownloadController : SettingsController() {
                 ) { _, position, text ->
                     val target = targetController as? SettingsDownloadController
                     if (position == externalDirs.lastIndex) {
-                        target?.customDirectorySelected(currentDir)
+                        target?.customDirectorySelected()
                     } else {
                         target?.predefinedDirectorySelected(text.toString())
                     }

+ 0 - 15
app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt

@@ -29,10 +29,8 @@ import androidx.core.graphics.green
 import androidx.core.graphics.red
 import androidx.core.net.toUri
 import androidx.localbroadcastmanager.content.LocalBroadcastManager
-import com.nononsenseapps.filepicker.FilePickerActivity
 import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.util.lang.truncateCenter
-import eu.kanade.tachiyomi.widget.CustomLayoutPickerActivity
 import kotlin.math.roundToInt
 
 /**
@@ -98,19 +96,6 @@ fun Context.notification(channelId: String, block: (NotificationCompat.Builder.(
     return builder.build()
 }
 
-/**
- * Helper method to construct an Intent to use a custom file picker.
- * @param currentDir the path the file picker will open with.
- * @return an Intent to start the file picker activity.
- */
-fun Context.getFilePicker(currentDir: String): Intent {
-    return Intent(this, CustomLayoutPickerActivity::class.java)
-        .putExtra(FilePickerActivity.EXTRA_ALLOW_MULTIPLE, false)
-        .putExtra(FilePickerActivity.EXTRA_ALLOW_CREATE_DIR, true)
-        .putExtra(FilePickerActivity.EXTRA_MODE, FilePickerActivity.MODE_DIR)
-        .putExtra(FilePickerActivity.EXTRA_START_PATH, currentDir)
-}
-
 /**
  * Checks if the give permission is granted.
  *

+ 0 - 33
app/src/main/java/eu/kanade/tachiyomi/widget/CustomLayoutPicker.kt

@@ -1,33 +0,0 @@
-package eu.kanade.tachiyomi.widget
-
-import android.view.ViewGroup
-import androidx.recyclerview.widget.RecyclerView
-import com.nononsenseapps.filepicker.AbstractFilePickerFragment
-import com.nononsenseapps.filepicker.FilePickerActivity
-import com.nononsenseapps.filepicker.FilePickerFragment
-import com.nononsenseapps.filepicker.LogicHandler
-import eu.kanade.tachiyomi.R
-import eu.kanade.tachiyomi.util.view.inflate
-import java.io.File
-
-class CustomLayoutPickerActivity : FilePickerActivity() {
-
-    override fun getFragment(startPath: String?, mode: Int, allowMultiple: Boolean, allowCreateDir: Boolean):
-        AbstractFilePickerFragment<File> {
-            val fragment = CustomLayoutFilePickerFragment()
-            fragment.setArgs(startPath, mode, allowMultiple, allowCreateDir)
-            return fragment
-        }
-}
-
-class CustomLayoutFilePickerFragment : FilePickerFragment() {
-    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
-        return when (viewType) {
-            LogicHandler.VIEWTYPE_DIR -> {
-                val view = parent.inflate(R.layout.common_listitem_dir)
-                DirViewHolder(view)
-            }
-            else -> super.onCreateViewHolder(parent, viewType)
-        }
-    }
-}

+ 9 - 0
app/src/main/res/drawable/ic_folder_24dp.xml

@@ -0,0 +1,9 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:width="24dp"
+    android:height="24dp"
+    android:viewportWidth="24"
+    android:viewportHeight="24">
+    <path
+        android:fillColor="#FF000000"
+        android:pathData="M10,4H4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2V8c0,-1.1 -0.9,-2 -2,-2h-8l-2,-2z" />
+</vector>

+ 0 - 38
app/src/main/res/layout/common_listitem_dir.xml

@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:id="@+id/nnf_item_container"
-    android:layout_width="match_parent"
-    android:layout_height="?android:listPreferredItemHeight"
-    android:background="?selectableItemBackground"
-    android:focusable="true"
-    android:minHeight="?android:listPreferredItemHeight"
-    android:nextFocusLeft="@+id/nnf_button_cancel"
-    android:nextFocusRight="@+id/nnf_button_ok"
-    android:orientation="horizontal">
-
-    <ImageView
-        android:id="@+id/item_icon"
-        android:layout_width="?android:listPreferredItemHeight"
-        android:layout_height="?android:listPreferredItemHeight"
-        android:adjustViewBounds="true"
-        android:scaleType="center"
-        android:src="@drawable/nnf_ic_file_folder"
-        android:visibility="visible"
-        app:tint="?attr/colorAccent"
-        tools:ignore="ContentDescription" />
-
-    <TextView
-        android:id="@android:id/text1"
-        android:layout_width="0dp"
-        android:layout_height="match_parent"
-        android:layout_weight="1"
-        android:ellipsize="end"
-        android:gravity="center_vertical"
-        android:maxLines="1"
-        android:padding="8dp"
-        android:singleLine="true"
-        android:text="@string/nnf_name" />
-
-</LinearLayout>

+ 1 - 0
app/src/main/res/values/strings.xml

@@ -665,6 +665,7 @@
     <!-- File Picker Titles -->
     <string name="file_select_cover">Select cover image</string>
     <string name="file_select_backup">Select backup file</string>
+    <string name="file_picker_error">No file picker app found</string>
 
     <!--UpdateCheck-->
     <string name="update_check_confirm">Download</string>

+ 0 - 18
app/src/main/res/values/styles.xml

@@ -325,22 +325,4 @@
         <item name="android:textSize">15sp</item>
     </style>
 
-
-    <!--===-->
-    <!--OLD-->
-    <!--===-->
-    <style name="FilePickerTheme" parent="NNF_BaseTheme.Light">
-        <item name="colorPrimary">@color/colorPrimary</item>
-        <item name="colorPrimaryDark">@color/colorPrimary</item>
-        <item name="colorAccent">@color/colorAccentLight</item>
-        <item name="colorButtonNormal">@color/colorPrimary</item>
-        <item name="android:textSize">14sp</item>
-
-        <item name="alertDialogTheme">@style/FilePickerAlertDialogTheme</item>
-
-        <item name="nnf_toolbarTheme">@style/ThemeOverlay.AppCompat.Dark.ActionBar</item>
-    </style>
-
-    <style name="FilePickerAlertDialogTheme" parent="Theme.MaterialComponents.Light.Dialog.Alert" />
-
 </resources>