From 7fb67be1b640af67160f482d8386af50d4a33352 Mon Sep 17 00:00:00 2001 From: Zakhar Timoshenko Date: Mon, 28 Feb 2022 01:24:21 +0300 Subject: [PATCH] Some UI changes --- .../kotatsu/base/ui/widgets/CoverImageView.kt | 5 +- .../ui/categories/CategoriesActivity.kt | 4 +- .../kotatsu/list/ui/MangaListFragment.kt | 2 +- .../koitharu/kotatsu/utils/ext/AndroidExt.kt | 1 - .../org/koitharu/kotatsu/utils/ext/UiExt.kt | 21 ---- .../main/res/color/navigation_bar_scrim.xml | 4 + app/src/main/res/drawable/list_selector.xml | 6 +- .../drawable/navigation_item_background.xml | 19 --- .../main/res/layout/activity_categories.xml | 2 +- app/src/main/res/layout/activity_main.xml | 6 +- .../main/res/layout/item_current_filter.xml | 4 +- app/src/main/res/layout/item_header.xml | 2 - app/src/main/res/layout/item_manga_grid.xml | 15 ++- app/src/main/res/layout/item_manga_list.xml | 66 +++++------ .../res/layout/item_manga_list_details.xml | 108 +++++++++--------- .../layout/item_source_config_draggable.xml | 1 - app/src/main/res/values-v23/themes.xml | 10 ++ app/src/main/res/values-v27/themes.xml | 3 +- app/src/main/res/values/dimens.xml | 9 +- app/src/main/res/values/styles.xml | 6 + app/src/main/res/values/themes.xml | 6 +- 21 files changed, 134 insertions(+), 166 deletions(-) delete mode 100644 app/src/main/java/org/koitharu/kotatsu/utils/ext/UiExt.kt create mode 100644 app/src/main/res/color/navigation_bar_scrim.xml delete mode 100644 app/src/main/res/drawable/navigation_item_background.xml create mode 100644 app/src/main/res/values-v23/themes.xml diff --git a/app/src/main/java/org/koitharu/kotatsu/base/ui/widgets/CoverImageView.kt b/app/src/main/java/org/koitharu/kotatsu/base/ui/widgets/CoverImageView.kt index a4e7bf748..6f0c9e4e2 100644 --- a/app/src/main/java/org/koitharu/kotatsu/base/ui/widgets/CoverImageView.kt +++ b/app/src/main/java/org/koitharu/kotatsu/base/ui/widgets/CoverImageView.kt @@ -3,15 +3,14 @@ package org.koitharu.kotatsu.base.ui.widgets import android.content.Context import android.util.AttributeSet import android.widget.LinearLayout -import androidx.appcompat.widget.AppCompatImageView import androidx.core.content.withStyledAttributes +import com.google.android.material.imageview.ShapeableImageView import org.koitharu.kotatsu.R import kotlin.math.roundToInt - class CoverImageView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0, -) : AppCompatImageView(context, attrs, defStyleAttr) { +) : ShapeableImageView(context, attrs, defStyleAttr) { private var orientation: Int = HORIZONTAL diff --git a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/CategoriesActivity.kt b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/CategoriesActivity.kt index f08a83032..8a1076d37 100644 --- a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/CategoriesActivity.kt +++ b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/CategoriesActivity.kt @@ -148,7 +148,7 @@ class CategoriesActivity : BaseActivity(), override fun onMove( recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder, - target: RecyclerView.ViewHolder + target: RecyclerView.ViewHolder, ): Boolean = true override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) = Unit @@ -160,7 +160,7 @@ class CategoriesActivity : BaseActivity(), target: RecyclerView.ViewHolder, toPos: Int, x: Int, - y: Int + y: Int, ) { super.onMoved(recyclerView, viewHolder, fromPos, target, toPos, x, y) viewModel.reorderCategories(fromPos, toPos) diff --git a/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt b/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt index bee787480..a91d3924b 100644 --- a/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/list/ui/MangaListFragment.kt @@ -257,7 +257,7 @@ abstract class MangaListFragment : BaseFragment(), } ListMode.DETAILED_LIST -> { layoutManager = LinearLayoutManager(context) - val spacing = resources.getDimensionPixelOffset(R.dimen.grid_spacing) + val spacing = resources.getDimensionPixelOffset(R.dimen.list_spacing) updatePadding(left = spacing, right = spacing) addItemDecoration(SpacingItemDecoration(spacing)) } diff --git a/app/src/main/java/org/koitharu/kotatsu/utils/ext/AndroidExt.kt b/app/src/main/java/org/koitharu/kotatsu/utils/ext/AndroidExt.kt index 6eef68d17..215e2d185 100644 --- a/app/src/main/java/org/koitharu/kotatsu/utils/ext/AndroidExt.kt +++ b/app/src/main/java/org/koitharu/kotatsu/utils/ext/AndroidExt.kt @@ -4,7 +4,6 @@ import android.content.Context import android.net.ConnectivityManager import android.net.Network import android.net.NetworkRequest -import android.os.Build import androidx.appcompat.app.AlertDialog import com.google.android.material.dialog.MaterialAlertDialogBuilder import kotlinx.coroutines.suspendCancellableCoroutine diff --git a/app/src/main/java/org/koitharu/kotatsu/utils/ext/UiExt.kt b/app/src/main/java/org/koitharu/kotatsu/utils/ext/UiExt.kt deleted file mode 100644 index f66e9f880..000000000 --- a/app/src/main/java/org/koitharu/kotatsu/utils/ext/UiExt.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.koitharu.kotatsu.utils.ext - -import android.content.Context -import android.graphics.drawable.Drawable -import androidx.appcompat.content.res.AppCompatResources -import androidx.core.graphics.drawable.DrawableCompat -import org.koitharu.kotatsu.R - -fun navigationItemBackground(context: Context): Drawable? { - // Need to inflate the drawable and CSL via AppCompatResources to work on Lollipop - // From Google I/O repo (https://github.com/google/iosched) - var background = AppCompatResources.getDrawable(context, R.drawable.navigation_item_background) - if (background != null) { - val tint = AppCompatResources.getColorStateList( - context, R.color.navigation_item_background_tint - ) - background = DrawableCompat.wrap(background.mutate()) - background.setTintList(tint) - } - return background -} \ No newline at end of file diff --git a/app/src/main/res/color/navigation_bar_scrim.xml b/app/src/main/res/color/navigation_bar_scrim.xml new file mode 100644 index 000000000..6d9fe48af --- /dev/null +++ b/app/src/main/res/color/navigation_bar_scrim.xml @@ -0,0 +1,4 @@ + + + + diff --git a/app/src/main/res/drawable/list_selector.xml b/app/src/main/res/drawable/list_selector.xml index 14508c152..99d9a4cfc 100644 --- a/app/src/main/res/drawable/list_selector.xml +++ b/app/src/main/res/drawable/list_selector.xml @@ -10,7 +10,7 @@ android:bottom="2dp" android:left="2dp"> - + @@ -22,7 +22,7 @@ android:bottom="2dp" android:left="2dp"> - + @@ -33,7 +33,7 @@ android:bottom="2dp" android:left="2dp"> - + diff --git a/app/src/main/res/drawable/navigation_item_background.xml b/app/src/main/res/drawable/navigation_item_background.xml deleted file mode 100644 index 8c635e7a3..000000000 --- a/app/src/main/res/drawable/navigation_item_background.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/activity_categories.xml b/app/src/main/res/layout/activity_categories.xml index 5dcfe622d..d553d862d 100644 --- a/app/src/main/res/layout/activity_categories.xml +++ b/app/src/main/res/layout/activity_categories.xml @@ -15,7 +15,7 @@ android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" - android:theme="?attr/actionBarTheme"/> + android:theme="?attr/actionBarTheme" /> diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index f02321df3..b944dcc54 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -27,21 +27,21 @@ + android:layout_marginBottom="8dp" + android:background="@drawable/toolbar_background"> + android:layout_height="wrap_content"> \ No newline at end of file diff --git a/app/src/main/res/layout/item_manga_grid.xml b/app/src/main/res/layout/item_manga_grid.xml index 866f9c975..13833e6a8 100644 --- a/app/src/main/res/layout/item_manga_grid.xml +++ b/app/src/main/res/layout/item_manga_grid.xml @@ -4,6 +4,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" + xmlns:app="http://schemas.android.com/apk/res-auto" android:background="@drawable/list_selector" android:orientation="vertical"> @@ -11,9 +12,7 @@ android:id="@+id/card" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginHorizontal="8dp" - android:layout_marginTop="8dp" - android:layout_marginBottom="4dp"> + app:cardCornerRadius="12dp"> \ No newline at end of file diff --git a/app/src/main/res/layout/item_manga_list.xml b/app/src/main/res/layout/item_manga_list.xml index 52ee08093..fef7a5c33 100644 --- a/app/src/main/res/layout/item_manga_list.xml +++ b/app/src/main/res/layout/item_manga_list.xml @@ -1,17 +1,16 @@ - + app:cardCornerRadius="12dp"> - + android:orientation="horizontal"> - - - - - + android:layout_gravity="center_vertical" + android:orientation="vertical" + android:paddingStart="20dp" + android:paddingEnd="16dp"> - + + + + + - \ No newline at end of file + diff --git a/app/src/main/res/layout/item_manga_list_details.xml b/app/src/main/res/layout/item_manga_list_details.xml index e3ebb7148..468a1b476 100644 --- a/app/src/main/res/layout/item_manga_list_details.xml +++ b/app/src/main/res/layout/item_manga_list_details.xml @@ -1,17 +1,16 @@ - + app:cardCornerRadius="12dp"> - + android:orientation="horizontal"> - - - - - - - - + tools:src="@tools:sample/backgrounds/scenic" + app:shapeAppearanceOverlay="@style/ShapeAppearanceOverlay.Kotatsu.Cover"/> + android:layout_gravity="center_vertical" + android:layout_margin="16dp" + android:orientation="vertical"> + + - + android:orientation="horizontal" + android:gravity="center"> + + + + + + - \ No newline at end of file + diff --git a/app/src/main/res/layout/item_source_config_draggable.xml b/app/src/main/res/layout/item_source_config_draggable.xml index ffa9a68e5..2e4ae2c57 100644 --- a/app/src/main/res/layout/item_source_config_draggable.xml +++ b/app/src/main/res/layout/item_source_config_draggable.xml @@ -4,7 +4,6 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="?android:listPreferredItemHeightSmall" - android:background="?android:windowBackground" android:gravity="center_vertical" android:orientation="horizontal"> diff --git a/app/src/main/res/values-v23/themes.xml b/app/src/main/res/values-v23/themes.xml new file mode 100644 index 000000000..a0b9e171e --- /dev/null +++ b/app/src/main/res/values-v23/themes.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 0f4b7d260..c99c2e193 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -7,14 +7,9 @@ 36dp 24dp - - 0dp - 100dp - 0dp - 8dp> - 4dp - 4dp + 8dp + 8dp 2dp 86dp 120dp diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index a7593b677..2cdf110c3 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -137,6 +137,12 @@ ?android:attr/textColorSecondary + + + +