pull/71/head
kunfei 6 years ago
parent db38c6be0a
commit df70ca8f56
  1. 46
      app/src/main/java/io/legado/app/ui/widget/font/FontSelectDialog.kt

@ -88,16 +88,14 @@ class FontSelectDialog : DialogFragment(),
override fun onMenuItemClick(item: MenuItem?): Boolean { override fun onMenuItemClick(item: MenuItem?): Boolean {
when (item?.itemId) { when (item?.itemId) {
R.id.menu_default -> { R.id.menu_default -> {
val pf = parentFragment parentFragment?.let {
if (pf is CallBack) { if (it is CallBack && it.curFontPath != "") {
if ("" != pf.curFontPath) { it.selectFile("")
pf.selectFile("")
} }
} }
val activity = activity activity?.let {
if (activity is CallBack) { if (it is CallBack && it.curFontPath != "") {
if ("" != activity.curFontPath) { it.selectFile("")
activity.selectFile("")
} }
} }
dismiss() dismiss()
@ -131,7 +129,7 @@ class FontSelectDialog : DialogFragment(),
@SuppressLint("DefaultLocale") @SuppressLint("DefaultLocale")
private fun getFontFiles(uri: Uri) { private fun getFontFiles(uri: Uri) {
launch(IO) { launch(IO) {
DocumentFile.fromTreeUri(requireContext(), uri)?.listFiles()?.forEach { file -> DocumentFile.fromTreeUri(App.INSTANCE, uri)?.listFiles()?.forEach { file ->
if (file.name?.toLowerCase()?.matches(".*\\.[ot]tf".toRegex()) == true) { if (file.name?.toLowerCase()?.matches(".*\\.[ot]tf".toRegex()) == true) {
DocumentUtils.readBytes(App.INSTANCE, file.uri)?.let { DocumentUtils.readBytes(App.INSTANCE, file.uri)?.let {
FileHelp.getFile(fontFolder + file.name).writeBytes(it) FileHelp.getFile(fontFolder + file.name).writeBytes(it)
@ -169,17 +167,15 @@ class FontSelectDialog : DialogFragment(),
} }
override fun onClick(file: File) { override fun onClick(file: File) {
file.absolutePath.let { file.absolutePath.let { path ->
val pf = parentFragment parentFragment?.let {
if (pf is CallBack) { if (it is CallBack && it.curFontPath != path) {
if (it != pf.curFontPath) { it.selectFile(path)
pf.selectFile(it)
} }
} }
val activity = activity activity?.let {
if (activity is CallBack) { if (it is CallBack && it.curFontPath != path) {
if (it != activity.curFontPath) { it.selectFile(path)
activity.selectFile(it)
} }
} }
} }
@ -187,13 +183,15 @@ class FontSelectDialog : DialogFragment(),
} }
override fun curFilePath(): String { override fun curFilePath(): String {
val pf = parentFragment parentFragment?.let {
if (pf is CallBack) { if (it is CallBack) {
return pf.curFontPath return it.curFontPath
}
} }
val activity = activity activity?.let {
if (activity is CallBack) { if (it is CallBack) {
return activity.curFontPath return it.curFontPath
}
} }
return "" return ""
} }

Loading…
Cancel
Save