From a42f5e93409d4016a8d98f14aaae3a7c4b20eb33 Mon Sep 17 00:00:00 2001 From: Taras Smakula <tarassmakula@gmail.com> Date: Tue, 15 Aug 2023 14:07:30 +0300 Subject: [PATCH] Move post button to bottom right --- .../post/create/CreatePostDialogFragment.kt | 5 +- .../main/res/color/send_ic_state_color.xml | 5 ++ app/src/main/res/drawable/ic_send.xml | 10 ++++ .../layout/dialog_fragment_create_post.xml | 50 ++++++++++--------- .../main/res/layout/list_item_style_bar.xml | 9 ++-- .../res/layout/view_markdown_stylebar.xml | 6 ++- 6 files changed, 51 insertions(+), 34 deletions(-) create mode 100644 app/src/main/res/color/send_ic_state_color.xml create mode 100644 app/src/main/res/drawable/ic_send.xml diff --git a/app/src/main/java/org/futo/circles/feature/timeline/post/create/CreatePostDialogFragment.kt b/app/src/main/java/org/futo/circles/feature/timeline/post/create/CreatePostDialogFragment.kt index faa446bfc..c9327b9b2 100644 --- a/app/src/main/java/org/futo/circles/feature/timeline/post/create/CreatePostDialogFragment.kt +++ b/app/src/main/java/org/futo/circles/feature/timeline/post/create/CreatePostDialogFragment.kt @@ -56,12 +56,11 @@ class CreatePostDialogFragment : private fun setupViews() { setToolbarTitle() with(binding) { - btnPost.apply { + btnSend.apply { setOnClickListener { sendPost() onBackPressed() } - setText(getString(if (args.isEdit) R.string.edit else R.string.send)) } binding.vPostOptions.apply { setOptionsListener(this@CreatePostDialogFragment) @@ -70,7 +69,7 @@ class CreatePostDialogFragment : vPostPreview.setup( object : PreviewPostListener { override fun onPostContentAvailable(isAvailable: Boolean) { - binding.btnPost.isEnabled = isAvailable + binding.btnSend.isEnabled = isAvailable } }, onHighlightTextStyle = { textStyle -> binding.vPostOptions.highlightStyle(textStyle) }, diff --git a/app/src/main/res/color/send_ic_state_color.xml b/app/src/main/res/color/send_ic_state_color.xml new file mode 100644 index 000000000..d3a029646 --- /dev/null +++ b/app/src/main/res/color/send_ic_state_color.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:color="@color/gray" android:state_enabled="false" /> + <item android:color="@color/blue" /> +</selector> \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_send.xml b/app/src/main/res/drawable/ic_send.xml new file mode 100644 index 000000000..937bdd16c --- /dev/null +++ b/app/src/main/res/drawable/ic_send.xml @@ -0,0 +1,10 @@ +<vector xmlns:android="http://schemas.android.com/apk/res/android" + android:width="24dp" + android:height="24dp" + android:autoMirrored="true" + android:viewportWidth="24" + android:viewportHeight="24"> + <path + android:fillColor="@android:color/white" + android:pathData="M2.01,21L23,12 2.01,3 2,10l15,2 -15,2z" /> +</vector> diff --git a/app/src/main/res/layout/dialog_fragment_create_post.xml b/app/src/main/res/layout/dialog_fragment_create_post.xml index 679f12896..dd15dfc9b 100644 --- a/app/src/main/res/layout/dialog_fragment_create_post.xml +++ b/app/src/main/res/layout/dialog_fragment_create_post.xml @@ -14,22 +14,7 @@ app:layout_constraintTop_toTopOf="parent" app:navigationIcon="?attr/homeAsUpIndicator" app:title="@string/create_post" - app:titleCentered="true" - app:titleMarginEnd="72dp"> - - <org.futo.circles.core.view.LoadingButton - android:id="@+id/btnPost" - android:layout_width="56dp" - android:layout_height="match_parent" - android:layout_gravity="end" - android:layout_marginVertical="8dp" - android:layout_marginEnd="8dp" - android:enabled="false" - android:text="@string/send" - android:textSize="13sp" - app:textPadding="1dp" /> - - </com.google.android.material.appbar.MaterialToolbar> + app:titleCentered="true" /> <View android:id="@+id/divider" @@ -55,21 +40,38 @@ android:id="@+id/vPostPreview" android:layout_width="match_parent" android:layout_height="0dp" - app:layout_constraintBottom_toTopOf="@id/vPostOptions" + app:layout_constraintBottom_toTopOf="@id/btnSend" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> + <com.google.android.material.button.MaterialButton + android:id="@+id/btnSend" + android:layout_width="48dp" + android:layout_height="48dp" + android:layout_marginEnd="8dp" + android:layout_marginBottom="8dp" + android:background="?selectableItemBackgroundBorderless" + android:enabled="false" + android:focusable="true" + android:minWidth="0dp" + android:minHeight="0dp" + android:padding="0dp" + app:icon="@drawable/ic_send" + app:iconGravity="end" + app:iconSize="40dp" + app:iconTint="@color/send_ic_state_color" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" /> + <org.futo.circles.view.MarkdownStyleBar android:id="@+id/vPostOptions" - android:layout_width="match_parent" + android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginBottom="8dp" - android:clipChildren="false" - android:clipToPadding="false" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" /> + app:layout_constraintBottom_toBottomOf="@id/btnSend" + app:layout_constraintEnd_toStartOf="@id/btnSend" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="@id/btnSend" /> </androidx.constraintlayout.widget.ConstraintLayout> diff --git a/app/src/main/res/layout/list_item_style_bar.xml b/app/src/main/res/layout/list_item_style_bar.xml index 8bc72313c..4709beb7b 100644 --- a/app/src/main/res/layout/list_item_style_bar.xml +++ b/app/src/main/res/layout/list_item_style_bar.xml @@ -4,13 +4,12 @@ android:id="@+id/cvOption" android:layout_width="48dp" android:layout_height="48dp" - app:cardCornerRadius="8dp" + android:clickable="true" android:elevation="4dp" - android:layout_marginHorizontal="4dp" + android:focusable="true" android:foreground="?selectableItemBackground" - android:clickable="true" - android:clipToPadding="false" - android:focusable="true"> + app:cardCornerRadius="8dp" + app:cardUseCompatPadding="true"> <ImageView android:id="@+id/ivIcon" diff --git a/app/src/main/res/layout/view_markdown_stylebar.xml b/app/src/main/res/layout/view_markdown_stylebar.xml index 6e22f1ce8..f152df049 100644 --- a/app/src/main/res/layout/view_markdown_stylebar.xml +++ b/app/src/main/res/layout/view_markdown_stylebar.xml @@ -12,10 +12,12 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:orientation="horizontal" + android:paddingStart="8dp" app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> + app:layout_constraintTop_toTopOf="parent" + tools:ignore="RtlSymmetry" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/rvTextOptions" @@ -34,8 +36,8 @@ android:layout_height="0dp" android:background="@color/close_background" android:clickable="true" - android:padding="8dp" android:focusable="true" + android:padding="8dp" android:src="@drawable/ic_close" android:tint="@color/white" app:layout_constraintBottom_toBottomOf="@id/rvTextOptions" -- GitLab