Update crash activity

This commit is contained in:
Koitharu
2020-11-03 17:39:00 +02:00
parent 2772f0b3dd
commit 53542f3f86
6 changed files with 91 additions and 30 deletions

View File

@@ -1,12 +1,17 @@
package org.koitharu.kotatsu.ui.utils
import android.app.Activity
import android.content.ActivityNotFoundException
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import android.view.View
import kotlinx.android.synthetic.main.activity_crash.*
import org.koitharu.kotatsu.R
import org.koitharu.kotatsu.ui.list.MainActivity
import org.koitharu.kotatsu.utils.ShareHelper
class CrashActivity : Activity(), View.OnClickListener {
@@ -16,10 +21,26 @@ class CrashActivity : Activity(), View.OnClickListener {
textView.text = intent.getStringExtra(Intent.EXTRA_TEXT)
button_close.setOnClickListener(this)
button_restart.setOnClickListener(this)
button_report.setOnClickListener(this)
}
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
menuInflater.inflate(R.menu.opt_crash, menu)
return super.onCreateOptionsMenu(menu)
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.itemId) {
R.id.action_share -> {
ShareHelper.shareText(this, textView.text?.toString() ?: return false)
}
else -> return super.onOptionsItemSelected(item)
}
return true
}
override fun onClick(v: View) {
when(v.id) {
when (v.id) {
R.id.button_close -> {
finish()
}
@@ -29,6 +50,14 @@ class CrashActivity : Activity(), View.OnClickListener {
startActivity(intent)
finish()
}
R.id.button_report -> {
val intent = Intent(Intent.ACTION_VIEW)
intent.data = Uri.parse("https://github.com/nv95/Kotatsu/issues")
try {
startActivity(Intent.createChooser(intent, getString(R.string.report_github)))
} catch (_: ActivityNotFoundException) {
}
}
}
}
}

View File

@@ -11,7 +11,6 @@ import java.io.File
object ShareHelper {
@JvmStatic
fun shareMangaLink(context: Context, manga: Manga) {
val intent = Intent(Intent.ACTION_SEND)
intent.type = "text/plain"
@@ -25,7 +24,6 @@ object ShareHelper {
context.startActivity(shareIntent)
}
@JvmStatic
fun shareCbz(context: Context, file: File) {
val uri = FileProvider.getUriForFile(context, "${BuildConfig.APPLICATION_ID}.files", file)
val intent = Intent(Intent.ACTION_SEND)
@@ -36,7 +34,6 @@ object ShareHelper {
context.startActivity(shareIntent)
}
@JvmStatic
fun shareImage(context: Context, uri: Uri) {
val intent = Intent(Intent.ACTION_SEND)
intent.setDataAndType(uri, context.contentResolver.getType(uri))
@@ -44,4 +41,12 @@ object ShareHelper {
val shareIntent = Intent.createChooser(intent, context.getString(R.string.share_image))
context.startActivity(shareIntent)
}
fun shareText(context: Context, text: String) {
val intent = Intent(Intent.ACTION_SEND)
intent.type = "text/plain"
intent.putExtra(Intent.EXTRA_TEXT, text)
val shareIntent = Intent.createChooser(intent, context.getString(R.string.share))
context.startActivity(shareIntent)
}
}