Turned NyaHentai multisrc into single source (#10424)
* Remove Files * Remove more files * Add nyahentai as normal source
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.bughentaien
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class BugHentaiEnFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
BugHentaiEnEN(),
|
||||
BugHentaiEnJA(),
|
||||
BugHentaiEnZH(),
|
||||
BugHentaiEnALL(),
|
||||
)
|
||||
}
|
||||
class BugHentaiEnEN : NyaHentai("BugHentai (en)", "https://en.bughentai.com", "en")
|
||||
class BugHentaiEnJA : NyaHentai("BugHentai (en)", "https://en.bughentai.com", "ja")
|
||||
class BugHentaiEnZH : NyaHentai("BugHentai (en)", "https://en.bughentai.com", "zh")
|
||||
class BugHentaiEnALL : NyaHentai("BugHentai (en)", "https://en.bughentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.bughentaija
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class BugHentaiJaFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
BugHentaiJaEN(),
|
||||
BugHentaiJaJA(),
|
||||
BugHentaiJaZH(),
|
||||
BugHentaiJaALL(),
|
||||
)
|
||||
}
|
||||
class BugHentaiJaEN : NyaHentai("BugHentai (ja)", "https://ja.bughentai.com", "en")
|
||||
class BugHentaiJaJA : NyaHentai("BugHentai (ja)", "https://ja.bughentai.com", "ja")
|
||||
class BugHentaiJaZH : NyaHentai("BugHentai (ja)", "https://ja.bughentai.com", "zh")
|
||||
class BugHentaiJaALL : NyaHentai("BugHentai (ja)", "https://ja.bughentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.cathentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class CatHentaiFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
CatHentaiEN(),
|
||||
CatHentaiJA(),
|
||||
CatHentaiZH(),
|
||||
CatHentaiALL(),
|
||||
)
|
||||
}
|
||||
class CatHentaiEN : NyaHentai("CatHentai", "https://cathentai.com", "en")
|
||||
class CatHentaiJA : NyaHentai("CatHentai", "https://cathentai.com", "ja")
|
||||
class CatHentaiZH : NyaHentai("CatHentai", "https://cathentai.com", "zh")
|
||||
class CatHentaiALL : NyaHentai("CatHentai", "https://cathentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.ddhentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class DDHentaiFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
DDHentaiEN(),
|
||||
DDHentaiJA(),
|
||||
DDHentaiZH(),
|
||||
DDHentaiALL(),
|
||||
)
|
||||
}
|
||||
class DDHentaiEN : NyaHentai("DDHentai", "https://zh.ddhentai.com", "en")
|
||||
class DDHentaiJA : NyaHentai("DDHentai", "https://zh.ddhentai.com", "ja")
|
||||
class DDHentaiZH : NyaHentai("DDHentai", "https://zh.ddhentai.com", "zh")
|
||||
class DDHentaiALL : NyaHentai("DDHentai", "https://zh.ddhentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.ddhentaia
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class DDHentaiAFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
DDHentaiAEN(),
|
||||
DDHentaiAJA(),
|
||||
DDHentaiAZH(),
|
||||
DDHentaiAALL(),
|
||||
)
|
||||
}
|
||||
class DDHentaiAEN : NyaHentai("DDHentai A", "https://zha.ddhentai.com", "en")
|
||||
class DDHentaiAJA : NyaHentai("DDHentai A", "https://zha.ddhentai.com", "ja")
|
||||
class DDHentaiAZH : NyaHentai("DDHentai A", "https://zha.ddhentai.com", "zh")
|
||||
class DDHentaiAALL : NyaHentai("DDHentai A", "https://zha.ddhentai.com", "all")
|
|
@ -1,23 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="eu.kanade.tachiyomi.extension">
|
||||
|
||||
<application>
|
||||
<activity
|
||||
android:name="eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentaiUrlActivity"
|
||||
android:excludeFromRecents="true"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.NoDisplay">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data
|
||||
android:host="*.${SOURCEHOST}"
|
||||
android:pathPattern="/g/..*"
|
||||
android:scheme="${SOURCESCHEME}" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 8.0 KiB |
Before Width: | Height: | Size: 28 KiB |
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.doghentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class DogHentaiFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
DogHentaiEN(),
|
||||
DogHentaiJA(),
|
||||
DogHentaiZH(),
|
||||
DogHentaiALL(),
|
||||
)
|
||||
}
|
||||
class DogHentaiEN : NyaHentai("DogHentai", "https://zhb.doghentai.com", "en")
|
||||
class DogHentaiJA : NyaHentai("DogHentai", "https://zhb.doghentai.com", "ja")
|
||||
class DogHentaiZH : NyaHentai("DogHentai", "https://zhb.doghentai.com", "zh")
|
||||
class DogHentaiALL : NyaHentai("DogHentai", "https://zhb.doghentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.foxhentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class FoxHentaiFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
FoxHentaiEN(),
|
||||
FoxHentaiJA(),
|
||||
FoxHentaiZH(),
|
||||
FoxHentaiALL(),
|
||||
)
|
||||
}
|
||||
class FoxHentaiEN : NyaHentai("FoxHentai", "https://ja.foxhentai.com", "en")
|
||||
class FoxHentaiJA : NyaHentai("FoxHentai", "https://ja.foxhentai.com", "ja")
|
||||
class FoxHentaiZH : NyaHentai("FoxHentai", "https://ja.foxhentai.com", "zh")
|
||||
class FoxHentaiALL : NyaHentai("FoxHentai", "https://ja.foxhentai.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaiclub
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiClubFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiClubEN(),
|
||||
NyaHentaiClubJA(),
|
||||
NyaHentaiClubZH(),
|
||||
NyaHentaiClubALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiClubEN : NyaHentai("NyaHentai.club", "https://nyahentai.club", "en")
|
||||
class NyaHentaiClubJA : NyaHentai("NyaHentai.club", "https://nyahentai.club", "ja")
|
||||
class NyaHentaiClubZH : NyaHentai("NyaHentai.club", "https://nyahentai.club", "zh")
|
||||
class NyaHentaiClubALL : NyaHentai("NyaHentai.club", "https://nyahentai.club", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaico
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiCoFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiCoEN(),
|
||||
NyaHentaiCoJA(),
|
||||
NyaHentaiCoZH(),
|
||||
NyaHentaiCoALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiCoEN : NyaHentai("NyaHentai.co", "https://nyahentai.co", "en")
|
||||
class NyaHentaiCoJA : NyaHentai("NyaHentai.co", "https://nyahentai.co", "ja")
|
||||
class NyaHentaiCoZH : NyaHentai("NyaHentai.co", "https://nyahentai.co", "zh")
|
||||
class NyaHentaiCoALL : NyaHentai("NyaHentai.co", "https://nyahentai.co", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaifun
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiFunFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiFunEN(),
|
||||
NyaHentaiFunJA(),
|
||||
NyaHentaiFunZH(),
|
||||
NyaHentaiFunALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiFunEN : NyaHentai("NyaHentai.fun", "https://nyahentai.fun", "en")
|
||||
class NyaHentaiFunJA : NyaHentai("NyaHentai.fun", "https://nyahentai.fun", "ja")
|
||||
class NyaHentaiFunZH : NyaHentai("NyaHentai.fun", "https://nyahentai.fun", "zh")
|
||||
class NyaHentaiFunALL : NyaHentai("NyaHentai.fun", "https://nyahentai.fun", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaime
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiMeFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiMeEN(),
|
||||
NyaHentaiMeJA(),
|
||||
NyaHentaiMeZH(),
|
||||
NyaHentaiMeALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiMeEN : NyaHentai("NyaHentai.me", "https://ja.nyahentai.me", "en")
|
||||
class NyaHentaiMeJA : NyaHentai("NyaHentai.me", "https://ja.nyahentai.me", "ja")
|
||||
class NyaHentaiMeZH : NyaHentai("NyaHentai.me", "https://ja.nyahentai.me", "zh")
|
||||
class NyaHentaiMeALL : NyaHentai("NyaHentai.me", "https://ja.nyahentai.me", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaisite
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiSiteFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiSiteEN(),
|
||||
NyaHentaiSiteJA(),
|
||||
NyaHentaiSiteZH(),
|
||||
NyaHentaiSiteALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiSiteEN : NyaHentai("NyaHentai.site", "https://nyahentai.site", "en")
|
||||
class NyaHentaiSiteJA : NyaHentai("NyaHentai.site", "https://nyahentai.site", "ja")
|
||||
class NyaHentaiSiteZH : NyaHentai("NyaHentai.site", "https://nyahentai.site", "zh")
|
||||
class NyaHentaiSiteALL : NyaHentai("NyaHentai.site", "https://nyahentai.site", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaithreecom
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiThreeComFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiThreeComEN(),
|
||||
NyaHentaiThreeComJA(),
|
||||
NyaHentaiThreeComZH(),
|
||||
NyaHentaiThreeComALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiThreeComEN : NyaHentai("NyaHentai3.com", "https://nyahentai3.com", "en")
|
||||
class NyaHentaiThreeComJA : NyaHentai("NyaHentai3.com", "https://nyahentai3.com", "ja")
|
||||
class NyaHentaiThreeComZH : NyaHentai("NyaHentai3.com", "https://nyahentai3.com", "zh")
|
||||
class NyaHentaiThreeComALL : NyaHentai("NyaHentai3.com", "https://nyahentai3.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentaitwocom
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class NyaHentaiTwoComFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
NyaHentaiTwoComEN(),
|
||||
NyaHentaiTwoComJA(),
|
||||
NyaHentaiTwoComZH(),
|
||||
NyaHentaiTwoComALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiTwoComEN : NyaHentai("NyaHentai2.com", "https://nyahentai2.com", "en")
|
||||
class NyaHentaiTwoComJA : NyaHentai("NyaHentai2.com", "https://nyahentai2.com", "ja")
|
||||
class NyaHentaiTwoComZH : NyaHentai("NyaHentai2.com", "https://nyahentai2.com", "zh")
|
||||
class NyaHentaiTwoComALL : NyaHentai("NyaHentai2.com", "https://nyahentai2.com", "all")
|
|
@ -1,18 +0,0 @@
|
|||
package eu.kanade.tachiyomi.extension.all.qqhentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
class QQHentaiFactory : SourceFactory {
|
||||
override fun createSources(): List<Source> = listOf(
|
||||
QQHentaiEN(),
|
||||
QQHentaiJA(),
|
||||
QQHentaiZH(),
|
||||
QQHentaiALL(),
|
||||
)
|
||||
}
|
||||
class QQHentaiEN : NyaHentai("QQHentai", "https://zhb.qqhentai.com", "en")
|
||||
class QQHentaiJA : NyaHentai("QQHentai", "https://zhb.qqhentai.com", "ja")
|
||||
class QQHentaiZH : NyaHentai("QQHentai", "https://zhb.qqhentai.com", "zh")
|
||||
class QQHentaiALL : NyaHentai("QQHentai", "https://zhb.qqhentai.com", "all")
|
|
@ -1,39 +0,0 @@
|
|||
package eu.kanade.tachiyomi.multisrc.nyahentai
|
||||
|
||||
import generator.ThemeSourceData.MultiLang
|
||||
import generator.ThemeSourceGenerator
|
||||
|
||||
class NyaHentaiGenerator : ThemeSourceGenerator {
|
||||
|
||||
override val themePkg = "nyahentai"
|
||||
|
||||
override val themeClass = "NyaHentai"
|
||||
|
||||
override val baseVersionCode: Int = 2
|
||||
|
||||
override val sources = listOf(
|
||||
MultiLang("NyaHentai", "https://nyahentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiFactory", overrideVersionCode = 3),
|
||||
MultiLang("NyaHentai.site", "https://nyahentai.site", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiSiteFactory", pkgName = "nyahentaisite"),
|
||||
MultiLang("NyaHentai.me", "https://ja.nyahentai.me", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiMeFactory", pkgName = "nyahentaime"),
|
||||
MultiLang("NyaHentai.fun", "https://nyahentai.fun", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiFunFactory", pkgName = "nyahentaifun"),
|
||||
MultiLang("NyaHentai.club", "https://nyahentai.club", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiClubFactory", pkgName = "nyahentaiclub"),
|
||||
MultiLang("NyaHentai2.com", "https://nyahentai2.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiTwoComFactory", pkgName = "nyahentaitwocom"),
|
||||
MultiLang("NyaHentai.co", "https://nyahentai.co", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiCoFactory", pkgName = "nyahentaico"),
|
||||
MultiLang("NyaHentai3.com", "https://nyahentai3.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "NyaHentaiThreeComFactory", pkgName = "nyahentaithreecom"),
|
||||
MultiLang("CatHentai", "https://cathentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "CatHentaiFactory"),
|
||||
MultiLang("DogHentai", "https://zhb.doghentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "DogHentaiFactory"),
|
||||
MultiLang("BugHentai (ja)", "https://ja.bughentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "BugHentaiJaFactory", pkgName = "bughentaija"),
|
||||
MultiLang("BugHentai (en)", "https://en.bughentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "BugHentaiEnFactory", pkgName = "bughentaien"),
|
||||
MultiLang("QQHentai", "https://zhb.qqhentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "QQHentaiFactory"),
|
||||
MultiLang("FoxHentai", "https://ja.foxhentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "FoxHentaiFactory"),
|
||||
MultiLang("DDHentai", "https://zh.ddhentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "DDHentaiFactory"),
|
||||
MultiLang("DDHentai A", "https://zha.ddhentai.com", listOf("en", "ja", "zh", "all"), isNsfw = true, className = "DDHentaiAFactory"),
|
||||
)
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
fun main(args: Array<String>) {
|
||||
NyaHentaiGenerator().createAll()
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="eu.kanade.tachiyomi.extension">
|
||||
|
||||
<application>
|
||||
<activity
|
||||
android:name=".all.nyahentai.NyaHentaiUrlActivity"
|
||||
android:excludeFromRecents="true"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.NoDisplay">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
|
||||
<data android:host="*.nyahentai.com" />
|
||||
<data android:host="nyahentai.com" />
|
||||
<data android:host="*.nyahentai.site" />
|
||||
<data android:host="nyahentai.site" />
|
||||
<data android:host="*.nyahentai.me" />
|
||||
<data android:host="nyahentai.me" />
|
||||
<data android:host="*.nyahentai.fun" />
|
||||
<data android:host="nyahentai.fun" />
|
||||
<data android:host="*.nyahentai.club" />
|
||||
<data android:host="nyahentai.club" />
|
||||
<data android:host="*.nyahentai2.com" />
|
||||
<data android:host="nyahentai2.com" />
|
||||
<data android:host="*.nyahentai.co" />
|
||||
<data android:host="nyahentai.co" />
|
||||
<data android:host="*.nyahentai3.com" />
|
||||
<data android:host="nyahentai3.com" />
|
||||
<data android:host="*.cathentai.com" />
|
||||
<data android:host="cathentai.com" />
|
||||
<data android:host="*.doghentai.com" />
|
||||
<data android:host="doghentai.com" />
|
||||
<data android:host="*.bughentai.com" />
|
||||
<data android:host="bughentai.com" />
|
||||
<data android:host="*.qqhentai.com" />
|
||||
<data android:host="qqhentai.com" />
|
||||
<data android:host="*.foxhentai.com" />
|
||||
<data android:host="foxhentai.com" />
|
||||
<data android:host="*.ddhentai.com" />
|
||||
<data android:host="ddhentai.com" />
|
||||
|
||||
<data
|
||||
android:pathPattern="/g/..*"
|
||||
android:scheme="https" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
|
@ -0,0 +1,12 @@
|
|||
apply plugin: 'com.android.application'
|
||||
apply plugin: 'kotlin-android'
|
||||
|
||||
ext {
|
||||
extName = 'NyaHentai'
|
||||
pkgNameSuffix = 'all.nyahentai'
|
||||
extClass = '.NyaHentaiFactory'
|
||||
extVersionCode = 6
|
||||
isNsfw = true
|
||||
}
|
||||
|
||||
apply from: "$rootDir/common.gradle"
|
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 9.9 KiB |
After Width: | Height: | Size: 42 KiB |
|
@ -1,7 +1,12 @@
|
|||
package eu.kanade.tachiyomi.multisrc.nyahentai
|
||||
package eu.kanade.tachiyomi.extension.all.nyahentai
|
||||
|
||||
import android.app.Application
|
||||
import android.content.SharedPreferences
|
||||
import androidx.preference.ListPreference
|
||||
import androidx.preference.PreferenceScreen
|
||||
import eu.kanade.tachiyomi.network.GET
|
||||
import eu.kanade.tachiyomi.network.asObservableSuccess
|
||||
import eu.kanade.tachiyomi.source.ConfigurableSource
|
||||
import eu.kanade.tachiyomi.source.model.Filter
|
||||
import eu.kanade.tachiyomi.source.model.FilterList
|
||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||
|
@ -16,13 +21,48 @@ import okhttp3.Response
|
|||
import org.jsoup.nodes.Document
|
||||
import org.jsoup.nodes.Element
|
||||
import rx.Observable
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
|
||||
abstract class NyaHentai(
|
||||
override val name: String,
|
||||
override val baseUrl: String,
|
||||
override val lang: String
|
||||
) : ParsedHttpSource() {
|
||||
) : ConfigurableSource, ParsedHttpSource() {
|
||||
|
||||
private val preferences: SharedPreferences by lazy {
|
||||
Injekt.get<Application>().getSharedPreferences("source_$id", 0x0000)
|
||||
}
|
||||
|
||||
override val name = "NyaHentai"
|
||||
override val baseUrl: String = getMirrorPref()!!
|
||||
|
||||
override fun setupPreferenceScreen(screen: PreferenceScreen) {
|
||||
val mirrorPref = ListPreference(screen.context).apply {
|
||||
key = "${MIRROR_PREF_KEY}_$lang"
|
||||
title = MIRROR_PREF_TITLE
|
||||
entries = MIRROR_PREF_ENTRIES
|
||||
entryValues = MIRROR_PREF_ENTRY_VALUES
|
||||
setDefaultValue(MIRROR_PREF_DEFAULT_VALUE)
|
||||
summary = "%s"
|
||||
|
||||
setOnPreferenceChangeListener { _, newValue ->
|
||||
val selected = newValue as String
|
||||
val index = findIndexOfValue(selected)
|
||||
val entry = entryValues[index] as String
|
||||
preferences.edit().putString("${MIRROR_PREF_KEY}_$lang", entry).commit()
|
||||
}
|
||||
}
|
||||
screen.addPreference(mirrorPref)
|
||||
}
|
||||
|
||||
private fun getMirrorPref(): String? = preferences.getString("${MIRROR_PREF_KEY}_$lang", MIRROR_PREF_DEFAULT_VALUE)
|
||||
|
||||
companion object {
|
||||
private const val MIRROR_PREF_KEY = "MIRROR"
|
||||
private const val MIRROR_PREF_TITLE = "Mirror"
|
||||
private val MIRROR_PREF_ENTRIES = arrayOf("nyahentai.com", "nyahentai.site", "ja.nyahentai.me", "nyahentai.fun", "nyahentai.club", "nyahentai2.com", "nyahentai.co", "nyahentai3.com", "cathentai.com", "zhb.doghentai.com", "ja.bughentai.com", "en.bughentai.com", "zhb.qqhentai.com", "ja.foxhentai.com", "zh.ddhentai.com", "zha.ddhentai.com")
|
||||
private val MIRROR_PREF_ENTRY_VALUES = arrayOf("https://nyahentai.com", "https://nyahentai.site", "https://ja.nyahentai.me", "https://nyahentai.fun", "https://nyahentai.club", "https://nyahentai2.com", "https://nyahentai.co", "https://nyahentai3.com", "https://cathentai.com", "https://zhb.doghentai.com", "https://ja.bughentai.com", "https://en.bughentai.com", "https://zhb.qqhentai.com", "https://ja.foxhentai.com", "https://zh.ddhentai.com", "https://zha.ddhentai.com")
|
||||
private val MIRROR_PREF_DEFAULT_VALUE = MIRROR_PREF_ENTRY_VALUES[0]
|
||||
|
||||
private const val NOT_FOUND_MESSAGE = "If you used a filter, check if the keyword actually exists."
|
||||
private const val Filter_SEARCH_MESSAGE = "NOTE: Ignored if using text search!"
|
||||
const val PREFIX_ID_SEARCH = "id:"
|
|
@ -1,6 +1,5 @@
|
|||
package eu.kanade.tachiyomi.extension.all.nyahentai
|
||||
|
||||
import eu.kanade.tachiyomi.multisrc.nyahentai.NyaHentai
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceFactory
|
||||
|
||||
|
@ -12,9 +11,16 @@ class NyaHentaiFactory : SourceFactory {
|
|||
NyaHentaiALL(),
|
||||
)
|
||||
}
|
||||
class NyaHentaiEN : NyaHentai("NyaHentai", "https://nyahentai.com", "en") {
|
||||
|
||||
class NyaHentaiEN : NyaHentai("en") {
|
||||
override val id = 9170089554867447899
|
||||
}
|
||||
class NyaHentaiJA : NyaHentai("NyaHentai", "https://nyahentai.com", "ja")
|
||||
class NyaHentaiZH : NyaHentai("NyaHentai", "https://nyahentai.com", "zh")
|
||||
class NyaHentaiALL : NyaHentai("NyaHentai", "https://nyahentai.com", "all")
|
||||
class NyaHentaiJA : NyaHentai("ja") {
|
||||
override val id = 770924441007081408
|
||||
}
|
||||
class NyaHentaiZH : NyaHentai("zh") {
|
||||
override val id = 6864783742637475493
|
||||
}
|
||||
class NyaHentaiALL : NyaHentai("all") {
|
||||
override val id = 7651943104270359588
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
package eu.kanade.tachiyomi.multisrc.nyahentai
|
||||
package eu.kanade.tachiyomi.extension.all.nyahentai
|
||||
|
||||
import android.app.Activity
|
||||
import android.content.ActivityNotFoundException
|