Buy Me a Coffee (#953)
* Update expired Discord link * Buy me a coffee * Refactor * move it down
This commit is contained in:
parent
aaa1d855ff
commit
757a86852c
8 changed files with 142 additions and 11 deletions
15
.github/FUNDING.yml
vendored
Normal file
15
.github/FUNDING.yml
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
# These are supported funding model platforms
|
||||||
|
|
||||||
|
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||||
|
patreon: # Replace with a single Patreon username
|
||||||
|
open_collective: # Replace with a single Open Collective username
|
||||||
|
ko_fi: # Replace with a single Ko-fi username
|
||||||
|
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||||
|
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||||
|
liberapay: # Replace with a single Liberapay username
|
||||||
|
issuehunt: # Replace with a single IssueHunt username
|
||||||
|
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
|
||||||
|
polar: # Replace with a single Polar username
|
||||||
|
buy_me_a_coffee: cuongtrantm
|
||||||
|
thanks_dev: # Replace with a single thanks.dev username
|
||||||
|
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
||||||
|
|
@ -60,7 +60,7 @@ representative at an online or offline event.
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
reported to the community moderators responsible for enforcement at
|
reported to the community moderators responsible for enforcement at
|
||||||
the [Discord server](https://discord.gg/Nft8MxpR).
|
the [Discord server](https://discord.gg/85jB7V5AJR).
|
||||||
All complaints will be reviewed and investigated promptly and fairly.
|
All complaints will be reviewed and investigated promptly and fairly.
|
||||||
|
|
||||||
All community moderators are obligated to respect the privacy and security of the
|
All community moderators are obligated to respect the privacy and security of the
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ Before you start, please note that the ability to use following technologies is
|
||||||
|
|
||||||
## Getting help
|
## Getting help
|
||||||
|
|
||||||
- Join [the Discord server](https://discord.gg/Nft8MxpR) for online help and to ask questions while developing.
|
- Join [the Discord server](https://discord.gg/85jB7V5AJR) for online help and to ask questions while developing.
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
|
|
||||||
|
|
|
||||||
19
README.md
19
README.md
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
*Requires Android 8.0 or higher.*
|
*Requires Android 8.0 or higher.*
|
||||||
|
|
||||||
[](https://discord.gg/Nft8MxpR)
|
[](https://discord.gg/85jB7V5AJR)
|
||||||
[](https://github.com/komikku-app/komikku/actions/workflows/build_push.yml)
|
[](https://github.com/komikku-app/komikku/actions/workflows/build_push.yml)
|
||||||
[](/LICENSE)
|
[](/LICENSE)
|
||||||
[](https://hosted.weblate.org/engage/komikku-app/)
|
[](https://hosted.weblate.org/engage/komikku-app/)
|
||||||
|
|
@ -19,6 +19,11 @@ A free and open source manga reader which is based off TachiyomiSY & Mihon/Tachi
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
<a href="https://www.buymeacoffee.com/cuongtrantm"><img src="https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=cuongtrantm&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff" alt="Buy me a coffee"/></a>
|
||||||
|
|
||||||
|
<div align="left">
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
### Komikku's unique features:
|
### Komikku's unique features:
|
||||||
|
|
@ -121,8 +126,10 @@ Pull requests are welcome. For major changes, please open an issue first to disc
|
||||||
|
|
||||||
<details><summary>Issues</summary>
|
<details><summary>Issues</summary>
|
||||||
|
|
||||||
|
[Website](https://komikku-app.github.io/)
|
||||||
|
|
||||||
1. **Before reporting a new issue, take a look at the [FAQ](https://mihon.app/docs/faq/general), the [changelog](https://github.com/komikku-app/komikku/releases) and the already opened [issues](https://github.com/komikku-app/komikku/issues).**
|
1. **Before reporting a new issue, take a look at the [FAQ](https://mihon.app/docs/faq/general), the [changelog](https://github.com/komikku-app/komikku/releases) and the already opened [issues](https://github.com/komikku-app/komikku/issues).**
|
||||||
2. If you are unsure, ask here: [](https://discord.gg/Nft8MxpR)
|
2. If you are unsure, ask here: [](https://discord.gg/85jB7V5AJR)
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
|
@ -164,16 +171,12 @@ Thank you to all the people who have contributed!
|
||||||
<img src="https://contrib.rocks/image?repo=komikku-app/komikku" alt="Komikku app contributors" title="Komikku app contributors" width="800"/>
|
<img src="https://contrib.rocks/image?repo=komikku-app/komikku" alt="Komikku app contributors" title="Komikku app contributors" width="800"/>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
### Disclaimer
|
### Disclaimer
|
||||||
|
|
||||||
The developer(s) of this application does not have any affiliation with the content providers available, and this application hosts zero content.
|
The developer(s) of this application does not have any affiliation with the content providers available, and this application hosts zero content.
|
||||||
|
|
||||||
## FAQ
|
|
||||||
|
|
||||||
* Komikku [website](https://komikku-app.github.io/) / [Discord](https://discord.gg/85jB7V5AJR)
|
|
||||||
|
|
||||||
* Mihon [website](https://mihon.app/) / [Discord](https://discord.gg/Nft8MxpR)
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Copyright 2015 Javier Tomás
|
Copyright 2015 Javier Tomás
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,10 @@ package eu.kanade.presentation.more
|
||||||
import androidx.compose.animation.graphics.res.animatedVectorResource
|
import androidx.compose.animation.graphics.res.animatedVectorResource
|
||||||
import androidx.compose.animation.graphics.res.rememberAnimatedVectorPainter
|
import androidx.compose.animation.graphics.res.rememberAnimatedVectorPainter
|
||||||
import androidx.compose.animation.graphics.vector.AnimatedImageVector
|
import androidx.compose.animation.graphics.vector.AnimatedImageVector
|
||||||
|
import androidx.compose.foundation.clickable
|
||||||
|
import androidx.compose.foundation.layout.Column
|
||||||
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
import androidx.compose.material.icons.automirrored.outlined.HelpOutline
|
import androidx.compose.material.icons.automirrored.outlined.HelpOutline
|
||||||
import androidx.compose.material.icons.automirrored.outlined.Label
|
import androidx.compose.material.icons.automirrored.outlined.Label
|
||||||
|
|
@ -16,13 +20,23 @@ import androidx.compose.material.icons.outlined.QueryStats
|
||||||
import androidx.compose.material.icons.outlined.Settings
|
import androidx.compose.material.icons.outlined.Settings
|
||||||
import androidx.compose.material.icons.outlined.Storage
|
import androidx.compose.material.icons.outlined.Storage
|
||||||
import androidx.compose.material3.HorizontalDivider
|
import androidx.compose.material3.HorizontalDivider
|
||||||
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.remember
|
import androidx.compose.runtime.remember
|
||||||
|
import androidx.compose.ui.Alignment
|
||||||
|
import androidx.compose.ui.Modifier
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
import androidx.compose.ui.graphics.vector.ImageVector
|
||||||
|
import androidx.compose.ui.graphics.vector.rememberVectorPainter
|
||||||
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.platform.LocalUriHandler
|
import androidx.compose.ui.platform.LocalUriHandler
|
||||||
|
import androidx.compose.ui.res.vectorResource
|
||||||
|
import androidx.compose.ui.unit.dp
|
||||||
import eu.kanade.presentation.more.settings.widget.SwitchPreferenceWidget
|
import eu.kanade.presentation.more.settings.widget.SwitchPreferenceWidget
|
||||||
import eu.kanade.presentation.more.settings.widget.TextPreferenceWidget
|
import eu.kanade.presentation.more.settings.widget.TextPreferenceWidget
|
||||||
import eu.kanade.tachiyomi.R
|
import eu.kanade.tachiyomi.R
|
||||||
import eu.kanade.tachiyomi.ui.more.DownloadQueueState
|
import eu.kanade.tachiyomi.ui.more.DownloadQueueState
|
||||||
|
import eu.kanade.tachiyomi.util.system.openInBrowser
|
||||||
import exh.pref.DelegateSourcePreferences
|
import exh.pref.DelegateSourcePreferences
|
||||||
import tachiyomi.core.common.Constants
|
import tachiyomi.core.common.Constants
|
||||||
import tachiyomi.domain.UnsortedPreferences
|
import tachiyomi.domain.UnsortedPreferences
|
||||||
|
|
@ -215,6 +229,32 @@ fun MoreScreen(
|
||||||
onPreferenceClick = { uriHandler.openUri(Constants.URL_HELP) },
|
onPreferenceClick = { uriHandler.openUri(Constants.URL_HELP) },
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
// KMK -->
|
||||||
|
item {
|
||||||
|
Sponsor()
|
||||||
|
}
|
||||||
|
// KMK <--
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// KMK -->
|
||||||
|
@Composable
|
||||||
|
fun Sponsor() {
|
||||||
|
val context = LocalContext.current
|
||||||
|
Column(
|
||||||
|
modifier = Modifier.fillMaxWidth()
|
||||||
|
.padding(16.dp),
|
||||||
|
horizontalAlignment = Alignment.CenterHorizontally,
|
||||||
|
) {
|
||||||
|
val painter = rememberVectorPainter(ImageVector.vectorResource(R.drawable.ic_bmc_button))
|
||||||
|
Icon(
|
||||||
|
painter = painter,
|
||||||
|
contentDescription = "Buy me a coffee",
|
||||||
|
tint = Color.Unspecified,
|
||||||
|
modifier = Modifier
|
||||||
|
.clickable { context.openInBrowser(Constants.URL_BUY_ME_A_COFFEE) },
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// KMK <--
|
||||||
|
|
|
||||||
|
|
@ -265,7 +265,7 @@ class AboutScreen : Screen() {
|
||||||
LinkIcon(
|
LinkIcon(
|
||||||
label = "Discord",
|
label = "Discord",
|
||||||
icon = CustomIcons.Discord,
|
icon = CustomIcons.Discord,
|
||||||
url = "https://discord.gg/Nft8MxpR",
|
url = "https://discord.gg/85jB7V5AJR",
|
||||||
)
|
)
|
||||||
// LinkIcon(
|
// LinkIcon(
|
||||||
// label = "X",
|
// label = "X",
|
||||||
|
|
|
||||||
71
app/src/main/res/drawable/ic_bmc_button.xml
Normal file
71
app/src/main/res/drawable/ic_bmc_button.xml
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -1,6 +1,8 @@
|
||||||
package tachiyomi.core.common
|
package tachiyomi.core.common
|
||||||
|
|
||||||
object Constants {
|
object Constants {
|
||||||
|
const val URL_BUY_ME_A_COFFEE = "https://buymeacoffee.com/cuongtrantm"
|
||||||
|
|
||||||
const val URL_HELP = "https://komikku-app.github.io/docs/guides/troubleshooting/"
|
const val URL_HELP = "https://komikku-app.github.io/docs/guides/troubleshooting/"
|
||||||
const val URL_HELP_UPCOMING = "https://komikku-app.github.io/docs/faq/updates/upcoming"
|
const val URL_HELP_UPCOMING = "https://komikku-app.github.io/docs/faq/updates/upcoming"
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue