diff --git a/app/src/debug/ic_launcher-playstore.png b/app/src/debug/ic_launcher-playstore.png
index 5793d373c6..90eb428527 100644
Binary files a/app/src/debug/ic_launcher-playstore.png and b/app/src/debug/ic_launcher-playstore.png differ
diff --git a/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
index 036d09bc5f..4df90c3c1e 100644
--- a/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
+++ b/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -2,4 +2,5 @@
+
\ No newline at end of file
diff --git a/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
index 036d09bc5f..4df90c3c1e 100644
--- a/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ b/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -2,4 +2,5 @@
+
\ No newline at end of file
diff --git a/app/src/debug/res/mipmap-hdpi/ic_launcher.webp b/app/src/debug/res/mipmap-hdpi/ic_launcher.webp
index 157a02acb1..a22eac67cc 100644
Binary files a/app/src/debug/res/mipmap-hdpi/ic_launcher.webp and b/app/src/debug/res/mipmap-hdpi/ic_launcher.webp differ
diff --git a/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp b/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp
index 4bd0b3b1ac..06f0725ca0 100644
Binary files a/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp and b/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp b/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..68e6d42403
Binary files /dev/null and b/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp
index 7c552a7737..1a76bacd91 100644
Binary files a/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp and b/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp differ
diff --git a/app/src/debug/res/mipmap-mdpi/ic_launcher.webp b/app/src/debug/res/mipmap-mdpi/ic_launcher.webp
index 5b4455e788..0895c17e6c 100644
Binary files a/app/src/debug/res/mipmap-mdpi/ic_launcher.webp and b/app/src/debug/res/mipmap-mdpi/ic_launcher.webp differ
diff --git a/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp b/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp
index 766102b540..33a4745f33 100644
Binary files a/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp and b/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp b/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..ff30d8aa4e
Binary files /dev/null and b/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp
index 0086b80cc7..dc6003add9 100644
Binary files a/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp and b/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp differ
diff --git a/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp b/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp
index 8c63998af7..0cd35fcc83 100644
Binary files a/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp and b/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp differ
diff --git a/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp b/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp
index 0efff14075..bc442540e8 100644
Binary files a/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp and b/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp b/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..88fa786b14
Binary files /dev/null and b/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp
index 1e6f023fe9..3e9d1916e2 100644
Binary files a/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp and b/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp differ
diff --git a/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp
index 8eca14026f..f2fe8d06b4 100644
Binary files a/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp and b/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp differ
diff --git a/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp
index 5724febdd9..f81d338879 100644
Binary files a/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp and b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..f0ed20d7db
Binary files /dev/null and b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp
index b684dcfdab..ddfc4eb05c 100644
Binary files a/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp and b/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp b/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..994027c13d
Binary files /dev/null and b/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png
index 5793d373c6..90eb428527 100644
Binary files a/app/src/main/ic_launcher-playstore.png and b/app/src/main/ic_launcher-playstore.png differ
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppSettings.kt b/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppSettings.kt
index 4f7bd95e7a..ba2a24e7a8 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppSettings.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppSettings.kt
@@ -82,7 +82,7 @@ class AppSettings @Inject constructor(@ApplicationContext context: Context) {
}
val isNavLabelsVisible: Boolean
- get() = prefs.getBoolean(KEY_NAV_LABELS, true)
+ get() = prefs.getBoolean(KEY_NAV_LABELS, false)
val isNavBarPinned: Boolean
get() = prefs.getBoolean(KEY_NAV_PINNED, false)
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppWidgetConfig.kt b/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppWidgetConfig.kt
index 6b5a962c46..c3191eeff7 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppWidgetConfig.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/core/prefs/AppWidgetConfig.kt
@@ -8,6 +8,7 @@ import androidx.core.content.edit
private const val CATEGORY_ID = "cat_id"
private const val BACKGROUND = "bg"
+private const val SOURCE_TYPE = "source_type"
class AppWidgetConfig(
context: Context,
cls: Class,
@@ -24,6 +25,10 @@ class AppWidgetConfig(
get() = prefs.getBoolean(BACKGROUND, Build.VERSION.SDK_INT >= Build.VERSION_CODES.S)
set(value) = prefs.edit { putBoolean(BACKGROUND, value) }
+ var sourceType : String
+ get() = prefs.getString(SOURCE_TYPE, "favourites") ?: "favourites"
+ set(value) = prefs.edit { putString(SOURCE_TYPE, value) }
+
fun clear() {
prefs.edit { clear() }
}
@@ -33,6 +38,7 @@ class AppWidgetConfig(
clear()
putLong(CATEGORY_ID, other.categoryId)
putBoolean(BACKGROUND, other.hasBackground)
+ putString(SOURCE_TYPE, other.sourceType)
}
}
}
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/details/ui/DetailsActivity.kt b/app/src/main/kotlin/io/github/landwarderer/futon/details/ui/DetailsActivity.kt
index 99d1b75be2..8435d0bd6c 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/details/ui/DetailsActivity.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/details/ui/DetailsActivity.kt
@@ -530,6 +530,7 @@ class DetailsActivity :
private fun loadCover(imageUrl: String?) {
viewBinding.imageViewCover.setImageAsync(imageUrl, viewModel.getMangaOrNull())
+ viewBinding.imageViewBlurBackground?.setImageAsync(imageUrl, viewModel.getMangaOrNull())
}
private fun String.withEstimatedTime(time: ReadingTime?): String {
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfConfigViewModel.kt b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfConfigViewModel.kt
index 3646df7343..996e942a16 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfConfigViewModel.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfConfigViewModel.kt
@@ -2,6 +2,7 @@ package io.github.landwarderer.futon.widget.shelf
import androidx.lifecycle.viewModelScope
import dagger.hilt.android.lifecycle.HiltViewModel
+import io.github.landwarderer.futon.backups.data.model.HistoryBackup
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
@@ -11,25 +12,30 @@ import kotlinx.coroutines.flow.stateIn
import kotlinx.coroutines.plus
import io.github.landwarderer.futon.core.ui.BaseViewModel
import io.github.landwarderer.futon.favourites.domain.FavouritesRepository
+import io.github.landwarderer.futon.history.data.HistoryRepository
import io.github.landwarderer.futon.widget.shelf.model.CategoryItem
import javax.inject.Inject
@HiltViewModel
class ShelfConfigViewModel @Inject constructor(
- favouritesRepository: FavouritesRepository,
+ favouritesRepository: FavouritesRepository,
+ private val historyRepository: HistoryRepository,
) : BaseViewModel() {
private val selectedCategoryId = MutableStateFlow(0L)
+ private val selectedSourceType = MutableStateFlow("favourites")
val content: StateFlow> = combine(
favouritesRepository.observeCategories(),
selectedCategoryId,
- ) { categories, selectedId ->
- val list = ArrayList(categories.size + 1)
- list += CategoryItem(0L, null, selectedId == 0L)
- categories.mapTo(list) {
- CategoryItem(it.id, it.title, selectedId == it.id)
- }
+ selectedSourceType,
+ ) { categories, selectedId, sourceType ->
+ val list = ArrayList(categories.size + 2)
+ list += CategoryItem(-1L, "Recent", sourceType == "recent")
+ list += CategoryItem(0L, null, selectedId == 0L && sourceType == "favorites")
+ categories.mapTo(list) {
+ CategoryItem(it.id, it.title, selectedId == it.id && sourceType == "favorites")
+ }
list
}.stateIn(viewModelScope + Dispatchers.IO, SharingStarted.Eagerly, emptyList())
@@ -37,5 +43,13 @@ class ShelfConfigViewModel @Inject constructor(
get() = selectedCategoryId.value
set(value) {
selectedCategoryId.value = value
+ selectedSourceType.value = "favourites"
}
+
+ val sourceType = selectedSourceType
+
+ fun selectRecent() {
+ selectedSourceType.value = "recent"
+ selectedCategoryId.value = 0L
+ }
}
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfListFactory.kt b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfListFactory.kt
index e38a8115cf..1190ae2e94 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfListFactory.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfListFactory.kt
@@ -21,12 +21,14 @@ import io.github.landwarderer.futon.core.ui.image.TrimTransformation
import io.github.landwarderer.futon.core.util.ext.getDrawableOrThrow
import io.github.landwarderer.futon.core.util.ext.mangaExtra
import io.github.landwarderer.futon.favourites.domain.FavouritesRepository
+import io.github.landwarderer.futon.history.data.HistoryRepository
import org.koitharu.kotatsu.parsers.model.Manga
import org.koitharu.kotatsu.parsers.util.replaceWith
class ShelfListFactory(
private val context: Context,
private val favouritesRepository: FavouritesRepository,
+ private val historyRepository: HistoryRepository,
private val coilLazy: Lazy,
private val settings: AppSettings,
widgetId: Int,
@@ -51,11 +53,16 @@ class ShelfListFactory(
override fun onDataSetChanged() {
val data = if (settings.appPassword.isNullOrEmpty()) {
runBlocking {
- val category = config.categoryId
- if (category == 0L) {
- favouritesRepository.getAllManga()
- } else {
- favouritesRepository.getManga(category)
+ when (config.sourceType) {
+ "recent" -> historyRepository.getList(0, 20)
+ else -> {
+ val category = config.categoryId
+ if (category == 0L) {
+ favouritesRepository.getAllManga()
+ } else {
+ favouritesRepository.getManga(category)
+ }
+ }
}
}
} else {
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetConfigActivity.kt b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetConfigActivity.kt
index cca0cc9c41..e219ed7b90 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetConfigActivity.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetConfigActivity.kt
@@ -48,7 +48,11 @@ class ShelfWidgetConfigActivity :
return
}
config = AppWidgetConfig(this, ShelfWidgetProvider::class.java, appWidgetId)
- viewModel.checkedId = config.categoryId
+ if (config.sourceType == "recent") {
+ viewModel.selectRecent()
+ } else {
+ viewModel.checkedId = config.categoryId
+ }
viewBinding.switchBackground.isChecked = config.hasBackground
viewModel.content.observe(this, adapter)
@@ -73,6 +77,7 @@ class ShelfWidgetConfigActivity :
override fun onClick(v: View) {
when (v.id) {
R.id.button_done -> {
+ config.sourceType = viewModel.sourceType.value
config.categoryId = viewModel.checkedId
config.hasBackground = viewBinding.switchBackground.isChecked
updateWidget()
@@ -86,7 +91,11 @@ class ShelfWidgetConfigActivity :
}
override fun onItemClick(item: CategoryItem, view: View) {
- viewModel.checkedId = item.id
+ if (item.id == -1L) {
+ viewModel.selectRecent()
+ } else {
+ viewModel.checkedId = item.id
+ }
}
private fun updateWidget() {
diff --git a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetService.kt b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetService.kt
index dd33b22270..7ae212958c 100644
--- a/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetService.kt
+++ b/app/src/main/kotlin/io/github/landwarderer/futon/widget/shelf/ShelfWidgetService.kt
@@ -8,6 +8,7 @@ import dagger.Lazy
import dagger.hilt.android.AndroidEntryPoint
import io.github.landwarderer.futon.core.prefs.AppSettings
import io.github.landwarderer.futon.favourites.domain.FavouritesRepository
+import io.github.landwarderer.futon.history.data.HistoryRepository
import javax.inject.Inject
@AndroidEntryPoint
@@ -16,6 +17,9 @@ class ShelfWidgetService : RemoteViewsService() {
@Inject
lateinit var favouritesRepository: FavouritesRepository
+ @Inject
+ lateinit var historyRepository: HistoryRepository
+
@Inject
lateinit var settings: AppSettings
@@ -27,6 +31,6 @@ class ShelfWidgetService : RemoteViewsService() {
AppWidgetManager.EXTRA_APPWIDGET_ID,
AppWidgetManager.INVALID_APPWIDGET_ID,
)
- return ShelfListFactory(applicationContext, favouritesRepository, coilLazy, settings, widgetId)
+ return ShelfListFactory(applicationContext, favouritesRepository, historyRepository, coilLazy, settings, widgetId)
}
}
diff --git a/app/src/main/res/drawable-night/avd_splash.xml b/app/src/main/res/drawable-night/avd_splash.xml
index ef6c0b0885..ec09ae20cc 100644
--- a/app/src/main/res/drawable-night/avd_splash.xml
+++ b/app/src/main/res/drawable-night/avd_splash.xml
@@ -1,131 +1,178 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/avd_splash.xml b/app/src/main/res/drawable/avd_splash.xml
index 2c52ce7793..35132580c2 100644
--- a/app/src/main/res/drawable/avd_splash.xml
+++ b/app/src/main/res/drawable/avd_splash.xml
@@ -34,17 +34,36 @@
android:pathData="M 160 60 C 133.489 60 108.036 70.543 89.289 89.289 C 70.543 108.036 60 133.489 60 160 C 60 186.511 70.543 211.964 89.289 230.711 C 108.036 249.457 133.489 260 160 260 C 186.511 260 211.964 249.457 230.711 230.711 C 249.457 211.964 260 186.511 260 160 C 260 133.489 249.457 108.036 230.711 89.289 C 211.964 70.543 186.511 60 160 60 Z" />
-
+ android:pivotX="20"
+ android:pivotY="-100"
+ android:scaleX="0.507"
+ android:scaleY="0.3"
+ >
+
+
+
+
@@ -92,7 +111,7 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/drawable/gradient_fade_bottom.xml b/app/src/main/res/drawable/gradient_fade_bottom.xml
new file mode 100644
index 0000000000..de57cfb159
--- /dev/null
+++ b/app/src/main/res/drawable/gradient_fade_bottom.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_appwidget_shelf.xml b/app/src/main/res/layout/activity_appwidget_shelf.xml
index 5920648c2f..51ff8662c0 100644
--- a/app/src/main/res/layout/activity_appwidget_shelf.xml
+++ b/app/src/main/res/layout/activity_appwidget_shelf.xml
@@ -49,7 +49,7 @@
android:paddingTop="6dp"
android:paddingEnd="?listPreferredItemPaddingEnd"
android:singleLine="true"
- android:text="@string/favourites_categories"
+ android:text="@string/categories"
android:textAppearance="?textAppearanceTitleSmall" />
diff --git a/app/src/main/res/layout/activity_details.xml b/app/src/main/res/layout/activity_details.xml
index 7051113b7c..a5ae19b5f3 100644
--- a/app/src/main/res/layout/activity_details.xml
+++ b/app/src/main/res/layout/activity_details.xml
@@ -26,6 +26,26 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
index 036d09bc5f..4df90c3c1e 100644
--- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -2,4 +2,5 @@
+
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/app/src/main/res/mipmap-hdpi/ic_launcher.webp
index 157a02acb1..a22eac67cc 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher.webp and b/app/src/main/res/mipmap-hdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp
index 4bd0b3b1ac..06f0725ca0 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp and b/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..68e6d42403
Binary files /dev/null and b/app/src/main/res/mipmap-hdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
index 7c552a7737..1a76bacd91 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/app/src/main/res/mipmap-mdpi/ic_launcher.webp
index 5b4455e788..0895c17e6c 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher.webp and b/app/src/main/res/mipmap-mdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp
index 766102b540..33a4745f33 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp and b/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..ff30d8aa4e
Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
index 0086b80cc7..dc6003add9 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
index 8c63998af7..0cd35fcc83 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp and b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp
index 0efff14075..bc442540e8 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp and b/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..88fa786b14
Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
index 1e6f023fe9..3e9d1916e2 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
index 8eca14026f..f2fe8d06b4 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp and b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp
index 5724febdd9..f81d338879 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp and b/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..f0ed20d7db
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
index b684dcfdab..ddfc4eb05c 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp and b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
new file mode 100644
index 0000000000..994027c13d
Binary files /dev/null and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp differ
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 5c367e086a..4d62e86d72 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -78,6 +78,9 @@
- 0dp
- 0dp
- 42dp
+ - center
+ - 0dp
+ - 48dp