From c15c792c5a0d8a6b5d05ea103eba2996a5235f2d Mon Sep 17 00:00:00 2001 From: Alina Date: Tue, 23 Jul 2024 20:07:18 +0500 Subject: [PATCH] hw recyclerView --- app/build.gradle | 3 + .../main/java/otus/gpb/recyclerview/Chat.kt | 110 ++++++++++++ .../java/otus/gpb/recyclerview/ChatAdapter.kt | 88 ++++++++++ .../gpb/recyclerview/CustomItemDecorator.kt | 18 ++ .../otus/gpb/recyclerview/MainActivity.kt | 98 ++++++++++- app/src/main/res/drawable/archive.xml | 6 + app/src/main/res/drawable/border.xml | 11 ++ app/src/main/res/drawable/circle.xml | 10 ++ app/src/main/res/drawable/ilon_avatar.png | Bin 0 -> 7551 bytes app/src/main/res/drawable/karina_avatar.png | Bin 0 -> 6387 bytes app/src/main/res/drawable/line.xml | 6 + app/src/main/res/drawable/marlin_avatar.png | Bin 0 -> 7711 bytes app/src/main/res/drawable/one_check.xml | 13 ++ app/src/main/res/drawable/pasha_avatar.png | Bin 0 -> 6465 bytes app/src/main/res/drawable/pizza_avatar.png | Bin 0 -> 7436 bytes app/src/main/res/drawable/preview.png | Bin 0 -> 704 bytes app/src/main/res/drawable/read_check.xml | 13 ++ app/src/main/res/drawable/sound_off.xml | 13 ++ app/src/main/res/drawable/tg_avatar.png | Bin 0 -> 2797 bytes app/src/main/res/drawable/verificated.xml | 10 ++ app/src/main/res/layout/item_recycler.xml | 164 ++++++++++++++++++ app/src/main/res/values/colors.xml | 3 + 22 files changed, 564 insertions(+), 2 deletions(-) create mode 100644 app/src/main/java/otus/gpb/recyclerview/Chat.kt create mode 100644 app/src/main/java/otus/gpb/recyclerview/ChatAdapter.kt create mode 100644 app/src/main/java/otus/gpb/recyclerview/CustomItemDecorator.kt create mode 100644 app/src/main/res/drawable/archive.xml create mode 100644 app/src/main/res/drawable/border.xml create mode 100644 app/src/main/res/drawable/circle.xml create mode 100644 app/src/main/res/drawable/ilon_avatar.png create mode 100644 app/src/main/res/drawable/karina_avatar.png create mode 100644 app/src/main/res/drawable/line.xml create mode 100644 app/src/main/res/drawable/marlin_avatar.png create mode 100644 app/src/main/res/drawable/one_check.xml create mode 100644 app/src/main/res/drawable/pasha_avatar.png create mode 100644 app/src/main/res/drawable/pizza_avatar.png create mode 100644 app/src/main/res/drawable/preview.png create mode 100644 app/src/main/res/drawable/read_check.xml create mode 100644 app/src/main/res/drawable/sound_off.xml create mode 100644 app/src/main/res/drawable/tg_avatar.png create mode 100644 app/src/main/res/drawable/verificated.xml create mode 100644 app/src/main/res/layout/item_recycler.xml diff --git a/app/build.gradle b/app/build.gradle index c1b2a86..1145724 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -29,6 +29,9 @@ android { kotlinOptions { jvmTarget = '1.8' } + buildFeatures{ + viewBinding true + } } dependencies { diff --git a/app/src/main/java/otus/gpb/recyclerview/Chat.kt b/app/src/main/java/otus/gpb/recyclerview/Chat.kt new file mode 100644 index 0000000..4b18486 --- /dev/null +++ b/app/src/main/java/otus/gpb/recyclerview/Chat.kt @@ -0,0 +1,110 @@ +package otus.gpb.recyclerview + +class Chat( + val id: Int = 0, + val avatarImage: Int , + val previewImage: Int? , + val nickName: String = "NickName", + val group: String = "", + val message: String = "", + val lastTime: String = "Sun", + val messCount: Int = 0, + val check: Boolean = false, + val isViewed: Boolean = false, + val scam: Boolean = false, + val mute: Boolean = false, + val verified: Boolean = false +) { + companion object { + val pizza = Chat( + id = 1, + avatarImage = R.drawable.pizza_avatar, + previewImage = R.drawable.preview, + nickName = "Pizza", + group = "jija", + message = "Yes, they are necessary", + lastTime = "11:38 AM", + mute = true + ) + val elon = Chat( + id = 2, + avatarImage = R.drawable.ilon_avatar, + previewImage = null, + nickName = "Elon", + message = "I love /r/Reddit!", + lastTime = "12:44 AM", + mute = true + ) + val pasha = Chat( + id = 3, + avatarImage = R.drawable.pasha_avatar, + previewImage = null, + nickName = "Pasha", + message = "How are u?", + lastTime = "Fri", + mute = true, + verified = true + ) + val pasha2 = Chat( + id = 4, + avatarImage = R.drawable.pasha_avatar, + previewImage = null, + nickName = "Pasha2", + message = "what are u doing now", + lastTime = "Thu", + isViewed = true, + mute = true + ) + val telegramSupport = Chat( + id = 5, + avatarImage = R.drawable.tg_avatar, + previewImage = null, + nickName = "Telegram Support", + group = "Support", + message = "Yes it happened.", + lastTime = "Thu", + messCount = 1, + verified = true + ) + val karina = Chat( + id = 6, + avatarImage = R.drawable.karina_avatar, + previewImage = null, + nickName = "Karina", + message = "Okay", + lastTime = "Wed", + check = true + ) + val marilyn = Chat( + id = 7, + avatarImage = R.drawable.marlin_avatar, + previewImage = null, + nickName = "Marilyn", + message = "Will it ever happen", + lastTime = "May 02", + isViewed = true, + scam = true + ) + val chatList = mutableListOf( + pizza, + elon, + pasha, + pasha2, + telegramSupport, + karina, + marilyn + ) + } +} + + + + + + + + + + + + diff --git a/app/src/main/java/otus/gpb/recyclerview/ChatAdapter.kt b/app/src/main/java/otus/gpb/recyclerview/ChatAdapter.kt new file mode 100644 index 0000000..cdf9a88 --- /dev/null +++ b/app/src/main/java/otus/gpb/recyclerview/ChatAdapter.kt @@ -0,0 +1,88 @@ +package otus.gpb.recyclerview + +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.recyclerview.widget.RecyclerView +import androidx.recyclerview.widget.RecyclerView.Adapter +import otus.gpb.recyclerview.databinding.ItemRecyclerBinding + +class ChatAdapter(private var chatList: MutableList) : Adapter() { + + override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ChatViewHolder { + val binding = + ItemRecyclerBinding.inflate(LayoutInflater.from(parent.context), parent, false) + return ChatViewHolder(binding) + } + + override fun getItemCount(): Int { + return chatList.size + } + + override fun onBindViewHolder(holder: ChatViewHolder, position: Int) { + holder.bind(chatList[position]) + } + + fun setChats(newChatList: MutableList) { + chatList = newChatList + notifyDataSetChanged() + } + + fun deleteItem(position: Int) { + chatList.removeAt(position) + notifyItemRemoved(position) + } +} + +class ChatViewHolder(private val binding: ItemRecyclerBinding) : + RecyclerView.ViewHolder(binding.root) { + fun bind(model: Chat) { + binding.imageViewAvatar.setImageResource(model.avatarImage) + model.previewImage?.let { binding.imageViewPreview.setImageResource(it) } + + binding.textViewNickname.text = model.nickName + binding.textViewMessage.text = model.message + binding.textViewMessTime.text = model.lastTime + binding.textViewMessCount.text = model.messCount.toString() + + if (model.group.isEmpty()) + binding.textViewGroup.visibility = View.GONE + else + binding.textViewGroup.text = model.group + + if (model.check) { + binding.imageViewCheck.setImageResource(R.drawable.one_check) + binding.imageViewCheck.visibility = View.VISIBLE + } else if (model.isViewed) { + binding.imageViewCheck.setImageResource(R.drawable.read_check) + binding.imageViewCheck.visibility = View.VISIBLE + } else { + binding.imageViewCheck.visibility = View.GONE + } + + if (model.messCount == 0) { + binding.imageViewMessCountCircle.visibility = View.GONE + binding.textViewMessCount.visibility = View.GONE + } else { + binding.imageViewMessCountCircle.visibility = View.VISIBLE + binding.textViewMessCount.visibility = View.VISIBLE + binding.textViewMessCount.text = model.messCount.toString() + } + + if (model.previewImage == null) { + binding.imageViewPreview.visibility = View.GONE + } else { + binding.imageViewPreview.visibility = View.VISIBLE + binding.imageViewPreview.setImageResource(model.previewImage!!) + } + + if (!model.scam) + binding.imageViewScam.visibility = View.GONE + + if (!model.mute) + binding.imageViewMute.visibility = View.GONE + + if (!model.verified) + binding.imageViewVerified.visibility = View.GONE + } +} \ No newline at end of file diff --git a/app/src/main/java/otus/gpb/recyclerview/CustomItemDecorator.kt b/app/src/main/java/otus/gpb/recyclerview/CustomItemDecorator.kt new file mode 100644 index 0000000..9feba70 --- /dev/null +++ b/app/src/main/java/otus/gpb/recyclerview/CustomItemDecorator.kt @@ -0,0 +1,18 @@ +package otus.gpb.recyclerview + +import android.graphics.Rect +import android.view.View +import androidx.recyclerview.widget.RecyclerView + +class CustomItemDecorator : RecyclerView.ItemDecoration() { + + override fun getItemOffsets(outRect: Rect, view: View, parent: RecyclerView, state: RecyclerView.State) { + outRect.apply { + left = 0 + right = 0 + top = 5 + bottom = 5 + } + } +} + diff --git a/app/src/main/java/otus/gpb/recyclerview/MainActivity.kt b/app/src/main/java/otus/gpb/recyclerview/MainActivity.kt index e2cdca7..055367d 100644 --- a/app/src/main/java/otus/gpb/recyclerview/MainActivity.kt +++ b/app/src/main/java/otus/gpb/recyclerview/MainActivity.kt @@ -1,12 +1,106 @@ package otus.gpb.recyclerview +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.graphics.drawable.ColorDrawable import androidx.appcompat.app.AppCompatActivity import android.os.Bundle +import android.widget.Toast +import androidx.core.content.ContextCompat +import androidx.recyclerview.widget.ItemTouchHelper +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import otus.gpb.recyclerview.databinding.ActivityMainBinding class MainActivity : AppCompatActivity() { + private lateinit var binding: ActivityMainBinding + private lateinit var adapter: ChatAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.activity_main) + initializeViewBinding() + setupRecyclerView() + setupSwipeToDelete() } -} \ No newline at end of file + + private fun initializeViewBinding() { + binding = ActivityMainBinding.inflate(layoutInflater) + setContentView(binding.root) + } + + private fun setupRecyclerView() { + adapter = ChatAdapter(chatList = Chat.chatList) + binding.recyclerView.adapter = adapter + binding.recyclerView.layoutManager = LinearLayoutManager(this) + adapter.setChats(Chat.chatList) + binding.recyclerView.addItemDecoration(CustomItemDecorator()) + } + + private fun setupSwipeToDelete() { + val itemTouchHelper = + ItemTouchHelper(object : ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT) { + override fun onMove( + recyclerView: RecyclerView, + viewHolder: RecyclerView.ViewHolder, + target: RecyclerView.ViewHolder + ): Boolean { + return false + } + + override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) { + adapter.deleteItem(viewHolder.adapterPosition) + } + + override fun onChildDraw( + c: Canvas, + recyclerView: RecyclerView, + viewHolder: RecyclerView.ViewHolder, + dX: Float, + dY: Float, + actionState: Int, + isCurrentlyActive: Boolean + ) { + viewHolder.itemView.apply { + ContextCompat.getDrawable(context, R.drawable.archive)?.apply { + val background = ColorDrawable() + background.color = ContextCompat.getColor(context, R.color.blue) + + val iconMargin = ((bottom - top) - intrinsicHeight) / 2 + val iconTop = top + iconMargin / 2 + val iconBottom = iconTop + intrinsicHeight + val iconRight = right - iconMargin + val iconLeft = iconRight - intrinsicWidth + + setBounds(iconLeft, iconTop, iconRight, iconBottom) + background.setBounds(right + dX.toInt(), top, right, bottom) + + background.draw(c) + draw(c) + } + val textPaint = Paint().apply { + color = Color.WHITE + textSize = 25f + } + val text = "Archive" + val textWidth = textPaint.measureText(text) + val textX = right - textWidth - 30f + val textY = bottom - 20f + c.drawText(text, textX, textY, textPaint) + } + + super.onChildDraw( + c, + recyclerView, + viewHolder, + dX, + dY, + actionState, + isCurrentlyActive + ) + } + }) + + itemTouchHelper.attachToRecyclerView(binding.recyclerView) + } +} diff --git a/app/src/main/res/drawable/archive.xml b/app/src/main/res/drawable/archive.xml new file mode 100644 index 0000000..f92bd38 --- /dev/null +++ b/app/src/main/res/drawable/archive.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/border.xml b/app/src/main/res/drawable/border.xml new file mode 100644 index 0000000..69eab20 --- /dev/null +++ b/app/src/main/res/drawable/border.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/circle.xml b/app/src/main/res/drawable/circle.xml new file mode 100644 index 0000000..7a78ede --- /dev/null +++ b/app/src/main/res/drawable/circle.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ilon_avatar.png b/app/src/main/res/drawable/ilon_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..af3fd163b83959c93b0b9234e135c169dc27bfb5 GIT binary patch literal 7551 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 Vfz5a8uU!BD002ovPDHLkV1k8EqND%- literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/karina_avatar.png b/app/src/main/res/drawable/karina_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..7b5d22e7b75a3cafafb2c58733bf64d03f55ef88 GIT binary patch literal 6387 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 + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/marlin_avatar.png b/app/src/main/res/drawable/marlin_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..b6a0dc9b9aabf1153ad6483e4e32c7a6bbd4330b GIT binary patch literal 7711 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 Z{3B4rN{Nj|fJguU002ovPDHLkV1hk17;XRn literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/one_check.xml b/app/src/main/res/drawable/one_check.xml new file mode 100644 index 0000000..5b04999 --- /dev/null +++ b/app/src/main/res/drawable/one_check.xml @@ -0,0 +1,13 @@ + + + diff --git a/app/src/main/res/drawable/pasha_avatar.png b/app/src/main/res/drawable/pasha_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..9f29a5bca43ec8c645fe7771ed7153185a447791 GIT binary patch literal 6465 zcmV-H8NTL;P)@z*RFL%lJpW8jtvj`zUPU)(9 zZr|nn=ik2n`;UhIhjHxmLavp3lo<|apv_CI6nAuREv3-h99M3N!?S-FQQ(lVEf&7$3f><&Q)9*)TSC2O- zS44JYazoIK#~<98d9ff4s_#CytNZZ}IqeTG>i()U65yE2CI0p+;?#%luv{@w}yU zVADja)MSO{#f0U1y;kAxH9D-u1u$^o;(2A}#o{6sC&%&q!+(wOv0-po_|7#tIbep| zW5-S}ByL$q$FZK|;_cB@IQI^@LB#@w$qG&K(tE?`YHvriOaW~Nxk8D7rj8PYV^rkD zj=E2@S*=vD$n!Z0nWI_ed5kYEswf)>&{WGsM&2+={JqQ+Q>x@po}b1G|M|}}cftzw zeoY;sRPS*2_=E0qw3WH2t`I?wjhv{7NsaFm%F)T}Koqn>9Mvec@h1oeii7Tj%_C#~!|Cx#b}+`n^W9yQkrp&#aL ziROdW{O*cIb^PM!GpLA$7}_OLN**&Ph()aine>CE#9j-ju!#+c5F!CnSppS|R5XNC zJg77fq#0|5kNCpC#qn8OnJM5bKkKeo4I!d{2(IGDyKnLNv=j?Xfs}9pC6%zApa~fD zC;9o%b%lI;Wa1I#uLDa0tqNxHAPI1}>^x>CF2iK#H|rIM)rUFp1!^{+o1Az6Ax@|> zXraF&ijH_dMMe=aN?(mdL@+-L`e!H<1`Jsa4XJbzw-;)t{N^2;pP}X`xGei3(@TDF z9>w{2MB?dHi|?-ZlXDz6F+4MH|IUuVb%mr8d`DLoYR%gl+V#GxG(thIUcShDK(nMk zKAM})Z>UreX0i-$)e`|1eQg2U-WfxJ{ud56t}{*bBv<9e0C8&wW;n`O_?6kVbFp-P z2%}f0F}uh>r27yFhmog{J|lpU_l9uCrpaG(xrRJr2$D^4|hADU+>LE2=j1als8#(UXWG>Id%VPh(qe5)@hD>9 z5Q2Um!oe^Rkq91AS`6}g$R9+6pgq;qjRXO}maQ42V-d9|B}UyyJS1@lm(HGIIyKgW z%SNzQhwi2F%o`V`zPUz|hOQr6i72!s6J2qR5v^RxGg{V_#>HO>r7Ha{h$JT#H-pG@ zCFqMfVhl0?nxq5_*LKy4>oQ6DtieN>yU!0Z5QM?H(ie(B4}{UtkwP#;&H7wSX6xum zB&c~Ex%o-vOGZ>zZz9X}gQN0SJi@O}Eot(dk!eZzdz9Y@k`eti5RT+2bu_igbAAR3 zf6%ACml^iqR?!}hppyY+SEhr)2GEvFAVlp1DTKj0eH6~eKq6ii!j8GFDsTs*lIg*Q?k-g%M`)s&Lp*9#6hPN>%c~-^2B2V) zC$B>jwxMza53vqNrNRJ|NTiYJ>B7i#4pG*e<(daFg5d-+m80gMYu;?!MhcOfyc8lE zABL`dh2IXD!z_Y{95VQTvD)s7#G1_!q!!ZD-fg=+fn>Y`S}hN!vIv(Gb1W|!NYzne z@^AQxf@@-AwOk%So35aFkyk();Q^wFHuR7K%5=|TCeOS}->wnoCR0gIYb`2Rj<73B zvBv3)fE!ac>^<62^$n~{9B3rkMhfBK@I*3^q=qb2CdmuK3=+}yK9%nr;!cq~DkQkNI@0LPY{ACucOurF#@4Od@aEg^Qp2VK2Ak4R z+_Sxp5RmA{a8!h7RX}r|E9bAt`v**e$+M9gR3W>@P~BFMp&(XoUq33n| z`DscPBd)_BR3cEX(N|4I)CvPrwNj)|wh9*2x=jT*m8f^?h5AC@FTdY|WYU9kM8)55C>-1I$+WbY6)U!vh)?G_ZjMbwd zwzmAMIDK1t3g7s~pWx_`BZ>iFO^@6nLG+uaFnZ}Mu1?KhYN4Q#c2~qirXzxF8D>OlkCEH>Z zS1z1KE;px;)sEe}(A}O?P|(*#SQOKnrrc)UcvbT8%?R4jp%yls@BKzFx(# z?BdGyC5SM(NhuW$IoQ8aFD4Y0wWVeJJU}8&fSc{HAQX-=OaL4@4kJQn3=@I#u&6norGzo2CEW~ z1OqkJzp)21GuM!#3(RR1g!dnWsnUqHENKfmQz>Po2nn-!;o6D=*BRaqPAG*qQ$=?& zicS*3nze}FwmVU!sg-im3fEc|qbZ|on5LWPy$yO{f$%JZzKvU{tq^9$M^sRf+!zj# za2A*-rIi#2%$=57Q9M%rhBW*$GpLMDA;P@b+Evh2){_mW*Q#52o^n>FMYxsHHDyx7UJqWb*@K(YxPFgCCRNrQl zSw5N6o}>fuPmr^9NQc;dGJUiRop@EyPK1%Sqpt^{-cO?{gtH`m&9gDxZOqwim}w)8 zwB}Nig(>MgcZuz4DL~iJU^Ab}L6bE?*wWXD{QM03#G71twFXit2o|*+MGPQ(wuaMAM-GQBB8O6ZGs!E-s`gu)}!f=|Qpn`#^M2z(0Mp!*}DGa(kJBgNb zw}REkayi^JoaNdm)qH}z^d#3I4Exjr$n0aD_}vvJVH47u}#{;<%)#@#K_cUJ<*F=tVb~ruDk4i z?)CkuIqgyLNokK|aKq6^zKw_0nHvM$JJ5I60v2B%WHhbAnw#h3$+XE+`Ds&Y!s68! zVBFcOC{B%1dnFj1Q+V(6`{+ppRn_k!Gz>@!PYk!g$jPTvMQ%6+|L)&KJ=#w8z)%&4 zwn{M9UBeD6e`;FRWOH;(Ou!TR!w=F-sM?H-ncYa7JwZybtjJ-T!NyOswS{t|c7%N! zJNXhc3Sszdbf?>J?#x*%TpB~l>>^75Ru~m|Abd_MN_&Qw zKi1|#&y(CW0;r(m*k{NXYD2oa3h`*#8i7}vg}O(uXowZaAASo9;}?-VU4oXk6|ZV3 zf=fs(oqfkNE=`n{ zn2NMvLcDVquVIcLT#!tV<~Tc7#+GfHq^{-yRoH5nLEq-B(0tPIVrn6(DbNDqL{=_V zqZlv3u9pSe7DUJNI4Iwni026ZJJ@<6dKoFk7g+C#^eS=HiJk(p}_o zVh$=n8`tbArU}~Zq>JgfF=WTbSWA+~3Pe@W&GljVWnuE_I1A=L1I1`Jc=y`DJBIe& zzImuclXAE76!kl>dQDsyOXTvhPkUdqhGyLc{D`Ky(bc~dB29Sy7FVJj2R z{8YC5I9C0l#>mL{2&bKCJ!iYdidAg+V<|N)FEs1J+6+$p{J&X+6j|k$FnMX1jCzd` zG{V&4Vk%cw1X%xuPIPy6s(_W_bv73y$_OnTvRW}mxR{~&N1#VKVD#PBSn$>vYu6D{ zog2Ml2f=Y;tl*+8tM;hWif;38v?a5U%?wQ-+>~tDQeDri7{*0o{RGpCY>8jGI?GA6 zBM|R`FWSjoWs2>*FxrVl9pQLt7JZnojTKFq-K>e}Sxk&iBEcI_b*&K#*+ihDC%e{wWzymTbdSCIx{_u#bOy<0UPbkG=@+9 z3h!PV$E9hOU}ha1WYpuPqjrkqOBI?j8HK0_YoaU_jiF%!ne)zcN-=;!drEETBe4JT z?+vQf!N6zk#V2;((a4>4GlXJ=rD@ucy}SCq+B&~AtvlP$9yKlJwA0we;xzk#q9|(9 zQjCtrvR9c7-h6Wi7cX5@n(XP{j9_;h{cQ9YB#yUjWV9vFJ~cdsVdB^nnF2r4i)Fit z!l)5A)cDLU_E5gK|FdX|hEdLEDR9`!)%>l@6m;eMd$=<4K88*mN2YHB4m|vI?Am!7 znFG_~ZGmQz$ud8$*%7iv$ejcSr_WscE?e7&A&I{pilzj;SjnOeK!el#jmZke|IUJmW0;;!vd@A^A|}>gB60P98sr*IxWF zK6%flDKJ~!G}lDBSE_IoFe1@54|ZEWdXjj>ZjT1142u(Q=edLzJV zxq>LNq|!}8?cP$ZLc4kU+=$xQ1tF)IenR00=GYs3?N|Z7{>4l9{Ffi5z@J5DGWNv7 zUw&}i4NU6_DdP{m^tnTS^Y{O77d1Jc3g2)HSFg@7HTaOtW%2TJKU6HhmL0p*9-Leu zk5ZYC&M`4^Wrlr=G_H;QmJ7tm78aQryjFM@8?92QIEpTUnD}mKK*fo>9S|$}LzWdC-eGjMKc=O2FH-2&5e$EGOahc4|ebqIB zLp5IlKYwu$6JukT&t~z;(I2sjui*9_yD&AICo_;$wV%a^C_Vp|fAtnwa7I;jrNq=_ zmxsmT*>JqwSi%~}R+dht5I?(KvL$A5F}p-7N)0Nzvi{}2e#!Rwydtfo)~wY%CNIbw zsx-~(;^FAfl?!h?`ayCSAN1qN!NJM{UwHWGA3gc~9kHOXqqA=-UV8QiWaA1fg;*}# z|2b3&Wj0C+NVDT4Jxf#fV~$;7e@#fP5INLY3L*VTO9et{^wc?7o%bh6Lze5d>TFe* zCQLSIO;R2f>(Lia4C807odKH7Uc*#^3F&1L2|2E8b}9|lo$42}9Jef_jKP9YC#2tG%3c;ja$?zw^M5s`dO8SY-TW78~*g=SC9_7G%Ze3HF%(+ zs^Wdy(eSU&y@FRykEz@!*DkdvgxgW=dzNGlo|u}t{Pl{w z_y*&KLN*8K|CdZdTciy4vGo>Arh7>CZec)4C}3S@Q%9qZE#`7+CvuJ;_UH?*z^>%b z7WUe8vYpeVKiX>ljj6ONyGN>O<5C6lWeWK0D|lygj#Gv>qH zn>(?Y#j@XTsD`U(sKABDm*|fSN)z)XTw+n3uiEO~r5duqrFtzubI|8%kB&}`j^4zS zZ(hje*tO%6kI+)S!-$s=RODx|YclG^*;_2qM-?2TDbGw@rSFv0gu~=f=ZsULC|Oj9V76Il4Rg9$^GM$Or8a!cw## z`vAOcp0azHnj%#x!9z{Fi9NMe;@WG}YQpWP*1OXHB zz^ET$TzQaEWEA$5jSh^MqBZ$j_RmS_q_nIzn~7eZU!tZESUfXI;`({r)Q-%~&JN;Z z7$2LEts{}>&M=+t(bYb6{Vr-MVH&=SVH$}V*>T6)|C*(ES;nX#UN=Uq4cUf0$ZRl* bk9qtb!tsabCr#e?00000NkvXXu0mjf$SQMH literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/pizza_avatar.png b/app/src/main/res/drawable/pizza_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..881f416f8ad989aab0dd9056184fbc33836a2995 GIT binary patch literal 7436 zcmV+n9rNOeP)K~#7FwR&lg zT<3M&c}ws6>;ufwSV>|b1}h;;B8D_+Q54NZCT+{ENMI_i$f+cRQc;zhA0ib?l}L^X zWR@x`w2M+AnTniPbd_x>R#_O*CP8B35a2QZ2ACNP2D4A^d%ySj-0$^Zp(u)^=tnks zy8HEe-~H~r=bn3R8~7(Ug2`msf^XP0F=RMu&@hZ4pNr(W?s)P){=3g&Xlop=pL{8M z_W1Z@VZNL#Hq6(QvPXN?n4AXj0DLeqB()vy1{bMN;algXD zckjWDz6dT|7)K>vh0|0p3>%JPz;(G8eZDbi!5D!up8BJgMn~}>9KW=YJ?TvcmE(S{ zUaJi^>J5EGMN4J9CZByYu)jTs-??WminAAC)Ea0s6gqpl(WpCESuXM`2H$IpXW6Y zYKx#_&u+NkZic4KM;)#z!>v?+VhNTj-=pssw~kw-kxdB)p69~$`Q`8D{I>dn(fjD+ z`&jb(GxGM%&|_y2d7|L@l9tOnYP~PdmXc7_L8gsVRujWpHer8f6dk?-whrBb9iP~b z$c6#Hj?h^(sAdzc(|}X0K$S9RmJ4voHEu`{MkEAZJPyM)8MfRw<}UBTtD9NI%UAqe zk39Ka*ZrQ2yuUYk_;e$5Xvqw~ZSYo#3pC{l4h;TbC`XdWyC~Px88UFkhCy@$YS^-K zJwE-pM-WO`aOmOb^OLxI;Uda3$V3FkkH3OFyS8D^ZCeoy_+XZ*I&@dK0Rx-1AdpBv zg#xe`HIB~r3h%9+494&K!h2b}{fkaGm`)~VYt9c}sbRQc(wL@01GRN%WuAVf+1?kF z0n2D&dtWbh-`tHm?%9nE+t(qJDd49^Ucu>?PGM!X4BH=|<4t5sE+(fZG0?FAxxof9 zW(nb_ABprjjQ;dxTs}Vn(`RGT?(OKlX*+`;rSImrl|$A1U#A03{ZS+JQ1;zycvnw8 zm`o-w`fEpKo8h6VK9h#fK*P0}e=eG)XQrU2DdzGVn+ERNx)Fc)uReusLj$-xzl;}t z^diomoX zF4aTCjn1+44sL3dX>+*(B&QDL4|Y7WAI7$W`-{MrBhF%Yif z-rxKLc7JRaqNxB>eUYB@GcS2qGXc>RVsBP!(o;L7rsys1$uBfn?bo$ z!aqOw&v0dC8jV^FRibRQDz(v%P3Zw_yY*JQH8F+p^K*FP%s5_r;V43WKl*y&^dzyt zAwo-;S(!s)`r`gS_}2$=|M}?`UVghh=G)&8-f6n(38S^^*MOx}A+A4K6~pKA!J^0F zAsaSBQK(v@Uf18Nv(z|-j}H?|l>(Lvc^DQqg>~;Ex9!8NL))2KyuQO6t<}-2mq{9e z=nEF9PYKl(SWhrg!{`|kP};`CgA@3lvgXq17| z$IhX&P{M!v`qNmrxWFa&V8nX))SGmC$!Ffx$VjsDplO&7uD(_}Oa*Ezc%<|?-Bn*H8IF5x~S`1_386z7Yn|tzrL|QO@u9?Nn>_w-;Vwb>tV%%yoQAmSx=4k zbGcb2<9_2U8{q`~2(`E2BL{A$0Twr*u8G155nEN8C}$KV&rHH7XVJ(m!19Hm0;%Cj z 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

o$-$;lwsOdI5N4p+9b5*O$5HGhxWiRhMqtq(d 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 KMNUMnLSTZZ40GB5 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/preview.png b/app/src/main/res/drawable/preview.png new file mode 100644 index 0000000000000000000000000000000000000000..6fd3097f9c5128de3c402f87ac2a070419adba7a GIT binary patch literal 704 zcmV;x0zdtUP)an`Cl@u0&IFx0@DmA;^OIphuTQQHaQ+xtDz18poM-TbVFedNoW>q?;lBQu z!Q`8wT?4KJQz9ajL}El|K%2@+CPqM(C!%Y*ZQ2pWsF9LHHB{_eo5_BZs-!9SJE7O3 zk?3L!bV)Ymk&VcTPKjoTE6{;EYCl3nxot=3lxsvT5>@p2kw|+tiD>i}5kr}H;yb3O zj= + + diff --git a/app/src/main/res/drawable/sound_off.xml b/app/src/main/res/drawable/sound_off.xml new file mode 100644 index 0000000..bee2fa8 --- /dev/null +++ b/app/src/main/res/drawable/sound_off.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/tg_avatar.png b/app/src/main/res/drawable/tg_avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..7f8cf52071f6ae8b2849119c337de142691d4d75 GIT binary patch literal 2797 zcmV zbQmidKm-b6p;k*fZKp7{bQ+yvKtn>vgOCsid6Ea@KKAt6dw2KlJNMpPz+dLxy?geY z?|i@Wz0U52;X0t;Q2*34zp$J!shoqCFpgZ#kV}_tqfZjReGIIV1Dyc7Lg#gyHH9}|UFNt3y%C}xqGD8jrET=+?S)wK5z z2V&Nu_;By6D$4iw z{@nSp4a)Xhc!aiL?^?Q=y(=nrGrMw(S=m*#0TN@vhR-UeZnxJ!hw|N*Zws=qTEF8fnVkVyX*9$)6eN!E$$lhjBO?vx$drGj4vf3VQjFvq&aqNU2EUo&J(mm&?Ot25^x)_b)ZUJW3$IZG4E<+N6OB+_qJgS}>Ey?+BoGic< z3plQ%E_>=mn8ZvZQ5hz4O;iFrujzYhBxmnwTSbR5tJ3za!=rI!t}hdIu57cII^2n`#Q3%O%mWe|1(0s*1e$!b}k&&Dl35;r{pgFcySvAz{%;lP+IoYy+L_*CZFe z)jm&P{FFgS*Em5GSunP&oSp8$iefJ+iCku?wR|r++=D@%c_H2O5hTCBzI3*7+KG@Q z1rM*HXjKrg0N0e_)?{L1U3DeH#^E-JikmD;%HNVi#L`famlCp?9Rk$xijPMk$IaU` zoh3mGGC2gpBoV|T8aZaKlh;hW3LAs0N#w4aK zyIq(>RQfs{ek_*mJf9;WFgM(d*~W=EzPO!r^-5R>vrvZn@+~P?Q<@$+PD--3njN}F zgJJnLI&rRsm#uYgpIy^6Qw+ejP*9SrAu-sJRoYC}b#vuOlu1_3PNPpc@+XgPH9N?b zRHt?}0Mq57h;@^^!q-G1w8-powq!NA4#G_=xnv~!vXy6vtc|| zl8$-PlWhB(?(>Iq(iYQ=EF#ub$j%d~&qCc*O-X&qw-7cYl!z;P$!d3HrJ%ZeGVUgq z6qqx)QOYJYr-!h!VFanP2tQbm;n?@m)nM3xlrXXA6K;U5D>F}#NWU_ivmh+iRqK$} zk1l7Xig=hZw#^}T72F$v12OvoYWJlDu4?1Id}x}qRpads-6AgkR=M-PiGOLhze@S}hCqOR8$ zI?qWLv3==`(9sR8G|n+hc;wvZ%F1`>RJv6rnQY0Pumo=?z8=U;$NKqGupl!9(L!Fh z_uEGBd~H95{NWu(0eQfIiY!b`5yla6$%qA)sJ^{W+lRk*jB0XA$VJ~=mKha686Cqxqdp1?N3z;Mvo05DBilv4^K=rF zamIle$U9`C`i&Z~wwEArCu(mk2*iqXZe ziVGtFqdp;Z%==}Puw6Mpn@G(ajE8;RIe5cu?L&TSJJ}!l@F`ut@JV&QhAic)@EH z-bp)^&fy`v*D_>Kz?_vA-yf{9BGP*_rk#rNoe%YW8V;>5ERPUdir{U0^+wkxjMf+4veI)T|?-=4m z3+;?_#ZZ&2JrgqP1D!sKPC@QFDYUQ3@28ee-KSH9>kkgXO-eoUuWsya7(_g1l}V}# zX^^YvWHJCuI#DP#wXQBYCn)+IK~&&I;n1(9zDs1X5!wK}@ZTP6I^KtF{jX5Y2lS09LY+)YQB>e;3RoL)U|RBN7VtM0Jgx4!l~| zhX)Ux!?BLYi(*l;c zYy3;xFmR0j>W@1U4ka6GX%kn;VvflJ*F zv{m03|9@oZQCQRXGIf3$p97HnxB%%_&FjjZi>7}}x3dM?8&@)cZ()pO<0gUZ*UOpk zTw8VNYtfF0`JTOWXJbx)^B1YWt-=il|EDy@*R^ddZ;NGAoDU{|{5R_#_Q3ONl2D54 z4&EdM`S;qMEI*1k5I0E`g*%$oP*V6l)z!O^KqzVE7`?uIy=7hLK1=`;CaI!uSHl7X zu$toaAv&FdI6+DDG?j%T@Uwj_8_GUL0+2A0dKB$y&f|XH9Udm!Lk|@1WCBYkyA;r+ zY~7rfh*1ZbtBo>ci^P*o34Zq1=8dzvkzo8EbeqG@tBpdU00000NkvXXu0mjf{cdZ* literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable/verificated.xml b/app/src/main/res/drawable/verificated.xml new file mode 100644 index 0000000..ef8414a --- /dev/null +++ b/app/src/main/res/drawable/verificated.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/layout/item_recycler.xml b/app/src/main/res/layout/item_recycler.xml new file mode 100644 index 0000000..ae382d3 --- /dev/null +++ b/app/src/main/res/layout/item_recycler.xml @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index f8c6127..ef531fe 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -7,4 +7,7 @@ #FF018786 #FF000000 #FFFFFFFF + #95999A + #F44336 + #3D95D4 \ No newline at end of file