From a1ff899e96162d52b3104212a04b04b6852f09af Mon Sep 17 00:00:00 2001 From: Konstantin Ivanov <54908981+konstantiniiv@users.noreply.github.com> Date: Tue, 2 Aug 2022 10:13:28 +0200 Subject: [PATCH] DROID-211 Editor | Enhancement | Make "Create new object" the last option of the mention menu (#2458) * DROID-211 create new object moved to the last position * DROID-211 pr fix Co-authored-by: konstantiniiv --- .../widgets/toolbar/adapter/MentionAdapter.kt | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/core-ui/src/main/java/com/anytypeio/anytype/core_ui/widgets/toolbar/adapter/MentionAdapter.kt b/core-ui/src/main/java/com/anytypeio/anytype/core_ui/widgets/toolbar/adapter/MentionAdapter.kt index 148e73387c..bc725715f3 100644 --- a/core-ui/src/main/java/com/anytypeio/anytype/core_ui/widgets/toolbar/adapter/MentionAdapter.kt +++ b/core-ui/src/main/java/com/anytypeio/anytype/core_ui/widgets/toolbar/adapter/MentionAdapter.kt @@ -34,7 +34,7 @@ class MentionAdapter( mentionFilter = "" val size = data.size data.clear() - notifyItemRangeRemoved(0, size) + notifyItemRangeRemoved(0, size + 1) } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { @@ -54,7 +54,7 @@ class MentionAdapter( itemView.setOnClickListener { val pos = bindingAdapterPosition if (pos != RecyclerView.NO_POSITION) { - onClicked(data[pos - 1], mentionFilter, pos) + onClicked(data[pos], mentionFilter, pos) } } } @@ -64,21 +64,19 @@ class MentionAdapter( override fun getItemCount(): Int = data.size + 1 - override fun getItemViewType(position: Int): Int = when (position) { - POSITION_NEW_PAGE -> TYPE_NEW_PAGE - else -> TYPE_MENTION + override fun getItemViewType(position: Int): Int { + return if (position > data.lastIndex) TYPE_NEW_PAGE else TYPE_MENTION } override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { if (holder is DefaultObjectViewAdapter.ObjectViewHolder) { - holder.bind(data[position - 1]) + holder.bind(data[position]) } } class NewPageViewHolder(view: View) : RecyclerView.ViewHolder(view) companion object { - const val POSITION_NEW_PAGE = 0 const val TYPE_NEW_PAGE = 1 const val TYPE_MENTION = 2 }