-
-
Notifications
You must be signed in to change notification settings - Fork 8
/
InfoActivity.kt
75 lines (62 loc) · 2.88 KB
/
InfoActivity.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/***************************************************************************************************
* Copyright © All Contributors. See LICENSE and AUTHORS in the root directory for details.
**************************************************************************************************/
package at.bitfire.icsdroid.ui
import android.content.ActivityNotFoundException
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.util.Log
import android.view.Menu
import android.view.MenuItem
import androidx.appcompat.app.AppCompatActivity
import at.bitfire.icsdroid.BuildConfig
import at.bitfire.icsdroid.Constants
import at.bitfire.icsdroid.R
import com.mikepenz.aboutlibraries.Libs
import com.mikepenz.aboutlibraries.LibsBuilder
class InfoActivity: AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (savedInstanceState == null) {
val builder = LibsBuilder()
.withAboutIconShown(true)
.withAboutAppName(getString(R.string.app_name))
.withAboutDescription(getString(R.string.app_info_description))
.withAboutVersionShownName(true)
.withAboutVersionString(getString(R.string.app_info_version, BuildConfig.VERSION_NAME, BuildConfig.FLAVOR))
.withAboutSpecial1(getString(R.string.app_info_gplv3))
.withAboutSpecial1Description(getString(R.string.app_info_gplv3_note))
.withLicenseShown(true)
.withFields(R.string::class.java.fields)
.withLibraryModification("org_brotli__dec", Libs.LibraryFields.LIBRARY_NAME, "Brotli")
.withLibraryModification("org_brotli__dec", Libs.LibraryFields.AUTHOR_NAME, "Google")
if (BuildConfig.FLAVOR != "gplay") {
builder
.withAboutSpecial2(getString(R.string.app_info_donate))
.withAboutSpecial2Description(getString(R.string.donate_message))
}
supportFragmentManager.beginTransaction()
.replace(android.R.id.content, builder.supportFragment())
.commit()
}
}
override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.app_info_activity, menu)
return true
}
fun showWebSite(item: MenuItem) {
launchUri(Uri.parse("https://icsx5.bitfire.at/?pk_campaign=icsx5-app&pk_kwd=info-activity"))
}
fun showTwitter(item: MenuItem) {
launchUri(Uri.parse("https://twitter.com/icsx5app"))
}
private fun launchUri(uri: Uri) {
val intent = Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/icsx5app"))
try {
startActivity(intent)
} catch (e: ActivityNotFoundException) {
Log.w(Constants.TAG, "No browser installed")
}
}
}