diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
index f14f31dce..6538db8cc 100755
--- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
+++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
@@ -187,6 +187,8 @@ object PreferenceKeys {
const val defaultChapterDisplayByNameOrNumber = "default_chapter_display_by_name_or_number"
+ const val incognitoMode = "incognito_mode"
+
fun trackUsername(syncId: Int) = "pref_mangasync_username_$syncId"
fun trackPassword(syncId: Int) = "pref_mangasync_password_$syncId"
diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
index d35ddba03..64d9b4ed1 100755
--- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
+++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
@@ -275,6 +275,8 @@ class PreferencesHelper(val context: Context) {
fun sortChapterByAscendingOrDescending() = prefs.getInt(Keys.defaultChapterSortByAscendingOrDescending, Manga.SORT_DESC)
+ fun incognitoMode() = prefs.getBoolean(Keys.incognitoMode, false)
+
fun setChapterSettingsDefault(manga: Manga) {
prefs.edit {
putInt(Keys.defaultChapterFilterByRead, manga.readFilter)
diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
index 4e0c56f17..b55df1a75 100644
--- a/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
+++ b/app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
@@ -23,6 +23,7 @@ import eu.kanade.tachiyomi.util.preference.preferenceCategory
import eu.kanade.tachiyomi.util.preference.summaryRes
import eu.kanade.tachiyomi.util.preference.switchPreference
import eu.kanade.tachiyomi.util.preference.titleRes
+import eu.kanade.tachiyomi.util.preference.defaultValue
import eu.kanade.tachiyomi.util.system.getResourceColor
import eu.kanade.tachiyomi.util.system.openInBrowser
import exh.ui.batchadd.BatchAddController
@@ -54,6 +55,15 @@ class MoreController :
iconTint = tintColor
}
+ switchPreference {
+ key = Keys.incognitoMode
+ summaryRes = R.string.pref_incognito_mode_summary
+ titleRes = R.string.pref_incognito_mode
+ iconRes = R.drawable.ic_glasses_black_24dp
+ iconTint = tintColor
+ defaultValue = false
+ }
+
preferenceCategory {
preference {
titleRes = R.string.label_download_queue
diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
index 4a1366b41..887e2a489 100644
--- a/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
+++ b/app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
@@ -470,11 +470,13 @@ class ReaderPresenter(
* Saves this [chapter] last read history.
*/
private fun saveChapterHistory(chapter: ReaderChapter) {
- val history = History.create(chapter.chapter).apply { last_read = Date().time }
- db.updateHistoryLastRead(history).asRxCompletable()
- .onErrorComplete()
- .subscribeOn(Schedulers.io())
- .subscribe()
+ if (!preferences.incognitoMode()) {
+ val history = History.create(chapter.chapter).apply { last_read = Date().time }
+ db.updateHistoryLastRead(history).asRxCompletable()
+ .onErrorComplete()
+ .subscribeOn(Schedulers.io())
+ .subscribe()
+ }
}
/**
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 0c854f3f2..bee1b97c3 100755
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -319,6 +319,8 @@
15%
20%
25%
+ Incognito mode
+ Disables recording history in History tab
Download location