Marked old classes as deprecated

This commit is contained in:
2021-02-21 19:25:55 +03:00
parent 662f1333c2
commit f15690758c
35 changed files with 147 additions and 311 deletions
+5 -9
View File
@@ -12,7 +12,7 @@
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppTheme"> android:theme="@style/AppTheme">
<activity android:name=".activity.MainActivity"> <activity android:name=".activity.MainActivityDeprecated">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
@@ -24,23 +24,19 @@
android:name=".service.LongPollService" android:name=".service.LongPollService"
android:enabled="true" /> android:enabled="true" />
<activity android:name=".activity.MessagesActivity" /> <activity android:name=".activity.MessagesActivityDeprecated" />
<activity <activity
android:name=".activity.StartActivity" android:name=".activity.LoginActivityDeprecated"
android:theme="@style/AppTheme.Start" />
<activity
android:name=".activity.LoginActivity"
android:label="@string/activity_login" /> android:label="@string/activity_login" />
<activity android:name=".activity.DropUserDataActivity" /> <activity android:name=".activity.DropUserDataActivity" />
<activity <activity
android:name=".activity.SettingsActivity" android:name=".activity.SettingsActivityDeprecated"
android:label="@string/navigation_settings" /> android:label="@string/navigation_settings" />
<activity android:name=".activity.UpdateActivity" /> <activity android:name=".activity.UpdateActivityDeprecated" />
<receiver <receiver
android:name=".receiver.MinuteReceiver" android:name=".receiver.MinuteReceiver"
@@ -16,7 +16,7 @@ class DropUserDataActivity : BaseActivity() {
TaskManager.execute { AppGlobal.database.clearAllTables() } TaskManager.execute { AppGlobal.database.clearAllTables() }
startActivity(Intent(this, MainActivity::class.java)) startActivity(Intent(this, MainActivityDeprecated::class.java))
finishAffinity() finishAffinity()
} }
@@ -19,7 +19,7 @@ import com.meloda.fast.extensions.ContextExtensions.drawable
import com.meloda.fast.extensions.DrawableExtensions.tint import com.meloda.fast.extensions.DrawableExtensions.tint
import com.meloda.fast.widget.Toolbar import com.meloda.fast.widget.Toolbar
class LoginActivity : BaseActivity() { class LoginActivityDeprecated : BaseActivity() {
private lateinit var toolbar: Toolbar private lateinit var toolbar: Toolbar
private lateinit var progressBar: ProgressBar private lateinit var progressBar: ProgressBar
@@ -125,7 +125,7 @@ class LoginActivity : BaseActivity() {
UserConfig.save() UserConfig.save()
finishAffinity() finishAffinity()
startActivity(Intent(this, MainActivity::class.java)) startActivity(Intent(this, MainActivityDeprecated::class.java))
} }
} catch (e: Exception) { } catch (e: Exception) {
e.printStackTrace() e.printStackTrace()
@@ -22,8 +22,8 @@ import com.meloda.fast.dialog.AccountDialog
import com.meloda.fast.extensions.ContextExtensions.color import com.meloda.fast.extensions.ContextExtensions.color
import com.meloda.fast.extensions.ContextExtensions.drawable import com.meloda.fast.extensions.ContextExtensions.drawable
import com.meloda.fast.extensions.DrawableExtensions.tint import com.meloda.fast.extensions.DrawableExtensions.tint
import com.meloda.fast.fragment.FragmentConversations import com.meloda.fast.fragment.FragmentConversationsDeprecated
import com.meloda.fast.fragment.FragmentFriends import com.meloda.fast.fragment.FragmentFriendsDeprecated
import com.meloda.fast.fragment.SettingsFragment import com.meloda.fast.fragment.SettingsFragment
import com.meloda.fast.fragment.LoginFragment import com.meloda.fast.fragment.LoginFragment
import com.meloda.fast.listener.OnResponseListener import com.meloda.fast.listener.OnResponseListener
@@ -33,12 +33,12 @@ import com.meloda.fast.util.ViewUtils
import com.meloda.fast.widget.Toolbar import com.meloda.fast.widget.Toolbar
class MainActivity : BaseActivity(), class MainActivityDeprecated : BaseActivity(),
NavigationView.OnNavigationItemSelectedListener, NavigationView.OnNavigationItemSelectedListener,
BottomNavigationView.OnNavigationItemSelectedListener { BottomNavigationView.OnNavigationItemSelectedListener {
private lateinit var fragmentConversations: FragmentConversations private lateinit var fragmentConversationsDeprecated: FragmentConversationsDeprecated
private lateinit var fragmentFriends: FragmentFriends private lateinit var fragmentFriendsDeprecated: FragmentFriendsDeprecated
private lateinit var settingsFragment: SettingsFragment private lateinit var settingsFragment: SettingsFragment
private var selectedId = 0 private var selectedId = 0
@@ -57,7 +57,7 @@ class MainActivity : BaseActivity(),
if (UserConfig.isLoggedIn()) { if (UserConfig.isLoggedIn()) {
supportFragmentManager.beginTransaction() supportFragmentManager.beginTransaction()
.replace(R.id.fragmentContainer, FragmentConversations()) .replace(R.id.fragmentContainer, FragmentConversationsDeprecated())
.commit() .commit()
} else { } else {
bottomBar.isVisible = false bottomBar.isVisible = false
@@ -89,8 +89,8 @@ class MainActivity : BaseActivity(),
} }
private fun prepareFragments() { private fun prepareFragments() {
fragmentConversations = FragmentConversations() fragmentConversationsDeprecated = FragmentConversationsDeprecated()
fragmentFriends = FragmentFriends(UserConfig.userId) fragmentFriendsDeprecated = FragmentFriendsDeprecated(UserConfig.userId)
settingsFragment = SettingsFragment() settingsFragment = SettingsFragment()
val containerId = R.id.fragmentContainer val containerId = R.id.fragmentContainer
@@ -98,7 +98,7 @@ class MainActivity : BaseActivity(),
FragmentSwitcher.addFragments( FragmentSwitcher.addFragments(
supportFragmentManager, supportFragmentManager,
containerId, containerId,
listOf(fragmentConversations) listOf(fragmentConversationsDeprecated)
) )
} }
@@ -156,7 +156,7 @@ class MainActivity : BaseActivity(),
startLongPoll() startLongPoll()
loadProfileInfo() loadProfileInfo()
} else { } else {
openStartScreen()
} }
} }
@@ -170,15 +170,10 @@ class MainActivity : BaseActivity(),
startService(Intent(this, LongPollService::class.java)) startService(Intent(this, LongPollService::class.java))
} }
private fun openStartScreen() {
finish()
startActivity(Intent(this, StartActivity::class.java))
}
private fun openConversationsScreen() { private fun openConversationsScreen() {
FragmentSwitcher.showFragment( FragmentSwitcher.showFragment(
supportFragmentManager, supportFragmentManager,
fragmentConversations.javaClass.simpleName, fragmentConversationsDeprecated.javaClass.simpleName,
true true
) )
} }
@@ -186,13 +181,13 @@ class MainActivity : BaseActivity(),
private fun openFriendsScreen() { private fun openFriendsScreen() {
FragmentSwitcher.showFragment( FragmentSwitcher.showFragment(
supportFragmentManager, supportFragmentManager,
fragmentFriends.javaClass.simpleName, fragmentFriendsDeprecated.javaClass.simpleName,
true true
) )
} }
private fun openSettingsScreen() { private fun openSettingsScreen() {
startActivity(Intent(this, SettingsActivity::class.java)) startActivity(Intent(this, SettingsActivityDeprecated::class.java))
} }
private fun loadProfileInfo() { private fun loadProfileInfo() {
@@ -15,8 +15,8 @@ import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.amulyakhare.textdrawable.TextDrawable import com.amulyakhare.textdrawable.TextDrawable
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.ui.presenter.MessagesPresenter import com.meloda.fast.activity.ui.presenter.MessagesPresenterDeprecated
import com.meloda.fast.activity.ui.view.MessagesView import com.meloda.fast.activity.ui.view.MessagesViewDeprecated
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
import com.meloda.fast.api.model.VKGroup import com.meloda.fast.api.model.VKGroup
import com.meloda.fast.api.model.VKModel import com.meloda.fast.api.model.VKModel
@@ -34,7 +34,7 @@ import com.meloda.fast.util.ViewUtils
import com.meloda.fast.widget.CircleImageView import com.meloda.fast.widget.CircleImageView
class MessagesActivity : BaseActivity(), MessagesView { class MessagesActivityDeprecated : BaseActivity(), MessagesViewDeprecated {
companion object { companion object {
const val TAG = "MessagesActivity" const val TAG = "MessagesActivity"
@@ -67,7 +67,7 @@ class MessagesActivity : BaseActivity(), MessagesView {
private var dialogUser: VKUser? = null private var dialogUser: VKUser? = null
private var dialogGroup: VKGroup? = null private var dialogGroup: VKGroup? = null
private lateinit var presenter: MessagesPresenter private lateinit var presenterDeprecated: MessagesPresenterDeprecated
lateinit var recyclerView: RecyclerView lateinit var recyclerView: RecyclerView
private lateinit var refreshLayout: SwipeRefreshLayout private lateinit var refreshLayout: SwipeRefreshLayout
@@ -86,7 +86,7 @@ class MessagesActivity : BaseActivity(), MessagesView {
override fun onDestroy() { override fun onDestroy() {
super.onDestroy() super.onDestroy()
presenter.destroy() presenterDeprecated.destroy()
} }
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
@@ -101,8 +101,8 @@ class MessagesActivity : BaseActivity(), MessagesView {
prepareRecyclerView() prepareRecyclerView()
prepareEditText() prepareEditText()
presenter = MessagesPresenter(this) presenterDeprecated = MessagesPresenterDeprecated(this)
presenter.setup(peerId, recyclerView) presenterDeprecated.setup(peerId, recyclerView)
} }
private fun initViews() { private fun initViews() {
@@ -142,9 +142,9 @@ class MessagesActivity : BaseActivity(), MessagesView {
chatAvatar.loadImage(avatar, placeholder) chatAvatar.loadImage(avatar, placeholder)
toolbar.setOnClickListener { presenter.openProfile() } toolbar.setOnClickListener { presenterDeprecated.openProfile() }
chatAvatar.setOnClickListener { presenter.openProfile() } chatAvatar.setOnClickListener { presenterDeprecated.openProfile() }
chatTitle.text = title chatTitle.text = title
@@ -209,7 +209,7 @@ class MessagesActivity : BaseActivity(), MessagesView {
android.R.id.home -> onBackPressed() android.R.id.home -> onBackPressed()
R.id.messagesRefresh -> { R.id.messagesRefresh -> {
presenter.updateData() presenterDeprecated.updateData()
} }
} }
@@ -237,11 +237,11 @@ class MessagesActivity : BaseActivity(), MessagesView {
setImageResource(R.drawable.ic_send) setImageResource(R.drawable.ic_send)
setOnClickListener { setOnClickListener {
presenter.sendMessage(chatMessage.text.toString(), attachments) presenterDeprecated.sendMessage(chatMessage.text.toString(), attachments)
} }
setOnLongClickListener { setOnLongClickListener {
presenter.sendMessage(chatMessage.text.toString(), attachments, false) presenterDeprecated.sendMessage(chatMessage.text.toString(), attachments, false)
true true
} }
} }
@@ -331,7 +331,7 @@ class MessagesActivity : BaseActivity(), MessagesView {
builder.setTitle(R.string.error_occurred) builder.setTitle(R.string.error_occurred)
builder.setMessage(R.string.error_loading_message) builder.setMessage(R.string.error_loading_message)
builder.setPositiveButton(R.string.retry) { _, _ -> builder.setPositiveButton(R.string.retry) { _, _ ->
presenter.loadConversation(peerId) presenterDeprecated.loadConversation(peerId)
} }
builder.setNegativeButton(R.string.no) { _, _ -> onBackPressed() } builder.setNegativeButton(R.string.no) { _, _ -> onBackPressed() }
builder.setCancelable(false) builder.setCancelable(false)
@@ -9,7 +9,7 @@ import com.meloda.fast.fragment.SettingsFragment
import com.meloda.fast.util.ColorUtils import com.meloda.fast.util.ColorUtils
import com.meloda.fast.widget.Toolbar import com.meloda.fast.widget.Toolbar
class SettingsActivity : BaseActivity() { class SettingsActivityDeprecated : BaseActivity() {
private lateinit var toolbar: Toolbar private lateinit var toolbar: Toolbar
@@ -1,82 +0,0 @@
package com.meloda.fast.activity
import android.annotation.SuppressLint
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.widget.Toast
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.widget.AppCompatEditText
import com.google.android.material.button.MaterialButton
import com.meloda.fast.R
import com.meloda.fast.api.UserConfig
import com.meloda.fast.base.BaseActivity
@SuppressLint("InflateParams")
class StartActivity : BaseActivity() {
private lateinit var startEnter: MaterialButton
private lateinit var startLoginSettings: MaterialButton
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_start)
initViews()
prepareEnterButton()
}
private fun initViews() {
startEnter = findViewById(R.id.startEnter)
startLoginSettings = findViewById(R.id.startLoginSettings)
}
private fun prepareEnterButton() {
startEnter.setOnClickListener {
startActivity(Intent(this, LoginActivity::class.java))
}
startEnter.setOnLongClickListener {
showUserIdTokenDialog()
true
}
startLoginSettings.setOnClickListener {
Toast.makeText(this, R.string.in_progress_placeholder, Toast.LENGTH_LONG).show()
}
}
private fun showUserIdTokenDialog() {
AlertDialog.Builder(this).apply {
setTitle(R.string.custom_data)
val view = LayoutInflater.from(this@StartActivity)
.inflate(R.layout.activity_login_custom_data, null, false) as View
setView(view)
val userId = view.findViewById<AppCompatEditText>(R.id.customDataUserId)
val token = view.findViewById<AppCompatEditText>(R.id.customDataToken)
setPositiveButton(android.R.string.ok) { _, _ ->
if (userId.text.toString().isEmpty() || token.text.toString().isEmpty())
return@setPositiveButton
val id = userId.text.toString().toInt()
val accessToken = token.text.toString()
if (id < 1) return@setPositiveButton
UserConfig.userId = id
UserConfig.token = accessToken
UserConfig.save()
finish()
startActivity(Intent(this@StartActivity, MainActivity::class.java))
}
setCancelable(false)
setNegativeButton(android.R.string.cancel, null)
}.show()
}
}
@@ -36,7 +36,7 @@ import java.text.SimpleDateFormat
import java.util.* import java.util.*
class UpdateActivity : BaseActivity() { class UpdateActivityDeprecated : BaseActivity() {
companion object { companion object {
private const val FILE_BASE_PATH = "file://" private const val FILE_BASE_PATH = "file://"
@@ -149,7 +149,7 @@ class UpdateActivity : BaseActivity() {
override fun onResponse(response: Any?) { override fun onResponse(response: Any?) {
timer.cancel() timer.cancel()
installUpdate(this@UpdateActivity, file) installUpdate(this@UpdateActivityDeprecated, file)
unregisterReceiver(receiver) unregisterReceiver(receiver)
@@ -218,7 +218,7 @@ class UpdateActivity : BaseActivity() {
isChecking = false isChecking = false
isNewUpdate = true isNewUpdate = true
this@UpdateActivity.newUpdate = updateInfo this@UpdateActivityDeprecated.newUpdate = updateInfo
refreshState() refreshState()
} }
@@ -227,7 +227,7 @@ class UpdateActivity : BaseActivity() {
isNewUpdate = false isNewUpdate = false
isChecking = false isChecking = false
this@UpdateActivity.newUpdate = NewUpdateInfo() this@UpdateActivityDeprecated.newUpdate = NewUpdateInfo()
refreshState() refreshState()
} }
@@ -2,9 +2,9 @@ package com.meloda.fast.activity.ui.presenter
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.ui.repository.MessagesRepository import com.meloda.fast.activity.ui.repository.MessagesRepositoryDeprecated
import com.meloda.fast.activity.ui.view.MessagesView import com.meloda.fast.activity.ui.view.MessagesViewDeprecated
import com.meloda.fast.adapter.MessagesAdapter import com.meloda.fast.adapter.MessagesAdapterDeprecated
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.api.VKApiKeys import com.meloda.fast.api.VKApiKeys
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
@@ -20,10 +20,10 @@ import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpPresenter import com.meloda.mvp.MvpPresenter
import kotlin.random.Random import kotlin.random.Random
class MessagesPresenter(viewState: MessagesView) : class MessagesPresenterDeprecated(viewState: MessagesViewDeprecated) :
MvpPresenter<VKMessage, MessagesRepository, MessagesView>( MvpPresenter<VKMessage, MessagesRepositoryDeprecated, MessagesViewDeprecated>(
viewState, viewState,
MessagesRepository::class.java.name MessagesRepositoryDeprecated::class.java.name
), ),
ItemClickListener, ItemClickListener,
ItemLongClickListener, ItemLongClickListener,
@@ -33,7 +33,7 @@ class MessagesPresenter(viewState: MessagesView) :
const val DEFAULT_MESSAGES_COUNT = 30 const val DEFAULT_MESSAGES_COUNT = 30
} }
private lateinit var adapter: MessagesAdapter private lateinit var adapter: MessagesAdapterDeprecated
private lateinit var conversation: VKConversation private lateinit var conversation: VKConversation
private var peerId: Int = -1 private var peerId: Int = -1
@@ -65,7 +65,7 @@ class MessagesPresenter(viewState: MessagesView) :
} }
private fun createAdapter() { private fun createAdapter() {
adapter = MessagesAdapter(context!!, arrayListOf(), conversation).also { adapter = MessagesAdapterDeprecated(context!!, arrayListOf(), conversation).also {
it.itemClickListener = this it.itemClickListener = this
it.itemLongClickListener = this it.itemLongClickListener = this
} }
@@ -18,7 +18,7 @@ import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpRepository import com.meloda.mvp.MvpRepository
import java.util.* import java.util.*
class MessagesRepository : MvpRepository<VKMessage>() { class MessagesRepositoryDeprecated : MvpRepository<VKMessage>() {
fun loadMessages( fun loadMessages(
peerId: Int, peerId: Int,
@@ -3,7 +3,7 @@ package com.meloda.fast.activity.ui.view
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
import com.meloda.mvp.MvpView import com.meloda.mvp.MvpView
interface MessagesView : MvpView { interface MessagesViewDeprecated : MvpView {
fun showChatPanel() fun showChatPanel()
@@ -17,7 +17,7 @@ import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.adapter.diffutil.ConversationsCallback import com.meloda.fast.adapter.diffutil.ConversationsCallbackDeprecated
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.api.VKApiKeys import com.meloda.fast.api.VKApiKeys
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
@@ -37,10 +37,10 @@ import com.meloda.fast.widget.CircleImageView
@Suppress("UNCHECKED_CAST") @Suppress("UNCHECKED_CAST")
class ConversationsAdapter( class ConversationsAdapterDeprecated(
val recyclerView: RecyclerView, val recyclerView: RecyclerView,
values: ArrayList<VKConversation> values: ArrayList<VKConversation>
) : BaseAdapter<VKConversation, ConversationsAdapter.ConversationHolder>( ) : BaseAdapter<VKConversation, ConversationsAdapterDeprecated.ConversationHolder>(
recyclerView.context, recyclerView.context,
values values
), TaskManager.OnEventListener { ), TaskManager.OnEventListener {
@@ -97,7 +97,7 @@ class ConversationsAdapter(
} }
fun notifyChanges(oldList: List<VKConversation>, newList: List<VKConversation> = values) { fun notifyChanges(oldList: List<VKConversation>, newList: List<VKConversation> = values) {
val callback = ConversationsCallback(oldList, newList) val callback = ConversationsCallbackDeprecated(oldList, newList)
val diff = DiffUtil.calculateDiff(callback) val diff = DiffUtil.calculateDiff(callback)
diff.dispatchUpdatesTo(this) diff.dispatchUpdatesTo(this)
@@ -128,7 +128,7 @@ class ConversationsAdapter(
fun bind(position: Int, payloads: MutableList<Any>) { fun bind(position: Int, payloads: MutableList<Any>) {
Log.d(TAG, "bind position: $position") Log.d(TAG, "bind position: $position")
val conversation = this@ConversationsAdapter[position] val conversation = this@ConversationsAdapterDeprecated[position]
val lastMessage = conversation.lastMessage val lastMessage = conversation.lastMessage
@@ -157,7 +157,7 @@ class ConversationsAdapter(
if (payloads.isNotEmpty()) { if (payloads.isNotEmpty()) {
for (payload in payloads) { for (payload in payloads) {
when (payload) { when (payload) {
ConversationsCallback.CONVERSATION -> { ConversationsCallbackDeprecated.CONVERSATION -> {
setUserOnline(conversation, peerUser) setUserOnline(conversation, peerUser)
prepareUserAvatar( prepareUserAvatar(
conversation, conversation,
@@ -170,7 +170,7 @@ class ConversationsAdapter(
setIsRead(lastMessage, conversation) setIsRead(lastMessage, conversation)
setCounterBackground(conversation) setCounterBackground(conversation)
} }
ConversationsCallback.MESSAGE -> { ConversationsCallbackDeprecated.MESSAGE -> {
prepareUserAvatar( prepareUserAvatar(
conversation, conversation,
lastMessage, lastMessage,
@@ -181,14 +181,14 @@ class ConversationsAdapter(
setIsRead(lastMessage, conversation) setIsRead(lastMessage, conversation)
setDate(lastMessage) setDate(lastMessage)
} }
ConversationsCallback.GROUP -> { ConversationsCallbackDeprecated.GROUP -> {
prepareAvatar(dialogTitle, conversation, peerUser, peerGroup) prepareAvatar(dialogTitle, conversation, peerUser, peerGroup)
} }
ConversationsCallback.USER -> { ConversationsCallbackDeprecated.USER -> {
setUserOnline(conversation, peerUser) setUserOnline(conversation, peerUser)
prepareAvatar(dialogTitle, conversation, peerUser, peerGroup) prepareAvatar(dialogTitle, conversation, peerUser, peerGroup)
} }
ConversationsCallback.EDIT_MESSAGE -> { ConversationsCallbackDeprecated.EDIT_MESSAGE -> {
prepareUserAvatar( prepareUserAvatar(
conversation, conversation,
lastMessage, lastMessage,
@@ -199,19 +199,19 @@ class ConversationsAdapter(
setIsRead(lastMessage, conversation) setIsRead(lastMessage, conversation)
setDate(lastMessage) setDate(lastMessage)
} }
ConversationsCallback.DATE -> { ConversationsCallbackDeprecated.DATE -> {
setDate(lastMessage) setDate(lastMessage)
} }
ConversationsCallback.ONLINE -> { ConversationsCallbackDeprecated.ONLINE -> {
setUserOnline(conversation, peerUser) setUserOnline(conversation, peerUser)
} }
ConversationsCallback.ATTACHMENTS -> { ConversationsCallbackDeprecated.ATTACHMENTS -> {
prepareAttachments(lastMessage) prepareAttachments(lastMessage)
} }
ConversationsCallback.AVATAR -> { ConversationsCallbackDeprecated.AVATAR -> {
prepareAvatar(dialogTitle, conversation, peerUser, peerGroup) prepareAvatar(dialogTitle, conversation, peerUser, peerGroup)
} }
ConversationsCallback.USER_AVATAR -> { ConversationsCallbackDeprecated.USER_AVATAR -> {
prepareUserAvatar( prepareUserAvatar(
conversation, conversation,
lastMessage, lastMessage,
@@ -219,10 +219,10 @@ class ConversationsAdapter(
fromGroup fromGroup
) )
} }
ConversationsCallback.READ -> { ConversationsCallbackDeprecated.READ -> {
setIsRead(lastMessage, conversation) setIsRead(lastMessage, conversation)
} }
ConversationsCallback.NOTIFICATIONS -> { ConversationsCallbackDeprecated.NOTIFICATIONS -> {
setCounterBackground(conversation) setCounterBackground(conversation)
} }
} }
@@ -509,7 +509,7 @@ class ConversationsAdapter(
conversation.lastMessage = message conversation.lastMessage = message
notifyItemChanged(index, ConversationsCallback.EDIT_MESSAGE) notifyItemChanged(index, ConversationsCallbackDeprecated.EDIT_MESSAGE)
} }
private fun readMessage(peerId: Int, messageId: Int) { private fun readMessage(peerId: Int, messageId: Int) {
@@ -531,7 +531,7 @@ class ConversationsAdapter(
conversation.lastMessageId - messageId conversation.lastMessageId - messageId
} }
notifyItemChanged(index, ConversationsCallback.READ) notifyItemChanged(index, ConversationsCallbackDeprecated.READ)
} }
@Deprecated("Need to rewrite") @Deprecated("Need to rewrite")
@@ -651,7 +651,7 @@ class ConversationsAdapter(
set(index, conversation) set(index, conversation)
AppGlobal.post { notifyItemChanged(index, ConversationsCallback.CONVERSATION) } AppGlobal.post { notifyItemChanged(index, ConversationsCallbackDeprecated.CONVERSATION) }
} }
} }
@@ -686,7 +686,7 @@ class ConversationsAdapter(
lastMessage = MemoryCache.getMessageById(messageId) ?: return@execute lastMessage = MemoryCache.getMessageById(messageId) ?: return@execute
} }
AppGlobal.handler.post { notifyItemChanged(index, ConversationsCallback.MESSAGE) } AppGlobal.handler.post { notifyItemChanged(index, ConversationsCallbackDeprecated.MESSAGE) }
} }
} }
@@ -14,7 +14,7 @@ import androidx.core.view.isVisible
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import com.meloda.fast.BuildConfig import com.meloda.fast.BuildConfig
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.MessagesActivity import com.meloda.fast.activity.MessagesActivityDeprecated
import com.meloda.fast.api.VKApiKeys import com.meloda.fast.api.VKApiKeys
import com.meloda.fast.api.model.* import com.meloda.fast.api.model.*
import com.meloda.fast.api.util.VKUtil import com.meloda.fast.api.util.VKUtil
@@ -36,12 +36,12 @@ import kotlin.math.abs
@Suppress("UNCHECKED_CAST") @Suppress("UNCHECKED_CAST")
class MessagesAdapter( class MessagesAdapterDeprecated(
context: Context, context: Context,
values: ArrayList<VKMessage>, values: ArrayList<VKMessage>,
var conversation: VKConversation var conversation: VKConversation
) : BaseAdapter<VKMessage, MessagesAdapter.Holder>(context, values), ) : BaseAdapter<VKMessage, MessagesAdapterDeprecated.Holder>(context, values),
TaskManager.OnEventListener { TaskManager.OnEventListener {
companion object { companion object {
@@ -60,7 +60,7 @@ class MessagesAdapter(
const val TAG = "MessagesAdapter" const val TAG = "MessagesAdapter"
} }
private var recyclerView = (context as MessagesActivity).recyclerView private var recyclerView = (context as MessagesActivityDeprecated).recyclerView
private var layoutManager = recyclerView.layoutManager as LinearLayoutManager private var layoutManager = recyclerView.layoutManager as LinearLayoutManager
var isNotCachedValues = false var isNotCachedValues = false
@@ -8,7 +8,7 @@ import android.widget.TextView
import androidx.core.view.isVisible import androidx.core.view.isVisible
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.adapter.diffutil.UsersCallback import com.meloda.fast.adapter.diffutil.UsersCallbackDeprecated
import com.meloda.fast.api.model.VKUser import com.meloda.fast.api.model.VKUser
import com.meloda.fast.api.util.VKUtil import com.meloda.fast.api.util.VKUtil
import com.meloda.fast.base.BaseAdapter import com.meloda.fast.base.BaseAdapter
@@ -16,8 +16,8 @@ import com.meloda.fast.base.BaseHolder
import com.meloda.fast.util.ImageUtils import com.meloda.fast.util.ImageUtils
import com.meloda.fast.widget.CircleImageView import com.meloda.fast.widget.CircleImageView
class UsersAdapter(context: Context, values: ArrayList<VKUser>) : class UsersAdapterDeprecated(context: Context, values: ArrayList<VKUser>) :
BaseAdapter<VKUser, UsersAdapter.ViewHolder>(context, values) { BaseAdapter<VKUser, UsersAdapterDeprecated.ViewHolder>(context, values) {
var isLoading: Boolean = false var isLoading: Boolean = false
var currentPosition: Int = 0 var currentPosition: Int = 0
@@ -60,7 +60,7 @@ class UsersAdapter(context: Context, values: ArrayList<VKUser>) :
} }
fun notifyChanges(oldList: List<VKUser>, newList: List<VKUser> = values) { fun notifyChanges(oldList: List<VKUser>, newList: List<VKUser> = values) {
val callback = UsersCallback(oldList, newList) val callback = UsersCallbackDeprecated(oldList, newList)
val diff = DiffUtil.calculateDiff(callback, false) val diff = DiffUtil.calculateDiff(callback, false)
diff.dispatchUpdatesTo(this) diff.dispatchUpdatesTo(this)
@@ -3,7 +3,7 @@ package com.meloda.fast.adapter.diffutil
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
class ConversationsCallback( class ConversationsCallbackDeprecated(
private val oldList: List<VKConversation>, private val oldList: List<VKConversation>,
private val newList: List<VKConversation> private val newList: List<VKConversation>
) : DiffUtil.Callback() { ) : DiffUtil.Callback() {
@@ -3,7 +3,7 @@ package com.meloda.fast.adapter.diffutil
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import com.meloda.fast.api.model.VKUser import com.meloda.fast.api.model.VKUser
class UsersCallback(private val oldList: List<VKUser>, private val newList: List<VKUser>) : class UsersCallbackDeprecated(private val oldList: List<VKUser>, private val newList: List<VKUser>) :
DiffUtil.Callback() { DiffUtil.Callback() {
companion object { companion object {
@@ -3,7 +3,7 @@ package com.meloda.fast.base
import androidx.annotation.IdRes import androidx.annotation.IdRes
import androidx.appcompat.widget.Toolbar import androidx.appcompat.widget.Toolbar
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.meloda.fast.activity.MainActivity import com.meloda.fast.activity.MainActivityDeprecated
abstract class BaseFragment : Fragment() { abstract class BaseFragment : Fragment() {
@@ -11,7 +11,7 @@ abstract class BaseFragment : Fragment() {
val toolbar: Toolbar = requireView().findViewById(resId) val toolbar: Toolbar = requireView().findViewById(resId)
activity?.let { activity?.let {
if (it is MainActivity && toolbar is com.meloda.fast.widget.Toolbar) it.initToolbar( if (it is MainActivityDeprecated && toolbar is com.meloda.fast.widget.Toolbar) it.initToolbar(
toolbar toolbar
) )
} }
@@ -3,9 +3,8 @@ package com.meloda.fast.common
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentManager
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.fragment.FragmentConversations import com.meloda.fast.fragment.FragmentConversationsDeprecated
import com.meloda.fast.fragment.FragmentFriends import com.meloda.fast.fragment.FragmentFriendsDeprecated
import com.meloda.fast.fragment.FragmentImportant
object FragmentSwitcher { object FragmentSwitcher {
@@ -109,9 +108,8 @@ object FragmentSwitcher {
private fun createFragmentByTag(tag: String): Fragment { private fun createFragmentByTag(tag: String): Fragment {
return when (tag) { return when (tag) {
"FragmentFriends" -> FragmentFriends() "FragmentFriends" -> FragmentFriendsDeprecated()
"FragmentImportant" -> FragmentImportant() "FragmentConversations" -> FragmentConversationsDeprecated()
"FragmentConversations" -> FragmentConversations()
else -> Fragment() else -> Fragment()
} }
} }
@@ -10,7 +10,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.SettingsActivity import com.meloda.fast.activity.SettingsActivityDeprecated
import com.meloda.fast.adapter.SimpleItemAdapter import com.meloda.fast.adapter.SimpleItemAdapter
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.base.BaseFullscreenDialog import com.meloda.fast.base.BaseFullscreenDialog
@@ -99,7 +99,7 @@ class AccountDialog : BaseFullscreenDialog(), ItemClickListener {
} }
private fun openSettingsScreen() { private fun openSettingsScreen() {
startActivity(Intent(requireContext(), SettingsActivity::class.java)) startActivity(Intent(requireContext(), SettingsActivityDeprecated::class.java))
} }
override fun onItemClick(position: Int) { override fun onItemClick(position: Int) {
@@ -14,7 +14,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.MessagesActivity import com.meloda.fast.activity.MessagesActivityDeprecated
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.api.VKApiKeys import com.meloda.fast.api.VKApiKeys
import com.meloda.fast.base.BaseFragment import com.meloda.fast.base.BaseFragment
@@ -23,17 +23,17 @@ import com.meloda.fast.common.TaskManager
import com.meloda.fast.event.EventInfo import com.meloda.fast.event.EventInfo
import com.meloda.fast.extensions.FragmentExtensions.findViewById import com.meloda.fast.extensions.FragmentExtensions.findViewById
import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread
import com.meloda.fast.fragment.ui.presenter.ConversationsPresenter import com.meloda.fast.fragment.ui.presenter.ConversationsPresenterDeprecated
import com.meloda.fast.fragment.ui.view.ConversationsView import com.meloda.fast.fragment.ui.view.ConversationsViewDeprecated
import com.meloda.fast.util.AndroidUtils import com.meloda.fast.util.AndroidUtils
import com.meloda.fast.util.ViewUtils import com.meloda.fast.util.ViewUtils
import com.meloda.fast.widget.Toolbar import com.meloda.fast.widget.Toolbar
@Suppress("UNCHECKED_CAST") @Suppress("UNCHECKED_CAST")
class FragmentConversations : BaseFragment(), ConversationsView { class FragmentConversationsDeprecated : BaseFragment(), ConversationsViewDeprecated {
private lateinit var presenter: ConversationsPresenter private lateinit var presenterDeprecated: ConversationsPresenterDeprecated
private lateinit var toolbar: Toolbar private lateinit var toolbar: Toolbar
private lateinit var refreshLayout: SwipeRefreshLayout private lateinit var refreshLayout: SwipeRefreshLayout
@@ -57,8 +57,8 @@ class FragmentConversations : BaseFragment(), ConversationsView {
prepareRecyclerView() prepareRecyclerView()
prepareRefreshLayout() prepareRefreshLayout()
presenter = ConversationsPresenter(this) presenterDeprecated = ConversationsPresenterDeprecated(this)
presenter.setup(recyclerView, refreshLayout) presenterDeprecated.setup(recyclerView, refreshLayout)
} }
private fun initViews() { private fun initViews() {
@@ -122,7 +122,7 @@ class FragmentConversations : BaseFragment(), ConversationsView {
} }
override fun openChat(extras: Bundle) { override fun openChat(extras: Bundle) {
startActivity(Intent(requireContext(), MessagesActivity::class.java).putExtras(extras)) startActivity(Intent(requireContext(), MessagesActivityDeprecated::class.java).putExtras(extras))
} }
override fun showErrorSnackbar(t: Throwable) { override fun showErrorSnackbar(t: Throwable) {
@@ -15,7 +15,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.MessagesActivity import com.meloda.fast.activity.MessagesActivityDeprecated
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.api.VKApiKeys import com.meloda.fast.api.VKApiKeys
import com.meloda.fast.base.BaseFragment import com.meloda.fast.base.BaseFragment
@@ -23,14 +23,14 @@ import com.meloda.fast.common.AppGlobal
import com.meloda.fast.common.TaskManager import com.meloda.fast.common.TaskManager
import com.meloda.fast.event.EventInfo import com.meloda.fast.event.EventInfo
import com.meloda.fast.extensions.FragmentExtensions.findViewById import com.meloda.fast.extensions.FragmentExtensions.findViewById
import com.meloda.fast.fragment.ui.presenter.FriendsPresenter import com.meloda.fast.fragment.ui.presenter.FriendsPresenterDeprecated
import com.meloda.fast.fragment.ui.view.FriendsView import com.meloda.fast.fragment.ui.view.FriendsViewDeprecated
import com.meloda.fast.util.ViewUtils import com.meloda.fast.util.ViewUtils
import com.meloda.fast.widget.Toolbar import com.meloda.fast.widget.Toolbar
class FragmentFriends(private val userId: Int = 0) : BaseFragment(), FriendsView { class FragmentFriendsDeprecated(private val userId: Int = 0) : BaseFragment(), FriendsViewDeprecated {
private lateinit var presenter: FriendsPresenter private lateinit var presenterDeprecated: FriendsPresenterDeprecated
private lateinit var toolbar: Toolbar private lateinit var toolbar: Toolbar
private lateinit var recyclerView: RecyclerView private lateinit var recyclerView: RecyclerView
@@ -56,8 +56,8 @@ class FragmentFriends(private val userId: Int = 0) : BaseFragment(), FriendsView
prepareRecyclerView() prepareRecyclerView()
prepareRefreshLayout() prepareRefreshLayout()
presenter = FriendsPresenter(this) presenterDeprecated = FriendsPresenterDeprecated(this)
presenter.setup(userId, recyclerView, refreshLayout) presenterDeprecated.setup(userId, recyclerView, refreshLayout)
} }
private fun initViews() { private fun initViews() {
@@ -104,7 +104,7 @@ class FragmentFriends(private val userId: Int = 0) : BaseFragment(), FriendsView
} }
override fun onDetach() { override fun onDetach() {
presenter.destroy() presenterDeprecated.destroy()
super.onDetach() super.onDetach()
} }
@@ -131,7 +131,7 @@ class FragmentFriends(private val userId: Int = 0) : BaseFragment(), FriendsView
} }
override fun openChat(extras: Bundle) { override fun openChat(extras: Bundle) {
startActivity(Intent(requireContext(), MessagesActivity::class.java).putExtras(extras)) startActivity(Intent(requireContext(), MessagesActivityDeprecated::class.java).putExtras(extras))
} }
override fun showErrorSnackbar(t: Throwable) { override fun showErrorSnackbar(t: Throwable) {
@@ -1,21 +0,0 @@
package com.meloda.fast.fragment
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import com.meloda.fast.R
import com.meloda.fast.base.BaseFragment
class FragmentImportant : BaseFragment() {
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.fragment_important, container, false)
}
}
@@ -1,8 +0,0 @@
package com.meloda.fast.fragment
import com.meloda.fast.base.BaseFragment
class FragmentSearch : BaseFragment() {
inner class SearchConversations : BaseFragment()
inner class SearchMessages : BaseFragment()
}
@@ -9,7 +9,7 @@ import androidx.preference.PreferenceFragmentCompat
import androidx.preference.PreferenceScreen import androidx.preference.PreferenceScreen
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.DropUserDataActivity import com.meloda.fast.activity.DropUserDataActivity
import com.meloda.fast.activity.UpdateActivity import com.meloda.fast.activity.UpdateActivityDeprecated
import com.meloda.fast.common.AppGlobal import com.meloda.fast.common.AppGlobal
import com.meloda.fast.common.TaskManager import com.meloda.fast.common.TaskManager
import com.meloda.fast.extensions.ContextExtensions.color import com.meloda.fast.extensions.ContextExtensions.color
@@ -171,7 +171,7 @@ class SettingsFragment : PreferenceFragmentCompat(),
} }
private fun openUpdateScreen() { private fun openUpdateScreen() {
startActivity(Intent(requireContext(), UpdateActivity::class.java)) startActivity(Intent(requireContext(), UpdateActivityDeprecated::class.java))
} }
override fun onPreferenceChange(preference: Preference, newValue: Any?): Boolean { override fun onPreferenceChange(preference: Preference, newValue: Any?): Boolean {
@@ -6,16 +6,16 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.meloda.fast.BuildConfig import com.meloda.fast.BuildConfig
import com.meloda.fast.activity.MessagesActivity import com.meloda.fast.activity.MessagesActivityDeprecated
import com.meloda.fast.adapter.ConversationsAdapter import com.meloda.fast.adapter.ConversationsAdapterDeprecated
import com.meloda.fast.adapter.diffutil.ConversationsCallback import com.meloda.fast.adapter.diffutil.ConversationsCallbackDeprecated
import com.meloda.fast.api.model.VKConversation import com.meloda.fast.api.model.VKConversation
import com.meloda.fast.api.util.VKUtil import com.meloda.fast.api.util.VKUtil
import com.meloda.fast.common.TaskManager import com.meloda.fast.common.TaskManager
import com.meloda.fast.common.TimeManager import com.meloda.fast.common.TimeManager
import com.meloda.fast.database.MemoryCache import com.meloda.fast.database.MemoryCache
import com.meloda.fast.fragment.ui.repository.ConversationsRepository import com.meloda.fast.fragment.ui.repository.ConversationsRepositoryDeprecated
import com.meloda.fast.fragment.ui.view.ConversationsView import com.meloda.fast.fragment.ui.view.ConversationsViewDeprecated
import com.meloda.fast.listener.ItemClickListener import com.meloda.fast.listener.ItemClickListener
import com.meloda.fast.listener.ItemLongClickListener import com.meloda.fast.listener.ItemLongClickListener
import com.meloda.fast.util.AndroidUtils import com.meloda.fast.util.AndroidUtils
@@ -24,10 +24,10 @@ import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpPresenter import com.meloda.mvp.MvpPresenter
import java.util.* import java.util.*
class ConversationsPresenter(viewState: ConversationsView) : class ConversationsPresenterDeprecated(viewState: ConversationsViewDeprecated) :
MvpPresenter<VKConversation, ConversationsRepository, ConversationsView>( MvpPresenter<VKConversation, ConversationsRepositoryDeprecated, ConversationsViewDeprecated>(
viewState, viewState,
ConversationsRepository::class.java.name ConversationsRepositoryDeprecated::class.java.name
), ),
ItemClickListener, ItemClickListener,
ItemLongClickListener, ItemLongClickListener,
@@ -39,7 +39,7 @@ class ConversationsPresenter(viewState: ConversationsView) :
private var conversationsCount: Int = 0 private var conversationsCount: Int = 0
private lateinit var adapter: ConversationsAdapter private lateinit var adapter: ConversationsAdapterDeprecated
private lateinit var recyclerView: RecyclerView private lateinit var recyclerView: RecyclerView
private lateinit var layoutManager: LinearLayoutManager private lateinit var layoutManager: LinearLayoutManager
@@ -194,7 +194,7 @@ class ConversationsPresenter(viewState: ConversationsView) :
} }
private fun createAdapter() { private fun createAdapter() {
adapter = ConversationsAdapter(recyclerView, arrayListOf()).also { adapter = ConversationsAdapterDeprecated(recyclerView, arrayListOf()).also {
it.itemClickListener = this it.itemClickListener = this
it.itemLongClickListener = this it.itemLongClickListener = this
} }
@@ -225,7 +225,7 @@ class ConversationsPresenter(viewState: ConversationsView) :
} }
override fun onMinuteChange(currentMinute: Int) { override fun onMinuteChange(currentMinute: Int) {
post { adapter.notifyItemRangeChanged(0, adapter.itemCount, ConversationsCallback.DATE) } post { adapter.notifyItemRangeChanged(0, adapter.itemCount, ConversationsCallbackDeprecated.DATE) }
} }
private fun openChat(conversation: VKConversation) { private fun openChat(conversation: VKConversation) {
@@ -234,17 +234,17 @@ class ConversationsPresenter(viewState: ConversationsView) :
val peerGroup = MemoryCache.getGroupById(conversation.conversationId) val peerGroup = MemoryCache.getGroupById(conversation.conversationId)
val extras = Bundle().also { val extras = Bundle().also {
it.putInt(MessagesActivity.TAG_EXTRA_ID, conversation.conversationId) it.putInt(MessagesActivityDeprecated.TAG_EXTRA_ID, conversation.conversationId)
it.putString( it.putString(
MessagesActivity.TAG_EXTRA_TITLE, MessagesActivityDeprecated.TAG_EXTRA_TITLE,
VKUtil.getTitle(conversation, peerUser, peerGroup) VKUtil.getTitle(conversation, peerUser, peerGroup)
) )
it.putString( it.putString(
MessagesActivity.TAG_EXTRA_AVATAR, MessagesActivityDeprecated.TAG_EXTRA_AVATAR,
VKUtil.getAvatar(conversation, peerUser, peerGroup) VKUtil.getAvatar(conversation, peerUser, peerGroup)
) )
it.putSerializable(MessagesActivity.TAG_EXTRA_USER, peerUser) it.putSerializable(MessagesActivityDeprecated.TAG_EXTRA_USER, peerUser)
it.putSerializable(MessagesActivity.TAG_EXTRA_GROUP, peerGroup) it.putSerializable(MessagesActivityDeprecated.TAG_EXTRA_GROUP, peerGroup)
} }
post { viewState.openChat(extras) } post { viewState.openChat(extras) }
@@ -5,21 +5,21 @@ import android.util.Log
import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
import com.meloda.fast.activity.MessagesActivity import com.meloda.fast.activity.MessagesActivityDeprecated
import com.meloda.fast.adapter.UsersAdapter import com.meloda.fast.adapter.UsersAdapterDeprecated
import com.meloda.fast.api.model.VKUser import com.meloda.fast.api.model.VKUser
import com.meloda.fast.fragment.ui.repository.FriendsRepository import com.meloda.fast.fragment.ui.repository.FriendsRepositoryDeprecated
import com.meloda.fast.fragment.ui.view.FriendsView import com.meloda.fast.fragment.ui.view.FriendsViewDeprecated
import com.meloda.fast.listener.ItemClickListener import com.meloda.fast.listener.ItemClickListener
import com.meloda.fast.util.AndroidUtils import com.meloda.fast.util.AndroidUtils
import com.meloda.fast.util.ArrayUtils import com.meloda.fast.util.ArrayUtils
import com.meloda.mvp.MvpOnLoadListener import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpPresenter import com.meloda.mvp.MvpPresenter
class FriendsPresenter(viewState: FriendsView) : class FriendsPresenterDeprecated(viewState: FriendsViewDeprecated) :
MvpPresenter<VKUser, FriendsRepository, FriendsView>( MvpPresenter<VKUser, FriendsRepositoryDeprecated, FriendsViewDeprecated>(
viewState, viewState,
FriendsRepository::class.java.name FriendsRepositoryDeprecated::class.java.name
), ),
ItemClickListener { ItemClickListener {
@@ -32,7 +32,7 @@ class FriendsPresenter(viewState: FriendsView) :
private var userId: Int = 0 private var userId: Int = 0
private var friendsCount: Int = 0 private var friendsCount: Int = 0
private lateinit var adapter: UsersAdapter private lateinit var adapter: UsersAdapterDeprecated
private lateinit var recyclerView: RecyclerView private lateinit var recyclerView: RecyclerView
private lateinit var layoutManager: LinearLayoutManager private lateinit var layoutManager: LinearLayoutManager
@@ -51,12 +51,12 @@ class FriendsPresenter(viewState: FriendsView) :
getCachedFriends(userId, 0, DEFAULT_FRIENDS_COUNT, false, object : MvpOnLoadListener<Any?> { getCachedFriends(userId, 0, DEFAULT_FRIENDS_COUNT, false, object : MvpOnLoadListener<Any?> {
override fun onResponse(response: Any?) { override fun onResponse(response: Any?) {
setState(if (adapter.isEmpty()) MvpPresenter.ListState.EMPTY_LOADING else ListState.FILLED_LOADING) setState(if (adapter.isEmpty()) MvpPresenter.ListState.EMPTY_LOADING else ListState.FILLED_LOADING)
loadFriends(userId, 0, ConversationsPresenter.DEFAULT_CONVERSATIONS_COUNT) loadFriends(userId, 0, DEFAULT_FRIENDS_COUNT)
} }
override fun onError(t: Throwable) { override fun onError(t: Throwable) {
setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING)
loadFriends(userId, 0, ConversationsPresenter.DEFAULT_CONVERSATIONS_COUNT) loadFriends(userId, 0, DEFAULT_FRIENDS_COUNT)
} }
}) })
} }
@@ -193,7 +193,7 @@ class FriendsPresenter(viewState: FriendsView) :
} }
private fun createAdapter() { private fun createAdapter() {
adapter = UsersAdapter(context!!, arrayListOf()).also { adapter = UsersAdapterDeprecated(context!!, arrayListOf()).also {
it.itemClickListener = this it.itemClickListener = this
} }
@@ -219,9 +219,9 @@ class FriendsPresenter(viewState: FriendsView) :
val user = adapter[position] val user = adapter[position]
val data = Bundle().apply { val data = Bundle().apply {
putInt(MessagesActivity.TAG_EXTRA_ID, user.userId) putInt(MessagesActivityDeprecated.TAG_EXTRA_ID, user.userId)
putString(MessagesActivity.TAG_EXTRA_TITLE, user.toString()) putString(MessagesActivityDeprecated.TAG_EXTRA_TITLE, user.toString())
putString(MessagesActivity.TAG_EXTRA_AVATAR, user.photo200) putString(MessagesActivityDeprecated.TAG_EXTRA_AVATAR, user.photo200)
} }
} }
@@ -11,10 +11,10 @@ import androidx.core.view.isVisible
import androidx.fragment.app.setFragmentResultListener import androidx.fragment.app.setFragmentResultListener
import com.google.android.material.textfield.TextInputEditText import com.google.android.material.textfield.TextInputEditText
import com.meloda.fast.R import com.meloda.fast.R
import com.meloda.fast.activity.MainActivity import com.meloda.fast.activity.MainActivityDeprecated
import com.meloda.fast.api.UserConfig import com.meloda.fast.api.UserConfig
import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread
import com.meloda.fast.fragment.FragmentConversations import com.meloda.fast.fragment.FragmentConversationsDeprecated
import com.meloda.fast.fragment.LoginFragment import com.meloda.fast.fragment.LoginFragment
import com.meloda.fast.fragment.ValidationFragment import com.meloda.fast.fragment.ValidationFragment
import com.meloda.fast.fragment.ui.repository.LoginRepository import com.meloda.fast.fragment.ui.repository.LoginRepository
@@ -119,12 +119,12 @@ class LoginPresenter(
private fun openMainScreen() { private fun openMainScreen() {
fragment.runOnUiThread { fragment.runOnUiThread {
(fragment.requireActivity() as MainActivity).bottomBar.isVisible = true (fragment.requireActivity() as MainActivityDeprecated).bottomBar.isVisible = true
fragment.parentFragmentManager.beginTransaction() fragment.parentFragmentManager.beginTransaction()
.replace( .replace(
R.id.fragmentContainer, R.id.fragmentContainer,
FragmentConversations() FragmentConversationsDeprecated()
).commit() ).commit()
} }
} }
@@ -12,7 +12,7 @@ import com.meloda.fast.listener.OnResponseListener
import com.meloda.mvp.MvpOnLoadListener import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpRepository import com.meloda.mvp.MvpRepository
class ConversationsRepository : MvpRepository<VKConversation>() { class ConversationsRepositoryDeprecated : MvpRepository<VKConversation>() {
fun loadConversations( fun loadConversations(
offset: Int, count: Int, offset: Int, count: Int,
@@ -10,7 +10,7 @@ import com.meloda.fast.listener.OnResponseListener
import com.meloda.mvp.MvpOnLoadListener import com.meloda.mvp.MvpOnLoadListener
import com.meloda.mvp.MvpRepository import com.meloda.mvp.MvpRepository
class FriendsRepository : MvpRepository<VKUser>() { class FriendsRepositoryDeprecated : MvpRepository<VKUser>() {
fun loadFriends( fun loadFriends(
userId: Int, userId: Int,
@@ -3,7 +3,7 @@ package com.meloda.fast.fragment.ui.view
import android.os.Bundle import android.os.Bundle
import com.meloda.mvp.MvpView import com.meloda.mvp.MvpView
interface FriendsView : MvpView { interface ConversationsViewDeprecated : MvpView {
fun openChat(extras: Bundle) fun openChat(extras: Bundle)
@@ -3,7 +3,7 @@ package com.meloda.fast.fragment.ui.view
import android.os.Bundle import android.os.Bundle
import com.meloda.mvp.MvpView import com.meloda.mvp.MvpView
interface ConversationsView : MvpView { interface FriendsViewDeprecated : MvpView {
fun openChat(extras: Bundle) fun openChat(extras: Bundle)
+2 -2
View File
@@ -12,14 +12,14 @@
<FrameLayout <FrameLayout
android:id="@+id/fragmentContainer" android:id="@+id/fragmentContainer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent" />
android:layout_marginBottom="48dp" />
<com.google.android.material.bottomnavigation.BottomNavigationView <com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottomBar" android:id="@+id/bottomBar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="48dp" android:layout_height="48dp"
android:layout_gravity="bottom" android:layout_gravity="bottom"
android:visibility="gone"
app:backgroundTint="?colorPrimary" app:backgroundTint="?colorPrimary"
app:elevation="0.5dp" app:elevation="0.5dp"
app:itemIconTint="@drawable/navigation_view_items_colors" app:itemIconTint="@drawable/navigation_view_items_colors"
-15
View File
@@ -45,19 +45,4 @@
<item name="colorPrimaryDark">@color/dark_primaryDark</item> <item name="colorPrimaryDark">@color/dark_primaryDark</item>
</style> </style>
<style name="AppTheme.Update" parent="Theme.MaterialComponents.NoActionBar.Bridge">
<item name="colorPrimaryDark">@android:color/white</item>
<item name="colorAccent">@color/dark_accent</item>
<item name="android:windowLightStatusBar">true</item>
</style>
<style name="AppTheme.Start" parent="Theme.MaterialComponents.NoActionBar.Bridge">
<item name="android:windowBackground">@color/dark_accent</item>
<item name="colorPrimaryDark">@color/dark_accent</item>
<item name="colorAccent">@color/dark_accent</item>
<item name="android:navigationBarColor">@color/dark_accent</item>
<item name="dialogCornerRadius">12dp</item>
<item name="android:windowAnimationStyle">@style/AppTheme.ActivityAnimation</item>
</style>
</resources> </resources>
-11
View File
@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme.Update" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
<item name="colorPrimaryDark">@android:color/white</item>
<item name="colorAccent">@color/accent</item>
<item name="android:navigationBarColor">@android:color/white</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowLightNavigationBar">true</item>
</style>
</resources>
-16
View File
@@ -80,26 +80,10 @@
<item name="android:layout_marginEnd">12dp</item> <item name="android:layout_marginEnd">12dp</item>
</style> </style>
<style name="AppTheme.Update" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
<item name="colorPrimaryDark">@android:color/white</item>
<item name="colorAccent">@color/accent</item>
<item name="android:windowLightStatusBar">true</item>
</style>
<style name="AppTheme.ProfileDialog" parent="Theme.MaterialComponents.Light.BottomSheetDialog"> <style name="AppTheme.ProfileDialog" parent="Theme.MaterialComponents.Light.BottomSheetDialog">
<item name="colorAccent">@color/accent</item> <item name="colorAccent">@color/accent</item>
<item name="colorPrimary">@color/primary</item> <item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primaryDark</item> <item name="colorPrimaryDark">@color/primaryDark</item>
</style> </style>
<style name="AppTheme.Start" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
<item name="android:windowBackground">@color/accent</item>
<item name="colorPrimaryDark">@color/accent</item>
<item name="colorAccent">@color/accent</item>
<item name="android:navigationBarColor">@color/accent</item>
<item name="dialogCornerRadius">12dp</item>
<item name="android:windowAnimationStyle">@style/AppTheme.ActivityAnimation</item>
</style>
</resources> </resources>