diff --git a/app/build.gradle b/app/build.gradle index 0691aa87..53e892a1 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -6,10 +6,10 @@ plugins { android { compileSdkVersion 30 - buildToolsVersion "30.0.3" + buildToolsVersion "31.0.0-rc1" defaultConfig { - applicationId "ru.melod1n.project.vkm" + applicationId "com.meloda.fast" minSdkVersion 23 targetSdkVersion 30 versionCode 1 @@ -21,6 +21,10 @@ android { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } + + debug { + applicationIdSuffix '.debug' + } } compileOptions { coreLibraryDesugaringEnabled true @@ -34,6 +38,8 @@ android { } dependencies { + implementation(name: 'mvp-debug', ext: 'aar') + coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.1' implementation "org.jetbrains.kotlin:kotlin-stdlib:${kotlin_version}" @@ -48,8 +54,8 @@ dependencies { implementation 'androidx.fragment:fragment-ktx:1.3.0' implementation 'com.google.android.material:material:1.3.0' - implementation 'androidx.room:room-runtime:2.3.0-beta01' - kapt 'androidx.room:room-compiler:2.3.0-beta01' + implementation 'androidx.room:room-runtime:2.3.0-beta02' + kapt 'androidx.room:room-compiler:2.3.0-beta02' implementation 'com.facebook.fresco:fresco:2.3.0' diff --git a/app/libs/mvp-debug.aar b/app/libs/mvp-debug.aar new file mode 100644 index 00000000..b48ec4e0 Binary files /dev/null and b/app/libs/mvp-debug.aar differ diff --git a/app/release/app-release.apk b/app/release/app-release.apk new file mode 100644 index 00000000..891db446 Binary files /dev/null and b/app/release/app-release.apk differ diff --git a/app/release/output-metadata.json b/app/release/output-metadata.json new file mode 100644 index 00000000..ab8eb66e --- /dev/null +++ b/app/release/output-metadata.json @@ -0,0 +1,18 @@ +{ + "version": 2, + "artifactType": { + "type": "APK", + "kind": "Directory" + }, + "applicationId": "ru.melod1n.project.vkm", + "variantName": "processReleaseResources", + "elements": [ + { + "type": "SINGLE", + "filters": [], + "versionCode": 1, + "versionName": "1.0", + "outputFile": "app-release.apk" + } + ] +} \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b53e3372..9aa9552a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,18 +1,18 @@ + package="com.meloda.fast"> - + @@ -21,29 +21,29 @@ - + - + - + diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/DropUserDataActivity.kt b/app/src/main/java/com/meloda/fast/activity/DropUserDataActivity.kt similarity index 63% rename from app/src/main/java/ru/melod1n/project/vkm/activity/DropUserDataActivity.kt rename to app/src/main/java/com/meloda/fast/activity/DropUserDataActivity.kt index d9052672..3e68a4a8 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/DropUserDataActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/DropUserDataActivity.kt @@ -1,11 +1,11 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.content.Intent import android.os.Bundle -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.api.UserConfig +import com.meloda.fast.api.UserConfig +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager class DropUserDataActivity : BaseActivity() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/LoginActivity.kt b/app/src/main/java/com/meloda/fast/activity/LoginActivity.kt similarity index 89% rename from app/src/main/java/ru/melod1n/project/vkm/activity/LoginActivity.kt rename to app/src/main/java/com/meloda/fast/activity/LoginActivity.kt index 9905716b..dab4cfc6 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/LoginActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/LoginActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.annotation.SuppressLint import android.content.Intent @@ -10,14 +10,14 @@ import android.webkit.* import android.widget.ProgressBar import androidx.core.view.isVisible import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKAuth -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKAuth +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.widget.Toolbar class LoginActivity : BaseActivity() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/MainActivity.kt b/app/src/main/java/com/meloda/fast/activity/MainActivity.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/activity/MainActivity.kt rename to app/src/main/java/com/meloda/fast/activity/MainActivity.kt index 24752f82..b2f2387d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/MainActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/MainActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.content.Intent import android.os.Bundle @@ -9,28 +9,28 @@ import androidx.core.view.isVisible import androidx.drawerlayout.widget.DrawerLayout import com.google.android.material.bottomnavigation.BottomNavigationView import com.google.android.material.navigation.NavigationView -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.FragmentSwitcher -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.common.TimeManager -import ru.melod1n.project.vkm.dialog.AccountDialog -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.fragment.FragmentConversations -import ru.melod1n.project.vkm.fragment.FragmentFriends -import ru.melod1n.project.vkm.fragment.FragmentSettings -import ru.melod1n.project.vkm.fragment.LoginFragment -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.service.LongPollService -import ru.melod1n.project.vkm.util.AndroidUtils -import ru.melod1n.project.vkm.util.ViewUtils -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.FragmentSwitcher +import com.meloda.fast.common.TaskManager +import com.meloda.fast.common.TimeManager +import com.meloda.fast.dialog.AccountDialog +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.fragment.FragmentConversations +import com.meloda.fast.fragment.FragmentFriends +import com.meloda.fast.fragment.FragmentSettings +import com.meloda.fast.fragment.LoginFragment +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.service.LongPollService +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ViewUtils +import com.meloda.fast.widget.Toolbar class MainActivity : BaseActivity(), diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/MessagesActivity.kt b/app/src/main/java/com/meloda/fast/activity/MessagesActivity.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/activity/MessagesActivity.kt rename to app/src/main/java/com/meloda/fast/activity/MessagesActivity.kt index 1b6ef652..cb92fd00 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/MessagesActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/MessagesActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.content.res.ColorStateList import android.graphics.Color @@ -14,24 +14,24 @@ import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import com.amulyakhare.textdrawable.TextDrawable -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.ui.presenter.MessagesPresenter -import ru.melod1n.project.vkm.activity.ui.view.MessagesView -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKGroup -import ru.melod1n.project.vkm.api.model.VKModel -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.dialog.ProfileDialog -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.extensions.ImageViewExtensions.loadImage -import ru.melod1n.project.vkm.fragment.FragmentSettings -import ru.melod1n.project.vkm.util.KeyboardUtils -import ru.melod1n.project.vkm.util.TextUtils -import ru.melod1n.project.vkm.util.ViewUtils -import ru.melod1n.project.vkm.widget.CircleImageView +import com.meloda.fast.R +import com.meloda.fast.activity.ui.presenter.MessagesPresenter +import com.meloda.fast.activity.ui.view.MessagesView +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKGroup +import com.meloda.fast.api.model.VKModel +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.dialog.ProfileDialog +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.extensions.ImageViewExtensions.loadImage +import com.meloda.fast.fragment.FragmentSettings +import com.meloda.fast.util.KeyboardUtils +import com.meloda.fast.util.TextUtils +import com.meloda.fast.util.ViewUtils +import com.meloda.fast.widget.CircleImageView class MessagesActivity : BaseActivity(), MessagesView { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/SettingsActivity.kt b/app/src/main/java/com/meloda/fast/activity/SettingsActivity.kt similarity index 68% rename from app/src/main/java/ru/melod1n/project/vkm/activity/SettingsActivity.kt rename to app/src/main/java/com/meloda/fast/activity/SettingsActivity.kt index e2711beb..526740bb 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/SettingsActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/SettingsActivity.kt @@ -1,14 +1,14 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.os.Bundle -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.FragmentSwitcher -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.fragment.FragmentSettings -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.FragmentSwitcher +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.fragment.FragmentSettings +import com.meloda.fast.widget.Toolbar class SettingsActivity : BaseActivity() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/StartActivity.kt b/app/src/main/java/com/meloda/fast/activity/StartActivity.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/activity/StartActivity.kt rename to app/src/main/java/com/meloda/fast/activity/StartActivity.kt index f6fbf3a9..2cf3be26 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/StartActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/StartActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.annotation.SuppressLint import android.content.Intent @@ -9,9 +9,9 @@ import android.widget.Toast import androidx.appcompat.app.AlertDialog import androidx.appcompat.widget.AppCompatEditText import com.google.android.material.button.MaterialButton -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.base.BaseActivity +import com.meloda.fast.R +import com.meloda.fast.api.UserConfig +import com.meloda.fast.base.BaseActivity @SuppressLint("InflateParams") class StartActivity : BaseActivity() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/UpdateActivity.kt b/app/src/main/java/com/meloda/fast/activity/UpdateActivity.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/activity/UpdateActivity.kt rename to app/src/main/java/com/meloda/fast/activity/UpdateActivity.kt index 8d13fe05..4408aeb3 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/UpdateActivity.kt +++ b/app/src/main/java/com/meloda/fast/activity/UpdateActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.activity +package com.meloda.fast.activity import android.app.Activity import android.app.DownloadManager @@ -18,19 +18,19 @@ import androidx.core.text.HtmlCompat import androidx.core.view.isVisible import com.github.rahatarmanahmed.cpv.CircularProgressView import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.common.UpdateManager -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.FloatExtensions.int -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.model.NewUpdateInfo -import ru.melod1n.project.vkm.receiver.DownloadUpdateReceiver -import ru.melod1n.project.vkm.util.AndroidUtils -import ru.melod1n.project.vkm.util.TimeUtils +import com.meloda.fast.BuildConfig +import com.meloda.fast.R +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.common.UpdateManager +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.FloatExtensions.int +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.model.NewUpdateInfo +import com.meloda.fast.receiver.DownloadUpdateReceiver +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.TimeUtils import java.io.File import java.text.SimpleDateFormat import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/presenter/MessagesPresenter.kt b/app/src/main/java/com/meloda/fast/activity/ui/presenter/MessagesPresenter.kt similarity index 82% rename from app/src/main/java/ru/melod1n/project/vkm/activity/ui/presenter/MessagesPresenter.kt rename to app/src/main/java/com/meloda/fast/activity/ui/presenter/MessagesPresenter.kt index 377c7250..e496ab54 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/presenter/MessagesPresenter.kt +++ b/app/src/main/java/com/meloda/fast/activity/ui/presenter/MessagesPresenter.kt @@ -1,24 +1,23 @@ -package ru.melod1n.project.vkm.activity.ui.presenter +package com.meloda.fast.activity.ui.presenter -import android.content.Context import androidx.recyclerview.widget.RecyclerView -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.ui.repository.MessagesRepository -import ru.melod1n.project.vkm.activity.ui.view.MessagesView -import ru.melod1n.project.vkm.adapter.MessagesAdapter -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.model.VKModel -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpPresenter -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.listener.ItemClickListener -import ru.melod1n.project.vkm.listener.ItemLongClickListener +import com.meloda.fast.R +import com.meloda.fast.activity.ui.repository.MessagesRepository +import com.meloda.fast.activity.ui.view.MessagesView +import com.meloda.fast.adapter.MessagesAdapter +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.model.VKModel +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.event.EventInfo +import com.meloda.fast.listener.ItemClickListener +import com.meloda.fast.listener.ItemLongClickListener +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpPresenter import kotlin.random.Random class MessagesPresenter(viewState: MessagesView) : @@ -128,15 +127,17 @@ class MessagesPresenter(viewState: MessagesView) : private fun refreshConversation(conversation: VKConversation) { checkIsWritingAllowed(conversation) - repository.getChatInfo(conversation, object : MvpOnLoadListener { - override fun onResponse(response: String) { - viewState.setChatInfo(response) - } + repository.getChatInfo( + conversation, + object : MvpOnLoadListener { + override fun onResponse(response: String) { + viewState.setChatInfo(response) + } - override fun onError(t: Throwable) { - viewState.setChatInfo(AppGlobal.resources.getString(R.string.error_obtain_chat_info)) - } - }) + override fun onError(t: Throwable) { + viewState.setChatInfo(AppGlobal.resources.getString(R.string.error_obtain_chat_info)) + } + }) } private fun checkIsWritingAllowed(conversation: VKConversation) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/repository/MessagesRepository.kt b/app/src/main/java/com/meloda/fast/activity/ui/repository/MessagesRepository.kt similarity index 86% rename from app/src/main/java/ru/melod1n/project/vkm/activity/ui/repository/MessagesRepository.kt rename to app/src/main/java/com/meloda/fast/activity/ui/repository/MessagesRepository.kt index 4e477cef..40466a7d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/repository/MessagesRepository.kt +++ b/app/src/main/java/com/meloda/fast/activity/ui/repository/MessagesRepository.kt @@ -1,21 +1,21 @@ -package ru.melod1n.project.vkm.activity.ui.repository +package com.meloda.fast.activity.ui.repository -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKGroup -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpRepository -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.extensions.ArrayExtensions.asArrayList -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.util.ArrayUtils +import com.meloda.fast.R +import com.meloda.fast.api.VKApi +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKGroup +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.extensions.ArrayExtensions.asArrayList +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.util.ArrayUtils +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpRepository import java.util.* class MessagesRepository : MvpRepository() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/view/MessagesView.kt b/app/src/main/java/com/meloda/fast/activity/ui/view/MessagesView.kt similarity index 68% rename from app/src/main/java/ru/melod1n/project/vkm/activity/ui/view/MessagesView.kt rename to app/src/main/java/com/meloda/fast/activity/ui/view/MessagesView.kt index 2cb95c39..2d19a125 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/activity/ui/view/MessagesView.kt +++ b/app/src/main/java/com/meloda/fast/activity/ui/view/MessagesView.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.activity.ui.view +package com.meloda.fast.activity.ui.view -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.base.mvp.MvpView +import com.meloda.fast.api.model.VKConversation +import com.meloda.mvp.MvpView interface MessagesView : MvpView { diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/ConversationsAdapter.kt b/app/src/main/java/com/meloda/fast/adapter/ConversationsAdapter.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/ConversationsAdapter.kt rename to app/src/main/java/com/meloda/fast/adapter/ConversationsAdapter.kt index b4dc05fe..41d75e0c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/ConversationsAdapter.kt +++ b/app/src/main/java/com/meloda/fast/adapter/ConversationsAdapter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.adapter +package com.meloda.fast.adapter import android.graphics.Color import android.graphics.drawable.ColorDrawable @@ -9,31 +9,31 @@ import android.text.style.ForegroundColorSpan import android.util.Log import android.view.View import android.view.ViewGroup +import android.widget.FrameLayout import android.widget.ImageView -import android.widget.LinearLayout import android.widget.TextView import androidx.core.view.isVisible import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.adapter.diffutil.ConversationsCallback -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKGroup -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.BaseAdapter -import ru.melod1n.project.vkm.base.BaseHolder -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.widget.CircleImageView +import com.meloda.fast.R +import com.meloda.fast.adapter.diffutil.ConversationsCallback +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKGroup +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.base.BaseAdapter +import com.meloda.fast.base.BaseHolder +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.event.EventInfo +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.widget.CircleImageView @Suppress("UNCHECKED_CAST") @@ -116,7 +116,7 @@ class ConversationsAdapter( private var date: TextView = v.findViewById(R.id.conversationDate) private var type: ImageView = v.findViewById(R.id.conversationType) private var userAvatar: ImageView = v.findViewById(R.id.conversationUserAvatar) - private var root: LinearLayout = v.findViewById(R.id.conversationRoot) + private var root: FrameLayout = v.findViewById(R.id.conversationRoot) private val colorHighlight = context.color(R.color.accent) @@ -285,25 +285,6 @@ class ConversationsAdapter( } else { userAvatar.setImageURI(Uri.parse(avatar)) } - -// ImageUtil.loadImage( -// VKUtil.getUserAvatar(lastMessage, fromUser, fromGroup), -// object : ImageUtil.OnLoadListener { -// override fun onLoad(bitmap: Bitmap) { -// userAvatar.setImageBitmap(bitmap) -// } -// -// override fun onError(e: Exception) { -// -// } -// } -// ) - -// ImageUtil.loadImage( -// VKUtil.getUserAvatar(lastMessage, fromUser, fromGroup), -// userAvatar, -// placeholderNormal -// ) } else { userAvatar.isVisible = false userAvatar.setImageDrawable(null) @@ -325,32 +306,14 @@ class ConversationsAdapter( if (avatarLink.isNotEmpty()) { avatar.setImageURI(Uri.parse(avatarLink)) } - -// ImageUtil.loadImage( -// VKUtil.getAvatar(conversation, peerUser, peerGroup), -// object : ImageUtil.OnLoadListener { -// override fun onLoad(bitmap: Bitmap) { -// avatar.setImageBitmap(bitmap) -// } -// -// override fun onError(e: Exception) { -// -// } -// } -// ) - -// ImageUtil.loadImage( -// VKUtil.getAvatar(conversation, peerUser, peerGroup), -// avatar, -// dialogAvatarPlaceholder -// ) } private fun setDialogType(conversation: VKConversation) { val dDialogType = VKUtil.getDialogType(context, conversation) type.setImageDrawable(dDialogType) - type.isVisible = dDialogType != null +// type.isVisible = dDialogType != null + type.isVisible = false } private fun prepareAttachments(lastMessage: VKMessage) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/MessagesAdapter.kt b/app/src/main/java/com/meloda/fast/adapter/MessagesAdapter.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/MessagesAdapter.kt rename to app/src/main/java/com/meloda/fast/adapter/MessagesAdapter.kt index f7d3dd1b..fd531910 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/MessagesAdapter.kt +++ b/app/src/main/java/com/meloda/fast/adapter/MessagesAdapter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.adapter +package com.meloda.fast.adapter import android.content.Context import android.graphics.Typeface @@ -12,24 +12,24 @@ import android.widget.LinearLayout import android.widget.TextView import androidx.core.view.isVisible import androidx.recyclerview.widget.LinearLayoutManager -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.MessagesActivity -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.* -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.BaseAdapter -import ru.melod1n.project.vkm.base.BaseHolder -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.extensions.FloatExtensions.int -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.util.AndroidUtils -import ru.melod1n.project.vkm.util.ImageUtils -import ru.melod1n.project.vkm.widget.BoundedLinearLayout -import ru.melod1n.project.vkm.widget.CircleImageView +import com.meloda.fast.BuildConfig +import com.meloda.fast.R +import com.meloda.fast.activity.MessagesActivity +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.* +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.base.BaseAdapter +import com.meloda.fast.base.BaseHolder +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.event.EventInfo +import com.meloda.fast.extensions.FloatExtensions.int +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ImageUtils +import com.meloda.fast.widget.BoundedLinearLayout +import com.meloda.fast.widget.CircleImageView import java.text.SimpleDateFormat import java.util.* import kotlin.math.abs @@ -384,6 +384,14 @@ class MessagesAdapter( val boundedWidth = screenWidth - screenWidth / 5 bubble.maxWidth = boundedWidth + + + text.setTextColor( + AndroidUtils.getThemeAttrColor( + context, + if (message.isOutbox()) R.attr.messageOutTextColor else R.attr.messageInTextColor + ) + ) text.text = VKUtil.matchMentions(message.text) } diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/SimpleItemAdapter.kt b/app/src/main/java/com/meloda/fast/adapter/SimpleItemAdapter.kt similarity index 80% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/SimpleItemAdapter.kt rename to app/src/main/java/com/meloda/fast/adapter/SimpleItemAdapter.kt index 2ebdc81d..fabbb434 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/SimpleItemAdapter.kt +++ b/app/src/main/java/com/meloda/fast/adapter/SimpleItemAdapter.kt @@ -1,14 +1,14 @@ -package ru.melod1n.project.vkm.adapter +package com.meloda.fast.adapter import android.content.Context import android.view.View import android.view.ViewGroup import android.widget.ImageView import android.widget.TextView -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseAdapter -import ru.melod1n.project.vkm.base.BaseHolder -import ru.melod1n.project.vkm.item.SimpleMenuItem +import com.meloda.fast.R +import com.meloda.fast.base.BaseAdapter +import com.meloda.fast.base.BaseHolder +import com.meloda.fast.item.SimpleMenuItem import java.util.* class SimpleItemAdapter(context: Context, values: ArrayList) : diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/UsersAdapter.kt b/app/src/main/java/com/meloda/fast/adapter/UsersAdapter.kt similarity index 82% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/UsersAdapter.kt rename to app/src/main/java/com/meloda/fast/adapter/UsersAdapter.kt index 559cebce..a12178b6 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/UsersAdapter.kt +++ b/app/src/main/java/com/meloda/fast/adapter/UsersAdapter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.adapter +package com.meloda.fast.adapter import android.content.Context import android.view.View @@ -7,14 +7,14 @@ import android.widget.ImageView import android.widget.TextView import androidx.core.view.isVisible import androidx.recyclerview.widget.DiffUtil -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.adapter.diffutil.UsersCallback -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.BaseAdapter -import ru.melod1n.project.vkm.base.BaseHolder -import ru.melod1n.project.vkm.util.ImageUtils -import ru.melod1n.project.vkm.widget.CircleImageView +import com.meloda.fast.R +import com.meloda.fast.adapter.diffutil.UsersCallback +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.base.BaseAdapter +import com.meloda.fast.base.BaseHolder +import com.meloda.fast.util.ImageUtils +import com.meloda.fast.widget.CircleImageView class UsersAdapter(context: Context, values: ArrayList) : BaseAdapter(context, values) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/ConversationsCallback.kt b/app/src/main/java/com/meloda/fast/adapter/diffutil/ConversationsCallback.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/ConversationsCallback.kt rename to app/src/main/java/com/meloda/fast/adapter/diffutil/ConversationsCallback.kt index 651f0df9..b3eb611d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/ConversationsCallback.kt +++ b/app/src/main/java/com/meloda/fast/adapter/diffutil/ConversationsCallback.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.adapter.diffutil +package com.meloda.fast.adapter.diffutil import androidx.recyclerview.widget.DiffUtil -import ru.melod1n.project.vkm.api.model.VKConversation +import com.meloda.fast.api.model.VKConversation class ConversationsCallback( private val oldList: List, diff --git a/app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/UsersCallback.kt b/app/src/main/java/com/meloda/fast/adapter/diffutil/UsersCallback.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/UsersCallback.kt rename to app/src/main/java/com/meloda/fast/adapter/diffutil/UsersCallback.kt index 9c18fcf9..4693e193 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/adapter/diffutil/UsersCallback.kt +++ b/app/src/main/java/com/meloda/fast/adapter/diffutil/UsersCallback.kt @@ -1,9 +1,10 @@ -package ru.melod1n.project.vkm.adapter.diffutil +package com.meloda.fast.adapter.diffutil import androidx.recyclerview.widget.DiffUtil -import ru.melod1n.project.vkm.api.model.VKUser +import com.meloda.fast.api.model.VKUser -class UsersCallback(private val oldList: List, private val newList: List) : DiffUtil.Callback() { +class UsersCallback(private val oldList: List, private val newList: List) : + DiffUtil.Callback() { companion object { const val ONLINE = "online" diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/ErrorCodes.kt b/app/src/main/java/com/meloda/fast/api/ErrorCodes.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/api/ErrorCodes.kt rename to app/src/main/java/com/meloda/fast/api/ErrorCodes.kt index 2b516b6f..748594f0 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/ErrorCodes.kt +++ b/app/src/main/java/com/meloda/fast/api/ErrorCodes.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api object ErrorCodes { const val UNKNOWN_ERROR = 1 diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/UserConfig.kt b/app/src/main/java/com/meloda/fast/api/UserConfig.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/api/UserConfig.kt rename to app/src/main/java/com/meloda/fast/api/UserConfig.kt index 3738a6e9..ebd40491 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/UserConfig.kt +++ b/app/src/main/java/com/meloda/fast/api/UserConfig.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api import android.text.TextUtils -import ru.melod1n.project.vkm.common.AppGlobal +import com.meloda.fast.common.AppGlobal object UserConfig { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/VKApi.kt b/app/src/main/java/com/meloda/fast/api/VKApi.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/api/VKApi.kt rename to app/src/main/java/com/meloda/fast/api/VKApi.kt index 4d0a0018..53a1204d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/VKApi.kt +++ b/app/src/main/java/com/meloda/fast/api/VKApi.kt @@ -1,29 +1,27 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api import android.content.Context import android.content.Intent import android.util.Log import androidx.annotation.WorkerThread +import com.meloda.fast.BuildConfig +import com.meloda.fast.activity.DropUserDataActivity +import com.meloda.fast.api.method.MessageMethodSetter +import com.meloda.fast.api.method.MethodSetter +import com.meloda.fast.api.method.UserMethodSetter +import com.meloda.fast.api.model.* +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.net.HttpRequest import org.json.JSONArray import org.json.JSONObject -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.activity.DropUserDataActivity -import ru.melod1n.project.vkm.api.method.MessageMethodSetter -import ru.melod1n.project.vkm.api.method.MethodSetter -import ru.melod1n.project.vkm.api.method.UserMethodSetter -import ru.melod1n.project.vkm.api.model.* -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.net.HttpRequest import java.util.* import kotlin.collections.ArrayList @Suppress("UNCHECKED_CAST") object VKApi { - private var context: Context? = null - private const val TAG = "VKM:VKApi" const val BASE_URL = "https://api.vk.com/method/" @@ -32,10 +30,6 @@ object VKApi { val language: String = AppGlobal.locale.language - fun init(context: Context) { - this.context = context - } - @WorkerThread @Suppress("UNCHECKED_CAST") fun execute(url: String, cls: Class?): ArrayList? { @@ -286,9 +280,9 @@ object VKApi { val e = VKException(url, message, code) if (code == 5 && message.contains("invalid session")) { - context?.startActivity(Intent(context, DropUserDataActivity::class.java).apply { - addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) - }) +// context?.startActivity(Intent(context, DropUserDataActivity::class.java).apply { +// addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) +// }) } if (code == ErrorCodes.CAPTCHA_NEEDED) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/VKApiKeys.kt b/app/src/main/java/com/meloda/fast/api/VKApiKeys.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/api/VKApiKeys.kt rename to app/src/main/java/com/meloda/fast/api/VKApiKeys.kt index 6c4f7a13..96a59c27 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/VKApiKeys.kt +++ b/app/src/main/java/com/meloda/fast/api/VKApiKeys.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api enum class VKApiKeys { READ_MESSAGE, diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/VKAuth.kt b/app/src/main/java/com/meloda/fast/api/VKAuth.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/api/VKAuth.kt rename to app/src/main/java/com/meloda/fast/api/VKAuth.kt index 0e0b7442..e728a080 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/VKAuth.kt +++ b/app/src/main/java/com/meloda/fast/api/VKAuth.kt @@ -1,8 +1,8 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api import android.util.Log -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.api.util.VKUtil +import com.meloda.fast.BuildConfig +import com.meloda.fast.api.util.VKUtil import java.net.URLEncoder object VKAuth { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/VKException.kt b/app/src/main/java/com/meloda/fast/api/VKException.kt similarity index 79% rename from app/src/main/java/ru/melod1n/project/vkm/api/VKException.kt rename to app/src/main/java/com/meloda/fast/api/VKException.kt index 65ccba46..8039f4bf 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/VKException.kt +++ b/app/src/main/java/com/meloda/fast/api/VKException.kt @@ -1,8 +1,9 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api import java.io.IOException -class VKException(var url: String, override var message: String, var code: Int) : IOException(message) { +class VKException(var url: String, override var message: String, var code: Int) : + IOException(message) { var captchaSid: String? = null var captchaImg: String? = null var redirectUri: String? = null diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/VKLongPollParser.kt b/app/src/main/java/com/meloda/fast/api/VKLongPollParser.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/api/VKLongPollParser.kt rename to app/src/main/java/com/meloda/fast/api/VKLongPollParser.kt index ca0dc097..b5ce125c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/VKLongPollParser.kt +++ b/app/src/main/java/com/meloda/fast/api/VKLongPollParser.kt @@ -1,13 +1,13 @@ -package ru.melod1n.project.vkm.api +package com.meloda.fast.api import android.util.Log import androidx.annotation.WorkerThread +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.event.EventInfo import org.json.JSONArray -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.event.EventInfo @Suppress("UNCHECKED_CAST") class VKLongPollParser { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/method/MessageMethodSetter.kt b/app/src/main/java/com/meloda/fast/api/method/MessageMethodSetter.kt similarity index 98% rename from app/src/main/java/ru/melod1n/project/vkm/api/method/MessageMethodSetter.kt rename to app/src/main/java/com/meloda/fast/api/method/MessageMethodSetter.kt index 06f56c43..1c54db66 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/method/MessageMethodSetter.kt +++ b/app/src/main/java/com/meloda/fast/api/method/MessageMethodSetter.kt @@ -1,6 +1,6 @@ -package ru.melod1n.project.vkm.api.method +package com.meloda.fast.api.method -import ru.melod1n.project.vkm.util.ArrayUtils +import com.meloda.fast.util.ArrayUtils class MessageMethodSetter(name: String) : MethodSetter(name) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/method/MethodSetter.kt b/app/src/main/java/com/meloda/fast/api/method/MethodSetter.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/api/method/MethodSetter.kt rename to app/src/main/java/com/meloda/fast/api/method/MethodSetter.kt index 0c7405e5..e0c8602f 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/method/MethodSetter.kt +++ b/app/src/main/java/com/meloda/fast/api/method/MethodSetter.kt @@ -1,12 +1,12 @@ -package ru.melod1n.project.vkm.api.method +package com.meloda.fast.api.method import android.util.ArrayMap import android.util.Log -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.util.ArrayUtils +import com.meloda.fast.BuildConfig +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApi +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.util.ArrayUtils import java.net.URLEncoder @Suppress("UNCHECKED_CAST") diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/method/UserMethodSetter.kt b/app/src/main/java/com/meloda/fast/api/method/UserMethodSetter.kt similarity index 95% rename from app/src/main/java/ru/melod1n/project/vkm/api/method/UserMethodSetter.kt rename to app/src/main/java/com/meloda/fast/api/method/UserMethodSetter.kt index 83137e71..5a8daa90 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/method/UserMethodSetter.kt +++ b/app/src/main/java/com/meloda/fast/api/method/UserMethodSetter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.method +package com.meloda.fast.api.method class UserMethodSetter(name: String) : MethodSetter(name) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAttachments.kt b/app/src/main/java/com/meloda/fast/api/model/VKAttachments.kt similarity index 98% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKAttachments.kt rename to app/src/main/java/com/meloda/fast/api/model/VKAttachments.kt index 02205b99..b4302d75 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAttachments.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKAttachments.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONArray import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudio.kt b/app/src/main/java/com/meloda/fast/api/model/VKAudio.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudio.kt rename to app/src/main/java/com/meloda/fast/api/model/VKAudio.kt index dd44a9d6..918c1e67 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudio.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKAudio.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudioMessage.kt b/app/src/main/java/com/meloda/fast/api/model/VKAudioMessage.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudioMessage.kt rename to app/src/main/java/com/meloda/fast/api/model/VKAudioMessage.kt index 03e3c877..f728aefd 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKAudioMessage.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKAudioMessage.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKCall.kt b/app/src/main/java/com/meloda/fast/api/model/VKCall.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKCall.kt rename to app/src/main/java/com/meloda/fast/api/model/VKCall.kt index d43294fb..e2419fa1 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKCall.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKCall.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKComment.kt b/app/src/main/java/com/meloda/fast/api/model/VKComment.kt similarity index 58% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKComment.kt rename to app/src/main/java/com/meloda/fast/api/model/VKComment.kt index 84b0464b..3e055614 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKComment.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKComment.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model class VKComment { //https://vk.com/dev/objects/comment } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKConversation.kt b/app/src/main/java/com/meloda/fast/api/model/VKConversation.kt similarity index 99% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKConversation.kt rename to app/src/main/java/com/meloda/fast/api/model/VKConversation.kt index c449e5a5..857e2cd0 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKConversation.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKConversation.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import androidx.room.Embedded import androidx.room.Entity diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKDoc.kt b/app/src/main/java/com/meloda/fast/api/model/VKDoc.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKDoc.kt rename to app/src/main/java/com/meloda/fast/api/model/VKDoc.kt index 9c87a05b..223e363a 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKDoc.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKDoc.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKFriend.kt b/app/src/main/java/com/meloda/fast/api/model/VKFriend.kt similarity index 74% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKFriend.kt rename to app/src/main/java/com/meloda/fast/api/model/VKFriend.kt index 67f7aa72..4cc370c5 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKFriend.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKFriend.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import androidx.room.Entity import androidx.room.PrimaryKey @@ -11,7 +11,7 @@ class VKFriend() { var userId: Int = -1 - constructor(friendId: Int, userId: Int): this() { + constructor(friendId: Int, userId: Int) : this() { this.friendId = friendId this.userId = userId } diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGift.kt b/app/src/main/java/com/meloda/fast/api/model/VKGift.kt similarity index 87% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKGift.kt rename to app/src/main/java/com/meloda/fast/api/model/VKGift.kt index 9226b7fc..cc89fba8 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGift.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKGift.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGraffiti.kt b/app/src/main/java/com/meloda/fast/api/model/VKGraffiti.kt similarity index 89% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKGraffiti.kt rename to app/src/main/java/com/meloda/fast/api/model/VKGraffiti.kt index aebfbd6d..ef97619c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGraffiti.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKGraffiti.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGroup.kt b/app/src/main/java/com/meloda/fast/api/model/VKGroup.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKGroup.kt rename to app/src/main/java/com/meloda/fast/api/model/VKGroup.kt index e65b657a..d80774e5 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKGroup.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKGroup.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import androidx.room.Entity import androidx.room.PrimaryKey diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLink.kt b/app/src/main/java/com/meloda/fast/api/model/VKLink.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKLink.kt rename to app/src/main/java/com/meloda/fast/api/model/VKLink.kt index debc463d..130af470 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLink.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKLink.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject import java.io.Serializable diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollHistory.kt b/app/src/main/java/com/meloda/fast/api/model/VKLongPollHistory.kt similarity index 88% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollHistory.kt rename to app/src/main/java/com/meloda/fast/api/model/VKLongPollHistory.kt index 1ee940d2..06a44fc4 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollHistory.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKLongPollHistory.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollServer.kt b/app/src/main/java/com/meloda/fast/api/model/VKLongPollServer.kt similarity index 86% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollServer.kt rename to app/src/main/java/com/meloda/fast/api/model/VKLongPollServer.kt index cffc1834..8eb3f741 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKLongPollServer.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKLongPollServer.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketAlbum.kt b/app/src/main/java/com/meloda/fast/api/model/VKMarketAlbum.kt similarity index 61% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketAlbum.kt rename to app/src/main/java/com/meloda/fast/api/model/VKMarketAlbum.kt index 66392ea8..041d1a04 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketAlbum.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKMarketAlbum.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model class VKMarketAlbum { //https://vk.com/dev/objects/market_album } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketItem.kt b/app/src/main/java/com/meloda/fast/api/model/VKMarketItem.kt similarity index 60% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketItem.kt rename to app/src/main/java/com/meloda/fast/api/model/VKMarketItem.kt index 04986485..e9a1d6b2 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMarketItem.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKMarketItem.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model class VKMarketItem { //https://vk.com/dev/objects/market_item } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessage.kt b/app/src/main/java/com/meloda/fast/api/model/VKMessage.kt similarity index 95% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessage.kt rename to app/src/main/java/com/meloda/fast/api/model/VKMessage.kt index 3f63df31..b0b3fa38 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessage.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKMessage.kt @@ -1,10 +1,10 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import android.util.ArrayMap import androidx.room.* +import com.meloda.fast.database.dao.converters.ArrayListToByteArrayConverter +import com.meloda.fast.database.dao.converters.ForwardedConverter import org.json.JSONObject -import ru.melod1n.project.vkm.database.dao.converters.ArrayListToByteArrayConverter -import ru.melod1n.project.vkm.database.dao.converters.ForwardedConverter @SuppressWarnings(RoomWarnings.PRIMARY_KEY_FROM_EMBEDDED_IS_DROPPED) @Entity(tableName = "messages") @@ -152,7 +152,7 @@ open class VKMessage() : VKModel() { } fun getForwardedMessages() = ArrayList().apply { - for (model in fwdMessages) add(model as VKMessage) + for (model in fwdMessages) add(model) } fun isFromUser() = fromId > 0 diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessageAction.kt b/app/src/main/java/com/meloda/fast/api/model/VKMessageAction.kt similarity index 98% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessageAction.kt rename to app/src/main/java/com/meloda/fast/api/model/VKMessageAction.kt index 154c9ad3..08572edb 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKMessageAction.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKMessageAction.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import androidx.room.Ignore import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKModel.kt b/app/src/main/java/com/meloda/fast/api/model/VKModel.kt similarity index 77% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKModel.kt rename to app/src/main/java/com/meloda/fast/api/model/VKModel.kt index ecdfdaa2..be84c44b 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKModel.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKModel.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import java.io.Serializable diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhoto.kt b/app/src/main/java/com/meloda/fast/api/model/VKPhoto.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhoto.kt rename to app/src/main/java/com/meloda/fast/api/model/VKPhoto.kt index 9ceff1d5..4b763686 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhoto.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKPhoto.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhotoSize.kt b/app/src/main/java/com/meloda/fast/api/model/VKPhotoSize.kt similarity index 86% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhotoSize.kt rename to app/src/main/java/com/meloda/fast/api/model/VKPhotoSize.kt index ce1d23f0..2a3b1a23 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPhotoSize.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKPhotoSize.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPinnedMessage.kt b/app/src/main/java/com/meloda/fast/api/model/VKPinnedMessage.kt similarity index 92% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKPinnedMessage.kt rename to app/src/main/java/com/meloda/fast/api/model/VKPinnedMessage.kt index c61176ec..13d84bc7 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPinnedMessage.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKPinnedMessage.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPoll.kt b/app/src/main/java/com/meloda/fast/api/model/VKPoll.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKPoll.kt rename to app/src/main/java/com/meloda/fast/api/model/VKPoll.kt index 9ba066d4..161c4471 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKPoll.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKPoll.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import android.graphics.Color import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKSticker.kt b/app/src/main/java/com/meloda/fast/api/model/VKSticker.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKSticker.kt rename to app/src/main/java/com/meloda/fast/api/model/VKSticker.kt index 4dcadd73..9e4303c9 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKSticker.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKSticker.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKUser.kt b/app/src/main/java/com/meloda/fast/api/model/VKUser.kt similarity index 98% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKUser.kt rename to app/src/main/java/com/meloda/fast/api/model/VKUser.kt index 37918ae3..57157291 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKUser.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKUser.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import androidx.room.Entity import androidx.room.PrimaryKey diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKVideo.kt b/app/src/main/java/com/meloda/fast/api/model/VKVideo.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKVideo.kt rename to app/src/main/java/com/meloda/fast/api/model/VKVideo.kt index 48595690..3b48c79c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKVideo.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKVideo.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKWall.kt b/app/src/main/java/com/meloda/fast/api/model/VKWall.kt similarity index 55% rename from app/src/main/java/ru/melod1n/project/vkm/api/model/VKWall.kt rename to app/src/main/java/com/meloda/fast/api/model/VKWall.kt index 0cc6a244..e05ab473 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/model/VKWall.kt +++ b/app/src/main/java/com/meloda/fast/api/model/VKWall.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.model +package com.meloda.fast.api.model class VKWall { //https://vk.com/dev/objects/post } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/api/util/VKUtil.kt b/app/src/main/java/com/meloda/fast/api/util/VKUtil.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/api/util/VKUtil.kt rename to app/src/main/java/com/meloda/fast/api/util/VKUtil.kt index 0751c3ce..059e3603 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/api/util/VKUtil.kt +++ b/app/src/main/java/com/meloda/fast/api/util/VKUtil.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.api.util +package com.meloda.fast.api.util import android.content.Context import android.graphics.drawable.Drawable @@ -6,20 +6,20 @@ import android.util.Log import androidx.annotation.WorkerThread import androidx.core.content.ContextCompat import com.amulyakhare.textdrawable.TextDrawable +import com.meloda.fast.BuildConfig +import com.meloda.fast.R +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.model.* +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.StringExtensions.lowerCase +import com.meloda.fast.listener.OnResponseListener +import com.meloda.fast.util.TextUtils import org.json.JSONArray -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.model.* -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.StringExtensions.lowerCase -import ru.melod1n.project.vkm.listener.OnResponseListener -import ru.melod1n.project.vkm.util.TextUtils import java.text.SimpleDateFormat import java.util.* import java.util.regex.Pattern diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/BaseActivity.kt b/app/src/main/java/com/meloda/fast/base/BaseActivity.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/base/BaseActivity.kt rename to app/src/main/java/com/meloda/fast/base/BaseActivity.kt index e0aa3937..d00c1641 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/base/BaseActivity.kt +++ b/app/src/main/java/com/meloda/fast/base/BaseActivity.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.base +package com.meloda.fast.base import android.view.View import androidx.appcompat.app.AppCompatActivity diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/BaseAdapter.kt b/app/src/main/java/com/meloda/fast/base/BaseAdapter.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/base/BaseAdapter.kt rename to app/src/main/java/com/meloda/fast/base/BaseAdapter.kt index 55cc2b89..5aca83aa 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/base/BaseAdapter.kt +++ b/app/src/main/java/com/meloda/fast/base/BaseAdapter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.base +package com.meloda.fast.base import android.content.Context import android.os.Bundle @@ -8,10 +8,10 @@ import android.view.View import android.view.ViewGroup import android.widget.AdapterView import androidx.recyclerview.widget.RecyclerView -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.extensions.ArrayExtensions.asArrayList -import ru.melod1n.project.vkm.listener.ItemClickListener -import ru.melod1n.project.vkm.listener.ItemLongClickListener +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.extensions.ArrayExtensions.asArrayList +import com.meloda.fast.listener.ItemClickListener +import com.meloda.fast.listener.ItemLongClickListener import java.io.Serializable import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/BaseFragment.kt b/app/src/main/java/com/meloda/fast/base/BaseFragment.kt similarity index 66% rename from app/src/main/java/ru/melod1n/project/vkm/base/BaseFragment.kt rename to app/src/main/java/com/meloda/fast/base/BaseFragment.kt index 5e5e8b7c..9b9f5385 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/base/BaseFragment.kt +++ b/app/src/main/java/com/meloda/fast/base/BaseFragment.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.base +package com.meloda.fast.base import androidx.annotation.IdRes import androidx.appcompat.widget.Toolbar import androidx.fragment.app.Fragment -import ru.melod1n.project.vkm.activity.MainActivity +import com.meloda.fast.activity.MainActivity abstract class BaseFragment : Fragment() { @@ -11,7 +11,9 @@ abstract class BaseFragment : Fragment() { val toolbar: Toolbar = requireView().findViewById(resId) activity?.let { - if (it is MainActivity && toolbar is ru.melod1n.project.vkm.widget.Toolbar) it.initToolbar(toolbar) + if (it is MainActivity && toolbar is com.meloda.fast.widget.Toolbar) it.initToolbar( + toolbar + ) } } diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/BaseFullscreenDialog.kt b/app/src/main/java/com/meloda/fast/base/BaseFullscreenDialog.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/base/BaseFullscreenDialog.kt rename to app/src/main/java/com/meloda/fast/base/BaseFullscreenDialog.kt index 4728256c..489aa388 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/base/BaseFullscreenDialog.kt +++ b/app/src/main/java/com/meloda/fast/base/BaseFullscreenDialog.kt @@ -1,10 +1,10 @@ -package ru.melod1n.project.vkm.base +package com.meloda.fast.base import android.os.Bundle import android.view.ViewGroup import android.view.WindowManager import androidx.fragment.app.DialogFragment -import ru.melod1n.project.vkm.R +import com.meloda.fast.R abstract class BaseFullscreenDialog : DialogFragment() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/BaseHolder.kt b/app/src/main/java/com/meloda/fast/base/BaseHolder.kt similarity index 83% rename from app/src/main/java/ru/melod1n/project/vkm/base/BaseHolder.kt rename to app/src/main/java/com/meloda/fast/base/BaseHolder.kt index c54a55b4..c7fccaf7 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/base/BaseHolder.kt +++ b/app/src/main/java/com/meloda/fast/base/BaseHolder.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.base +package com.meloda.fast.base import android.view.View import androidx.recyclerview.widget.RecyclerView diff --git a/app/src/main/java/com/meloda/fast/base/FragmentStackActivity.kt b/app/src/main/java/com/meloda/fast/base/FragmentStackActivity.kt new file mode 100644 index 00000000..1b3b2e8a --- /dev/null +++ b/app/src/main/java/com/meloda/fast/base/FragmentStackActivity.kt @@ -0,0 +1,6 @@ +package com.meloda.fast.base + +abstract class FragmentStackActivity : BaseActivity() { + + +} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/common/AppGlobal.kt b/app/src/main/java/com/meloda/fast/common/AppGlobal.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/common/AppGlobal.kt rename to app/src/main/java/com/meloda/fast/common/AppGlobal.kt index 2bfd4f02..c072aa50 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/common/AppGlobal.kt +++ b/app/src/main/java/com/meloda/fast/common/AppGlobal.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.common +package com.meloda.fast.common import android.annotation.SuppressLint import android.app.Application @@ -17,21 +17,20 @@ import androidx.core.content.pm.PackageInfoCompat import androidx.preference.PreferenceManager import androidx.room.Room import com.facebook.drawee.backends.pipeline.Fresco +import com.meloda.fast.BuildConfig +import com.meloda.fast.R +import com.meloda.fast.api.UserConfig +import com.meloda.fast.database.AppDatabase +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.fragment.FragmentSettings +import com.meloda.fast.util.AndroidUtils +import com.meloda.mvp.MvpBase import com.microsoft.appcenter.AppCenter import com.microsoft.appcenter.analytics.Analytics import com.microsoft.appcenter.crashes.Crashes import org.acra.ACRA import org.acra.ReportingInteractionMode import org.acra.annotation.ReportsCrashes -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.base.mvp.MvpBase -import ru.melod1n.project.vkm.database.AppDatabase -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.fragment.FragmentSettings -import ru.melod1n.project.vkm.util.AndroidUtils import java.util.* @SuppressLint("NonConstantResourceId") @@ -117,8 +116,6 @@ class AppGlobal : Application() { UserConfig.restore() - VKApi.init(this) - MvpBase.init(handler) fillMemoryCache() @@ -147,6 +144,7 @@ class AppGlobal : Application() { } fun getNightMode(nightMode: Int = -1): Int { + return AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM val mode = if (nightMode != -1) nightMode else preferences.getString( FragmentSettings.KEY_THEME, "-1" diff --git a/app/src/main/java/ru/melod1n/project/vkm/common/FragmentSwitcher.kt b/app/src/main/java/com/meloda/fast/common/FragmentSwitcher.kt similarity index 92% rename from app/src/main/java/ru/melod1n/project/vkm/common/FragmentSwitcher.kt rename to app/src/main/java/com/meloda/fast/common/FragmentSwitcher.kt index de40b341..ab975cb7 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/common/FragmentSwitcher.kt +++ b/app/src/main/java/com/meloda/fast/common/FragmentSwitcher.kt @@ -1,11 +1,11 @@ -package ru.melod1n.project.vkm.common +package com.meloda.fast.common import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.fragment.FragmentConversations -import ru.melod1n.project.vkm.fragment.FragmentFriends -import ru.melod1n.project.vkm.fragment.FragmentImportant +import com.meloda.fast.R +import com.meloda.fast.fragment.FragmentConversations +import com.meloda.fast.fragment.FragmentFriends +import com.meloda.fast.fragment.FragmentImportant object FragmentSwitcher { diff --git a/app/src/main/java/ru/melod1n/project/vkm/common/TaskManager.kt b/app/src/main/java/com/meloda/fast/common/TaskManager.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/common/TaskManager.kt rename to app/src/main/java/com/meloda/fast/common/TaskManager.kt index d18a4fc2..5ea9dcbd 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/common/TaskManager.kt +++ b/app/src/main/java/com/meloda/fast/common/TaskManager.kt @@ -1,18 +1,18 @@ -package ru.melod1n.project.vkm.common +package com.meloda.fast.common import android.util.Log -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.api.method.MethodSetter -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKGroup -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.concurrent.LowThread -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.listener.OnResponseListener +import com.meloda.fast.BuildConfig +import com.meloda.fast.api.VKApi +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.api.method.MethodSetter +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKGroup +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.concurrent.LowThread +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.event.EventInfo +import com.meloda.fast.listener.OnResponseListener import java.util.* import java.util.stream.Collectors diff --git a/app/src/main/java/ru/melod1n/project/vkm/common/TimeManager.kt b/app/src/main/java/com/meloda/fast/common/TimeManager.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/common/TimeManager.kt rename to app/src/main/java/com/meloda/fast/common/TimeManager.kt index a782d901..a1a914e0 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/common/TimeManager.kt +++ b/app/src/main/java/com/meloda/fast/common/TimeManager.kt @@ -1,8 +1,8 @@ -package ru.melod1n.project.vkm.common +package com.meloda.fast.common import android.content.Context import android.content.IntentFilter -import ru.melod1n.project.vkm.receiver.MinuteReceiver +import com.meloda.fast.receiver.MinuteReceiver import java.util.* object TimeManager { diff --git a/app/src/main/java/ru/melod1n/project/vkm/common/UpdateManager.kt b/app/src/main/java/com/meloda/fast/common/UpdateManager.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/common/UpdateManager.kt rename to app/src/main/java/com/meloda/fast/common/UpdateManager.kt index 69f63008..25af52f3 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/common/UpdateManager.kt +++ b/app/src/main/java/com/meloda/fast/common/UpdateManager.kt @@ -1,12 +1,12 @@ -package ru.melod1n.project.vkm.common +package com.meloda.fast.common import android.util.Log import androidx.collection.arrayMapOf +import com.meloda.fast.BuildConfig +import com.meloda.fast.model.NewUpdateInfo +import com.meloda.fast.net.HttpRequest import org.json.JSONArray import org.json.JSONObject -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.model.NewUpdateInfo -import ru.melod1n.project.vkm.net.HttpRequest object UpdateManager { diff --git a/app/src/main/java/ru/melod1n/project/vkm/concurrent/LowThread.kt b/app/src/main/java/com/meloda/fast/concurrent/LowThread.kt similarity index 83% rename from app/src/main/java/ru/melod1n/project/vkm/concurrent/LowThread.kt rename to app/src/main/java/com/meloda/fast/concurrent/LowThread.kt index 77a5b4f3..13b1c214 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/concurrent/LowThread.kt +++ b/app/src/main/java/com/meloda/fast/concurrent/LowThread.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.concurrent +package com.meloda.fast.concurrent import android.os.Process diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/AppDatabase.kt b/app/src/main/java/com/meloda/fast/database/AppDatabase.kt similarity index 78% rename from app/src/main/java/ru/melod1n/project/vkm/database/AppDatabase.kt rename to app/src/main/java/com/meloda/fast/database/AppDatabase.kt index 8194fc4d..53cefe2c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/AppDatabase.kt +++ b/app/src/main/java/com/meloda/fast/database/AppDatabase.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.database +package com.meloda.fast.database import androidx.room.Database import androidx.room.RoomDatabase -import ru.melod1n.project.vkm.api.model.* -import ru.melod1n.project.vkm.database.dao.* +import com.meloda.fast.api.model.* +import com.meloda.fast.database.dao.* @Database( entities = [VKConversation::class, VKMessage::class, VKUser::class, VKGroup::class, VKFriend::class], diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/MemoryCache.kt b/app/src/main/java/com/meloda/fast/database/MemoryCache.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/database/MemoryCache.kt rename to app/src/main/java/com/meloda/fast/database/MemoryCache.kt index 08bb3ebc..c6854729 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/MemoryCache.kt +++ b/app/src/main/java/com/meloda/fast/database/MemoryCache.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.database +package com.meloda.fast.database import android.util.SparseArray import androidx.annotation.WorkerThread -import ru.melod1n.project.vkm.api.model.* -import ru.melod1n.project.vkm.common.AppGlobal +import com.meloda.fast.api.model.* +import com.meloda.fast.common.AppGlobal object MemoryCache { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/ConversationsDao.kt b/app/src/main/java/com/meloda/fast/database/dao/ConversationsDao.kt similarity index 89% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/ConversationsDao.kt rename to app/src/main/java/com/meloda/fast/database/dao/ConversationsDao.kt index c46bfaba..91e4507f 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/ConversationsDao.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/ConversationsDao.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.database.dao +package com.meloda.fast.database.dao import androidx.room.* -import ru.melod1n.project.vkm.api.model.VKConversation +import com.meloda.fast.api.model.VKConversation @Dao interface ConversationsDao { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/FriendsDao.kt b/app/src/main/java/com/meloda/fast/database/dao/FriendsDao.kt similarity index 89% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/FriendsDao.kt rename to app/src/main/java/com/meloda/fast/database/dao/FriendsDao.kt index 15cdbe1c..52aee5a4 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/FriendsDao.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/FriendsDao.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.database.dao +package com.meloda.fast.database.dao import androidx.room.* -import ru.melod1n.project.vkm.api.model.VKFriend +import com.meloda.fast.api.model.VKFriend @Dao interface FriendsDao { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/GroupsDao.kt b/app/src/main/java/com/meloda/fast/database/dao/GroupsDao.kt similarity index 88% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/GroupsDao.kt rename to app/src/main/java/com/meloda/fast/database/dao/GroupsDao.kt index 539d1d1e..52e4056a 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/GroupsDao.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/GroupsDao.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.database.dao +package com.meloda.fast.database.dao import androidx.room.* -import ru.melod1n.project.vkm.api.model.VKGroup +import com.meloda.fast.api.model.VKGroup @Dao interface GroupsDao { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/MessagesDao.kt b/app/src/main/java/com/meloda/fast/database/dao/MessagesDao.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/MessagesDao.kt rename to app/src/main/java/com/meloda/fast/database/dao/MessagesDao.kt index 9e3e68b9..e2163c53 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/MessagesDao.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/MessagesDao.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.database.dao +package com.meloda.fast.database.dao import androidx.room.* -import ru.melod1n.project.vkm.api.model.VKMessage +import com.meloda.fast.api.model.VKMessage @Dao interface MessagesDao { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/UsersDao.kt b/app/src/main/java/com/meloda/fast/database/dao/UsersDao.kt similarity index 88% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/UsersDao.kt rename to app/src/main/java/com/meloda/fast/database/dao/UsersDao.kt index 15ad7537..21798f51 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/UsersDao.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/UsersDao.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.database.dao +package com.meloda.fast.database.dao import androidx.room.* -import ru.melod1n.project.vkm.api.model.VKUser +import com.meloda.fast.api.model.VKUser @Dao interface UsersDao { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ArrayListToByteArrayConverter.kt b/app/src/main/java/com/meloda/fast/database/dao/converters/ArrayListToByteArrayConverter.kt similarity index 72% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ArrayListToByteArrayConverter.kt rename to app/src/main/java/com/meloda/fast/database/dao/converters/ArrayListToByteArrayConverter.kt index 021a59db..6207e969 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ArrayListToByteArrayConverter.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/converters/ArrayListToByteArrayConverter.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.database.dao.converters +package com.meloda.fast.database.dao.converters import androidx.room.TypeConverter -import ru.melod1n.project.vkm.api.model.VKModel -import ru.melod1n.project.vkm.extensions.ArrayExtensions.isNullOrEmpty -import ru.melod1n.project.vkm.util.Utils +import com.meloda.fast.api.model.VKModel +import com.meloda.fast.extensions.ArrayExtensions.isNullOrEmpty +import com.meloda.fast.util.Utils @Suppress("UNCHECKED_CAST") class ArrayListToByteArrayConverter { diff --git a/app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ForwardedConverter.kt b/app/src/main/java/com/meloda/fast/database/dao/converters/ForwardedConverter.kt similarity index 73% rename from app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ForwardedConverter.kt rename to app/src/main/java/com/meloda/fast/database/dao/converters/ForwardedConverter.kt index 0f8b78cc..59380660 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/database/dao/converters/ForwardedConverter.kt +++ b/app/src/main/java/com/meloda/fast/database/dao/converters/ForwardedConverter.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.database.dao.converters +package com.meloda.fast.database.dao.converters import androidx.room.TypeConverter -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.extensions.ArrayExtensions.isNullOrEmpty -import ru.melod1n.project.vkm.util.Utils +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.extensions.ArrayExtensions.isNullOrEmpty +import com.meloda.fast.util.Utils import java.util.* @Suppress("UNCHECKED_CAST") diff --git a/app/src/main/java/ru/melod1n/project/vkm/dialog/AccountDialog.kt b/app/src/main/java/com/meloda/fast/dialog/AccountDialog.kt similarity index 75% rename from app/src/main/java/ru/melod1n/project/vkm/dialog/AccountDialog.kt rename to app/src/main/java/com/meloda/fast/dialog/AccountDialog.kt index e68bb207..b2f00d75 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/dialog/AccountDialog.kt +++ b/app/src/main/java/com/meloda/fast/dialog/AccountDialog.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.dialog +package com.meloda.fast.dialog import android.content.Intent import android.os.Bundle @@ -9,21 +9,23 @@ import android.widget.RelativeLayout import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.SettingsActivity -import ru.melod1n.project.vkm.adapter.SimpleItemAdapter -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.base.BaseFullscreenDialog -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.extensions.FragmentExtensions.findViewById -import ru.melod1n.project.vkm.item.SimpleMenuItem -import ru.melod1n.project.vkm.listener.ItemClickListener -import ru.melod1n.project.vkm.util.ViewUtils -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.activity.SettingsActivity +import com.meloda.fast.adapter.SimpleItemAdapter +import com.meloda.fast.api.UserConfig +import com.meloda.fast.base.BaseFullscreenDialog +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.extensions.FragmentExtensions.findViewById +import com.meloda.fast.item.SimpleMenuItem +import com.meloda.fast.listener.ItemClickListener +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ColorUtils +import com.meloda.fast.util.ViewUtils +import com.meloda.fast.widget.Toolbar class AccountDialog : BaseFullscreenDialog(), ItemClickListener { @@ -61,7 +63,7 @@ class AccountDialog : BaseFullscreenDialog(), ItemClickListener { private fun prepareToolbar() { toolbar.navigationIcon = requireContext().drawable(R.drawable.ic_close) - .tint(requireContext().color(R.color.accent)) + .tint(ColorUtils.getColorAccent(requireContext())) toolbar.setTitle(R.string.account_dialog_title) @@ -88,7 +90,7 @@ class AccountDialog : BaseFullscreenDialog(), ItemClickListener { SimpleMenuItem( requireContext().drawable(R.drawable.ic_settings_outline) - .tint(requireContext().color(R.color.accent)), + .tint(ColorUtils.getColorAccent(requireContext())), requireContext().getString(R.string.navigation_settings) ) { openSettingsScreen() }.let { items.add(it) } diff --git a/app/src/main/java/ru/melod1n/project/vkm/dialog/ProfileDialog.kt b/app/src/main/java/com/meloda/fast/dialog/ProfileDialog.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/dialog/ProfileDialog.kt rename to app/src/main/java/com/meloda/fast/dialog/ProfileDialog.kt index 3e732824..bdfb2186 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/dialog/ProfileDialog.kt +++ b/app/src/main/java/com/meloda/fast/dialog/ProfileDialog.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.dialog +package com.meloda.fast.dialog import android.os.Bundle import android.view.LayoutInflater @@ -10,12 +10,12 @@ import androidx.core.content.ContextCompat import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.google.android.material.bottomsheet.BottomSheetDialogFragment -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.adapter.SimpleItemAdapter -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.item.SimpleMenuItem +import com.meloda.fast.R +import com.meloda.fast.adapter.SimpleItemAdapter +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.item.SimpleMenuItem open class ProfileDialog( private val conversation: VKConversation, diff --git a/app/src/main/java/com/meloda/fast/event/EventInfo.kt b/app/src/main/java/com/meloda/fast/event/EventInfo.kt new file mode 100644 index 00000000..628cff61 --- /dev/null +++ b/app/src/main/java/com/meloda/fast/event/EventInfo.kt @@ -0,0 +1,5 @@ +package com.meloda.fast.event + +import com.meloda.fast.api.VKApiKeys + +class EventInfo constructor(var key: VKApiKeys, var data: T? = null) \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/ArrayExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/ArrayExtensions.kt similarity index 71% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/ArrayExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/ArrayExtensions.kt index 862c3516..20ad1457 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/ArrayExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/ArrayExtensions.kt @@ -1,6 +1,4 @@ -package ru.melod1n.project.vkm.extensions - -import android.content.Context +package com.meloda.fast.extensions object ArrayExtensions { diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/ContextExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/ContextExtensions.kt similarity index 95% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/ContextExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/ContextExtensions.kt index 8e57c849..dcce0bf6 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/ContextExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/ContextExtensions.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import android.content.Context import android.graphics.Typeface diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/DrawableExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/DrawableExtensions.kt similarity index 59% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/DrawableExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/DrawableExtensions.kt index 20719cf6..579e0442 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/DrawableExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/DrawableExtensions.kt @@ -1,10 +1,7 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions -import android.content.Context import android.graphics.drawable.Drawable import androidx.annotation.ColorInt -import androidx.annotation.DrawableRes -import androidx.core.content.ContextCompat object DrawableExtensions { diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/FloatExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/FloatExtensions.kt similarity index 74% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/FloatExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/FloatExtensions.kt index 9d7f58c2..42fdca5e 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/FloatExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/FloatExtensions.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import kotlin.math.roundToInt diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/FragmentExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/FragmentExtensions.kt similarity index 74% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/FragmentExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/FragmentExtensions.kt index b2ce6ea8..d42d3f22 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/FragmentExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/FragmentExtensions.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import android.view.View import androidx.fragment.app.Fragment @@ -10,7 +10,7 @@ object FragmentExtensions { } fun Fragment.runOnUiThread(runnable: Runnable) { - requireActivity().runOnUiThread(runnable) + activity?.runOnUiThread(runnable) } } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/ImageViewExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/ImageViewExtensions.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/ImageViewExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/ImageViewExtensions.kt index 342e550f..400e83ee 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/ImageViewExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/ImageViewExtensions.kt @@ -1,11 +1,11 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import android.graphics.drawable.Drawable import android.util.Log import android.widget.ImageView +import com.meloda.fast.BuildConfig import com.squareup.picasso.Callback import com.squareup.picasso.Picasso -import ru.melod1n.project.vkm.BuildConfig object ImageViewExtensions { diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/StringExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/StringExtensions.kt similarity index 77% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/StringExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/StringExtensions.kt index 71d6f2fb..7d2bde6a 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/StringExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/StringExtensions.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/extensions/TextViewExtensions.kt b/app/src/main/java/com/meloda/fast/extensions/TextViewExtensions.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/extensions/TextViewExtensions.kt rename to app/src/main/java/com/meloda/fast/extensions/TextViewExtensions.kt index ffaac8e3..9d130722 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/extensions/TextViewExtensions.kt +++ b/app/src/main/java/com/meloda/fast/extensions/TextViewExtensions.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.extensions +package com.meloda.fast.extensions import android.widget.TextView import com.google.android.material.textfield.TextInputLayout diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentConversations.kt b/app/src/main/java/com/meloda/fast/fragment/FragmentConversations.kt similarity index 82% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentConversations.kt rename to app/src/main/java/com/meloda/fast/fragment/FragmentConversations.kt index 3e039567..f5defdbd 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentConversations.kt +++ b/app/src/main/java/com/meloda/fast/fragment/FragmentConversations.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.content.Intent import android.graphics.drawable.ColorDrawable @@ -8,25 +8,26 @@ import android.view.View import android.view.ViewGroup import android.widget.LinearLayout import android.widget.ProgressBar -import androidx.core.content.ContextCompat import androidx.core.view.isVisible import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.MessagesActivity -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.base.BaseFragment -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.extensions.FragmentExtensions.findViewById -import ru.melod1n.project.vkm.fragment.ui.presenter.ConversationsPresenter -import ru.melod1n.project.vkm.fragment.ui.view.ConversationsView -import ru.melod1n.project.vkm.util.ViewUtils -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.activity.MessagesActivity +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.base.BaseFragment +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.event.EventInfo +import com.meloda.fast.extensions.FragmentExtensions.findViewById +import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread +import com.meloda.fast.fragment.ui.presenter.ConversationsPresenter +import com.meloda.fast.fragment.ui.view.ConversationsView +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ViewUtils +import com.meloda.fast.widget.Toolbar @Suppress("UNCHECKED_CAST") @@ -99,15 +100,9 @@ class FragmentConversations : BaseFragment(), ConversationsView { val decoration = DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) decoration.setDrawable( - ColorDrawable( - ContextCompat.getColor( - requireContext(), - R.color.divider - ) - ) + ColorDrawable(AndroidUtils.getThemeAttrColor(requireContext(), R.attr.dividerHorizontal)) ) - recyclerView.setHasFixedSize(true) recyclerView.itemAnimator = null recyclerView.addItemDecoration(decoration) @@ -118,7 +113,7 @@ class FragmentConversations : BaseFragment(), ConversationsView { TaskManager.execute { AppGlobal.database.users.getById(UserConfig.userId)?.let { if (it.photo100.isNotEmpty()) { - runOnUi { + runOnUiThread { toolbar.getAvatar().setImageURI(it.photo100) } } diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentFriends.kt b/app/src/main/java/com/meloda/fast/fragment/FragmentFriends.kt similarity index 87% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentFriends.kt rename to app/src/main/java/com/meloda/fast/fragment/FragmentFriends.kt index 5f7a99c2..3fd7e72a 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentFriends.kt +++ b/app/src/main/java/com/meloda/fast/fragment/FragmentFriends.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.content.Intent import android.graphics.drawable.ColorDrawable @@ -14,19 +14,19 @@ import androidx.recyclerview.widget.DividerItemDecoration import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.MessagesActivity -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApiKeys -import ru.melod1n.project.vkm.base.BaseFragment -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.event.EventInfo -import ru.melod1n.project.vkm.extensions.FragmentExtensions.findViewById -import ru.melod1n.project.vkm.fragment.ui.presenter.FriendsPresenter -import ru.melod1n.project.vkm.fragment.ui.view.FriendsView -import ru.melod1n.project.vkm.util.ViewUtils -import ru.melod1n.project.vkm.widget.Toolbar +import com.meloda.fast.R +import com.meloda.fast.activity.MessagesActivity +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApiKeys +import com.meloda.fast.base.BaseFragment +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.event.EventInfo +import com.meloda.fast.extensions.FragmentExtensions.findViewById +import com.meloda.fast.fragment.ui.presenter.FriendsPresenter +import com.meloda.fast.fragment.ui.view.FriendsView +import com.meloda.fast.util.ViewUtils +import com.meloda.fast.widget.Toolbar class FragmentFriends(private val userId: Int = 0) : BaseFragment(), FriendsView { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentImportant.kt b/app/src/main/java/com/meloda/fast/fragment/FragmentImportant.kt similarity index 76% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentImportant.kt rename to app/src/main/java/com/meloda/fast/fragment/FragmentImportant.kt index 1cdfb056..c37d94f8 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentImportant.kt +++ b/app/src/main/java/com/meloda/fast/fragment/FragmentImportant.kt @@ -1,11 +1,11 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseFragment +import com.meloda.fast.R +import com.meloda.fast.base.BaseFragment class FragmentImportant : BaseFragment() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSearch.kt b/app/src/main/java/com/meloda/fast/fragment/FragmentSearch.kt similarity index 62% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSearch.kt rename to app/src/main/java/com/meloda/fast/fragment/FragmentSearch.kt index 3d1b9d3e..0ad43491 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSearch.kt +++ b/app/src/main/java/com/meloda/fast/fragment/FragmentSearch.kt @@ -1,6 +1,6 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment -import ru.melod1n.project.vkm.base.BaseFragment +import com.meloda.fast.base.BaseFragment class FragmentSearch : BaseFragment() { inner class SearchConversations : BaseFragment() diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSettings.kt b/app/src/main/java/com/meloda/fast/fragment/FragmentSettings.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSettings.kt rename to app/src/main/java/com/meloda/fast/fragment/FragmentSettings.kt index 81bbd6e0..64b2481d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/FragmentSettings.kt +++ b/app/src/main/java/com/meloda/fast/fragment/FragmentSettings.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.content.Intent import android.os.Bundle @@ -6,15 +6,15 @@ import androidx.appcompat.app.AlertDialog import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import androidx.preference.PreferenceScreen -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.DropUserDataActivity -import ru.melod1n.project.vkm.activity.UpdateActivity -import ru.melod1n.project.vkm.base.BaseActivity -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.util.AndroidUtils +import com.meloda.fast.R +import com.meloda.fast.activity.DropUserDataActivity +import com.meloda.fast.activity.UpdateActivity +import com.meloda.fast.base.BaseActivity +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.common.TaskManager +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.util.AndroidUtils class FragmentSettings : PreferenceFragmentCompat(), Preference.OnPreferenceClickListener, diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/LoginFragment.kt b/app/src/main/java/com/meloda/fast/fragment/LoginFragment.kt similarity index 93% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/LoginFragment.kt rename to app/src/main/java/com/meloda/fast/fragment/LoginFragment.kt index c3a09024..babe77c5 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/LoginFragment.kt +++ b/app/src/main/java/com/meloda/fast/fragment/LoginFragment.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.os.Bundle import android.text.Editable @@ -10,11 +10,11 @@ import android.view.ViewGroup import android.view.inputmethod.EditorInfo import android.widget.EditText import com.google.android.material.button.MaterialButton -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseFragment -import ru.melod1n.project.vkm.fragment.ui.presenter.LoginPresenter -import ru.melod1n.project.vkm.fragment.ui.view.LoginView -import ru.melod1n.project.vkm.util.KeyboardUtils +import com.meloda.fast.R +import com.meloda.fast.base.BaseFragment +import com.meloda.fast.fragment.ui.presenter.LoginPresenter +import com.meloda.fast.fragment.ui.view.LoginView +import com.meloda.fast.util.KeyboardUtils class LoginFragment : BaseFragment(), LoginView { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ValidationFragment.kt b/app/src/main/java/com/meloda/fast/fragment/ValidationFragment.kt similarity index 95% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ValidationFragment.kt rename to app/src/main/java/com/meloda/fast/fragment/ValidationFragment.kt index d521b088..23bb8cee 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ValidationFragment.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ValidationFragment.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment +package com.meloda.fast.fragment import android.graphics.Bitmap import android.os.Bundle @@ -10,8 +10,8 @@ import android.webkit.CookieManager import android.webkit.WebView import android.webkit.WebViewClient import androidx.core.os.bundleOf -import ru.melod1n.project.vkm.api.VKAuth -import ru.melod1n.project.vkm.base.BaseFragment +import com.meloda.fast.api.VKAuth +import com.meloda.fast.base.BaseFragment class ValidationFragment : BaseFragment() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/ConversationsPresenter.kt b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/ConversationsPresenter.kt similarity index 82% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/ConversationsPresenter.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/presenter/ConversationsPresenter.kt index bca6e1de..3eddad74 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/ConversationsPresenter.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/ConversationsPresenter.kt @@ -1,28 +1,27 @@ -package ru.melod1n.project.vkm.fragment.ui.presenter +package com.meloda.fast.fragment.ui.presenter -import android.content.Context import android.os.Bundle import android.util.Log import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.activity.MessagesActivity -import ru.melod1n.project.vkm.adapter.ConversationsAdapter -import ru.melod1n.project.vkm.adapter.diffutil.ConversationsCallback -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpPresenter -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.common.TimeManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.fragment.ui.repository.ConversationsRepository -import ru.melod1n.project.vkm.fragment.ui.view.ConversationsView -import ru.melod1n.project.vkm.listener.ItemClickListener -import ru.melod1n.project.vkm.listener.ItemLongClickListener -import ru.melod1n.project.vkm.util.AndroidUtils -import ru.melod1n.project.vkm.util.ArrayUtils +import com.meloda.fast.BuildConfig +import com.meloda.fast.activity.MessagesActivity +import com.meloda.fast.adapter.ConversationsAdapter +import com.meloda.fast.adapter.diffutil.ConversationsCallback +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.common.TaskManager +import com.meloda.fast.common.TimeManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.fragment.ui.repository.ConversationsRepository +import com.meloda.fast.fragment.ui.view.ConversationsView +import com.meloda.fast.listener.ItemClickListener +import com.meloda.fast.listener.ItemLongClickListener +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ArrayUtils +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpPresenter import java.util.* class ConversationsPresenter(viewState: ConversationsView) : @@ -52,24 +51,26 @@ class ConversationsPresenter(viewState: ConversationsView) : prepareViews() - setRecyclerViewScrollListener(recyclerView) +// setRecyclerViewScrollListener(recyclerView) setRefreshLayoutListener(refreshLayout) createAdapter() TimeManager.addOnMinuteChangeListener(this) - getCachedConversations(0, DEFAULT_CONVERSATIONS_COUNT, object : MvpOnLoadListener { - override fun onResponse(response: Any?) { - setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) - loadConversations(0, DEFAULT_CONVERSATIONS_COUNT) - } + loadConversations(0, DEFAULT_CONVERSATIONS_COUNT) - override fun onError(t: Throwable) { - setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) - loadConversations(0, DEFAULT_CONVERSATIONS_COUNT) - } - }) +// getCachedConversations(0, DEFAULT_CONVERSATIONS_COUNT, object : MvpOnLoadListener { +// override fun onResponse(response: Any?) { +// setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) +// loadConversations(0, DEFAULT_CONVERSATIONS_COUNT) +// } +// +// override fun onError(t: Throwable) { +// setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) +// loadConversations(0, DEFAULT_CONVERSATIONS_COUNT) +// } +// }) } private fun setRecyclerViewScrollListener(recyclerView: RecyclerView) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/FriendsPresenter.kt b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/FriendsPresenter.kt similarity index 89% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/FriendsPresenter.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/presenter/FriendsPresenter.kt index 4e57d7c6..eeb4d3ba 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/FriendsPresenter.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/FriendsPresenter.kt @@ -1,21 +1,20 @@ -package ru.melod1n.project.vkm.fragment.ui.presenter +package com.meloda.fast.fragment.ui.presenter -import android.content.Context import android.os.Bundle import android.util.Log import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout -import ru.melod1n.project.vkm.activity.MessagesActivity -import ru.melod1n.project.vkm.adapter.UsersAdapter -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpPresenter -import ru.melod1n.project.vkm.fragment.ui.repository.FriendsRepository -import ru.melod1n.project.vkm.fragment.ui.view.FriendsView -import ru.melod1n.project.vkm.listener.ItemClickListener -import ru.melod1n.project.vkm.util.AndroidUtils -import ru.melod1n.project.vkm.util.ArrayUtils +import com.meloda.fast.activity.MessagesActivity +import com.meloda.fast.adapter.UsersAdapter +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.fragment.ui.repository.FriendsRepository +import com.meloda.fast.fragment.ui.view.FriendsView +import com.meloda.fast.listener.ItemClickListener +import com.meloda.fast.util.AndroidUtils +import com.meloda.fast.util.ArrayUtils +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpPresenter class FriendsPresenter(viewState: FriendsView) : MvpPresenter( @@ -51,7 +50,7 @@ class FriendsPresenter(viewState: FriendsView) : getCachedFriends(userId, 0, DEFAULT_FRIENDS_COUNT, false, object : MvpOnLoadListener { override fun onResponse(response: Any?) { - setState(if (adapter.isEmpty()) 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) } @@ -71,7 +70,11 @@ class FriendsPresenter(viewState: FriendsView) : ) { setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) - repository.getCachedFriends(userId, offset, count, onlyOnline, + repository.getCachedFriends( + userId, + offset, + count, + onlyOnline, object : MvpOnLoadListener> { override fun onResponse(response: ArrayList) { val friends = ArrayUtils.cut(response, offset, count) @@ -105,7 +108,10 @@ class FriendsPresenter(viewState: FriendsView) : setState(if (adapter.isEmpty()) ListState.EMPTY_LOADING else ListState.FILLED_LOADING) } - repository.loadFriends(userId, offset, count, + repository.loadFriends( + userId, + offset, + count, object : MvpOnLoadListener> { override fun onResponse(response: ArrayList) { friendsCount = VKUser.friendsCount diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/LoginPresenter.kt b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/LoginPresenter.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/LoginPresenter.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/presenter/LoginPresenter.kt index 9ab7a214..8cb4d42e 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/presenter/LoginPresenter.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/presenter/LoginPresenter.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment.ui.presenter +package com.meloda.fast.fragment.ui.presenter import android.content.Context import android.os.Bundle @@ -10,19 +10,19 @@ import androidx.appcompat.app.AlertDialog import androidx.core.view.isVisible import androidx.fragment.app.setFragmentResultListener import com.google.android.material.textfield.TextInputEditText +import com.meloda.fast.R +import com.meloda.fast.activity.MainActivity +import com.meloda.fast.api.UserConfig +import com.meloda.fast.extensions.FragmentExtensions.runOnUiThread +import com.meloda.fast.fragment.FragmentConversations +import com.meloda.fast.fragment.LoginFragment +import com.meloda.fast.fragment.ValidationFragment +import com.meloda.fast.fragment.ui.repository.LoginRepository +import com.meloda.fast.fragment.ui.view.LoginView +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpPresenter import com.squareup.picasso.Picasso import org.json.JSONObject -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.activity.MainActivity -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpPresenter -import ru.melod1n.project.vkm.extensions.FragmentExtensions.runOnUiThread -import ru.melod1n.project.vkm.fragment.FragmentConversations -import ru.melod1n.project.vkm.fragment.LoginFragment -import ru.melod1n.project.vkm.fragment.ValidationFragment -import ru.melod1n.project.vkm.fragment.ui.repository.LoginRepository -import ru.melod1n.project.vkm.fragment.ui.view.LoginView class LoginPresenter( @@ -118,13 +118,15 @@ class LoginPresenter( } private fun openMainScreen() { - (fragment.requireActivity() as MainActivity).bottomBar.isVisible = true + fragment.runOnUiThread { + (fragment.requireActivity() as MainActivity).bottomBar.isVisible = true - fragment.parentFragmentManager.beginTransaction() - .replace( - R.id.fragmentContainer, - FragmentConversations() - ).commit() + fragment.parentFragmentManager.beginTransaction() + .replace( + R.id.fragmentContainer, + FragmentConversations() + ).commit() + } } private fun saveUserData(userId: Int, token: String) { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/ConversationsRepository.kt b/app/src/main/java/com/meloda/fast/fragment/ui/repository/ConversationsRepository.kt similarity index 82% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/ConversationsRepository.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/repository/ConversationsRepository.kt index 48b52aac..84f2de39 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/ConversationsRepository.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/repository/ConversationsRepository.kt @@ -1,16 +1,16 @@ -package ru.melod1n.project.vkm.fragment.ui.repository +package com.meloda.fast.fragment.ui.repository -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.api.model.VKConversation -import ru.melod1n.project.vkm.api.model.VKMessage -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpRepository -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.extensions.ArrayExtensions.asArrayList -import ru.melod1n.project.vkm.listener.OnResponseListener +import com.meloda.fast.api.VKApi +import com.meloda.fast.api.model.VKConversation +import com.meloda.fast.api.model.VKMessage +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.extensions.ArrayExtensions.asArrayList +import com.meloda.fast.listener.OnResponseListener +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpRepository class ConversationsRepository : MvpRepository() { @@ -50,6 +50,10 @@ class ConversationsRepository : MvpRepository() { offset: Int, count: Int, listener: MvpOnLoadListener> ) { + if (true) { + sendResponse(listener, arrayListOf()) + return + } TaskManager.execute { val conversations = MemoryCache.getConversations().asArrayList() diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/FriendsRepository.kt b/app/src/main/java/com/meloda/fast/fragment/ui/repository/FriendsRepository.kt similarity index 84% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/FriendsRepository.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/repository/FriendsRepository.kt index d41d10b1..3c844d5e 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/FriendsRepository.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/repository/FriendsRepository.kt @@ -1,14 +1,14 @@ -package ru.melod1n.project.vkm.fragment.ui.repository +package com.meloda.fast.fragment.ui.repository import android.util.Log -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.api.model.VKFriend -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpRepository -import ru.melod1n.project.vkm.common.TaskManager -import ru.melod1n.project.vkm.database.MemoryCache -import ru.melod1n.project.vkm.listener.OnResponseListener +import com.meloda.fast.api.VKApi +import com.meloda.fast.api.model.VKFriend +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.common.TaskManager +import com.meloda.fast.database.MemoryCache +import com.meloda.fast.listener.OnResponseListener +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpRepository class FriendsRepository : MvpRepository() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/LoginRepository.kt b/app/src/main/java/com/meloda/fast/fragment/ui/repository/LoginRepository.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/LoginRepository.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/repository/LoginRepository.kt index e9ae5137..65232679 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/repository/LoginRepository.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/repository/LoginRepository.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.fragment.ui.repository +package com.meloda.fast.fragment.ui.repository import android.annotation.SuppressLint import android.content.Context @@ -6,11 +6,11 @@ import android.webkit.CookieManager import android.webkit.JavascriptInterface import android.webkit.WebView import android.webkit.WebViewClient +import com.meloda.fast.api.VKAuth +import com.meloda.mvp.MvpOnLoadListener +import com.meloda.mvp.MvpRepository import org.json.JSONObject import org.jsoup.Jsoup -import ru.melod1n.project.vkm.api.VKAuth -import ru.melod1n.project.vkm.base.mvp.MvpOnLoadListener -import ru.melod1n.project.vkm.base.mvp.MvpRepository class LoginRepository : MvpRepository() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/ConversationsView.kt b/app/src/main/java/com/meloda/fast/fragment/ui/view/ConversationsView.kt similarity index 52% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/ConversationsView.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/view/ConversationsView.kt index 38bdbfb1..4c5a1c3c 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/ConversationsView.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/view/ConversationsView.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.fragment.ui.view +package com.meloda.fast.fragment.ui.view import android.os.Bundle -import ru.melod1n.project.vkm.base.mvp.MvpView +import com.meloda.mvp.MvpView interface ConversationsView : MvpView { diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/FriendsView.kt b/app/src/main/java/com/meloda/fast/fragment/ui/view/FriendsView.kt similarity index 50% rename from app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/FriendsView.kt rename to app/src/main/java/com/meloda/fast/fragment/ui/view/FriendsView.kt index 44bc2cf8..03d71a8f 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/FriendsView.kt +++ b/app/src/main/java/com/meloda/fast/fragment/ui/view/FriendsView.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.fragment.ui.view +package com.meloda.fast.fragment.ui.view import android.os.Bundle -import ru.melod1n.project.vkm.base.mvp.MvpView +import com.meloda.mvp.MvpView interface FriendsView : MvpView { diff --git a/app/src/main/java/com/meloda/fast/fragment/ui/view/LoginView.kt b/app/src/main/java/com/meloda/fast/fragment/ui/view/LoginView.kt new file mode 100644 index 00000000..dc55c615 --- /dev/null +++ b/app/src/main/java/com/meloda/fast/fragment/ui/view/LoginView.kt @@ -0,0 +1,11 @@ +package com.meloda.fast.fragment.ui.view + +import com.meloda.mvp.MvpView + +interface LoginView : MvpView { + + fun initViews() + + fun prepareViews() + +} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/io/BytesOutputStream.kt b/app/src/main/java/com/meloda/fast/io/BytesOutputStream.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/io/BytesOutputStream.kt rename to app/src/main/java/com/meloda/fast/io/BytesOutputStream.kt index d31d58fb..65892969 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/io/BytesOutputStream.kt +++ b/app/src/main/java/com/meloda/fast/io/BytesOutputStream.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.io +package com.meloda.fast.io import java.io.ByteArrayOutputStream diff --git a/app/src/main/java/ru/melod1n/project/vkm/io/Charsets.kt b/app/src/main/java/com/meloda/fast/io/Charsets.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/io/Charsets.kt rename to app/src/main/java/com/meloda/fast/io/Charsets.kt index 39cd6edf..d9de4363 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/io/Charsets.kt +++ b/app/src/main/java/com/meloda/fast/io/Charsets.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.io +package com.meloda.fast.io import java.nio.charset.Charset import java.nio.charset.StandardCharsets diff --git a/app/src/main/java/ru/melod1n/project/vkm/io/EasyStreams.kt b/app/src/main/java/com/meloda/fast/io/EasyStreams.kt similarity index 99% rename from app/src/main/java/ru/melod1n/project/vkm/io/EasyStreams.kt rename to app/src/main/java/com/meloda/fast/io/EasyStreams.kt index 7f27e929..af371aa5 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/io/EasyStreams.kt +++ b/app/src/main/java/com/meloda/fast/io/EasyStreams.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.io +package com.meloda.fast.io import org.jetbrains.annotations.Contract import java.io.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/io/FileStreams.kt b/app/src/main/java/com/meloda/fast/io/FileStreams.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/io/FileStreams.kt rename to app/src/main/java/com/meloda/fast/io/FileStreams.kt index 8b6383e2..a9dc8e66 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/io/FileStreams.kt +++ b/app/src/main/java/com/meloda/fast/io/FileStreams.kt @@ -1,8 +1,8 @@ -package ru.melod1n.project.vkm.io +package com.meloda.fast.io +import com.meloda.fast.io.EasyStreams.read +import com.meloda.fast.io.EasyStreams.write import org.jetbrains.annotations.Contract -import ru.melod1n.project.vkm.io.EasyStreams.read -import ru.melod1n.project.vkm.io.EasyStreams.write import java.io.* import java.math.BigInteger diff --git a/app/src/main/java/com/meloda/fast/item/SimpleMenuItem.kt b/app/src/main/java/com/meloda/fast/item/SimpleMenuItem.kt new file mode 100644 index 00000000..c580e72f --- /dev/null +++ b/app/src/main/java/com/meloda/fast/item/SimpleMenuItem.kt @@ -0,0 +1,10 @@ +package com.meloda.fast.item + +import android.graphics.drawable.Drawable +import android.view.View + +data class SimpleMenuItem( + val icon: Drawable?, + val title: String, + var clickListener: View.OnClickListener? = null +) diff --git a/app/src/main/java/ru/melod1n/project/vkm/listener/ItemClickListener.kt b/app/src/main/java/com/meloda/fast/listener/ItemClickListener.kt similarity index 62% rename from app/src/main/java/ru/melod1n/project/vkm/listener/ItemClickListener.kt rename to app/src/main/java/com/meloda/fast/listener/ItemClickListener.kt index bef67d5e..7780ad62 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/listener/ItemClickListener.kt +++ b/app/src/main/java/com/meloda/fast/listener/ItemClickListener.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.listener +package com.meloda.fast.listener interface ItemClickListener { fun onItemClick(position: Int) diff --git a/app/src/main/java/ru/melod1n/project/vkm/listener/ItemLongClickListener.kt b/app/src/main/java/com/meloda/fast/listener/ItemLongClickListener.kt similarity index 65% rename from app/src/main/java/ru/melod1n/project/vkm/listener/ItemLongClickListener.kt rename to app/src/main/java/com/meloda/fast/listener/ItemLongClickListener.kt index 1f1d04a0..4f7b095f 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/listener/ItemLongClickListener.kt +++ b/app/src/main/java/com/meloda/fast/listener/ItemLongClickListener.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.listener +package com.meloda.fast.listener interface ItemLongClickListener { fun onItemLongClick(position: Int) diff --git a/app/src/main/java/ru/melod1n/project/vkm/listener/OnResponseListener.kt b/app/src/main/java/com/meloda/fast/listener/OnResponseListener.kt similarity index 71% rename from app/src/main/java/ru/melod1n/project/vkm/listener/OnResponseListener.kt rename to app/src/main/java/com/meloda/fast/listener/OnResponseListener.kt index d833d44e..f517b607 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/listener/OnResponseListener.kt +++ b/app/src/main/java/com/meloda/fast/listener/OnResponseListener.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.listener +package com.meloda.fast.listener interface OnResponseListener { diff --git a/app/src/main/java/ru/melod1n/project/vkm/model/NewUpdateInfo.kt b/app/src/main/java/com/meloda/fast/model/NewUpdateInfo.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/model/NewUpdateInfo.kt rename to app/src/main/java/com/meloda/fast/model/NewUpdateInfo.kt index a11057a4..5a18e6ed 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/model/NewUpdateInfo.kt +++ b/app/src/main/java/com/meloda/fast/model/NewUpdateInfo.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.model +package com.meloda.fast.model import org.json.JSONObject diff --git a/app/src/main/java/ru/melod1n/project/vkm/model/UpdateInfo.kt b/app/src/main/java/com/meloda/fast/model/UpdateInfo.kt similarity index 84% rename from app/src/main/java/ru/melod1n/project/vkm/model/UpdateInfo.kt rename to app/src/main/java/com/meloda/fast/model/UpdateInfo.kt index 2555fe7c..042ae0dd 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/model/UpdateInfo.kt +++ b/app/src/main/java/com/meloda/fast/model/UpdateInfo.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.model +package com.meloda.fast.model import org.json.JSONObject @@ -10,7 +10,7 @@ class UpdateInfo() { var downloadLink: String = "" var date: Int = 0 - constructor(o: JSONObject): this() { + constructor(o: JSONObject) : this() { version = o.optString("lastVersionName") code = o.optInt("lastVersionCode") changelog = o.optString("changelog") diff --git a/app/src/main/java/ru/melod1n/project/vkm/net/HttpRequest.kt b/app/src/main/java/com/meloda/fast/net/HttpRequest.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/net/HttpRequest.kt rename to app/src/main/java/com/meloda/fast/net/HttpRequest.kt index da24e89d..9e5ab54d 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/net/HttpRequest.kt +++ b/app/src/main/java/com/meloda/fast/net/HttpRequest.kt @@ -1,10 +1,10 @@ -package ru.melod1n.project.vkm.net +package com.meloda.fast.net import androidx.collection.ArrayMap import androidx.collection.arrayMapOf -import ru.melod1n.project.vkm.io.EasyStreams.gzip -import ru.melod1n.project.vkm.io.EasyStreams.read -import ru.melod1n.project.vkm.io.EasyStreams.readBytes +import com.meloda.fast.io.EasyStreams.gzip +import com.meloda.fast.io.EasyStreams.read +import com.meloda.fast.io.EasyStreams.readBytes import java.io.IOException import java.io.InputStream import java.io.UnsupportedEncodingException diff --git a/app/src/main/java/ru/melod1n/project/vkm/receiver/DownloadUpdateReceiver.kt b/app/src/main/java/com/meloda/fast/receiver/DownloadUpdateReceiver.kt similarity index 76% rename from app/src/main/java/ru/melod1n/project/vkm/receiver/DownloadUpdateReceiver.kt rename to app/src/main/java/com/meloda/fast/receiver/DownloadUpdateReceiver.kt index d404c3ba..e3efc036 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/receiver/DownloadUpdateReceiver.kt +++ b/app/src/main/java/com/meloda/fast/receiver/DownloadUpdateReceiver.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.receiver +package com.meloda.fast.receiver import android.content.BroadcastReceiver import android.content.Context import android.content.Intent -import ru.melod1n.project.vkm.listener.OnResponseListener +import com.meloda.fast.listener.OnResponseListener open class DownloadUpdateReceiver : BroadcastReceiver() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/receiver/MinuteReceiver.kt b/app/src/main/java/com/meloda/fast/receiver/MinuteReceiver.kt similarity index 74% rename from app/src/main/java/ru/melod1n/project/vkm/receiver/MinuteReceiver.kt rename to app/src/main/java/com/meloda/fast/receiver/MinuteReceiver.kt index 28865f77..fe60a687 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/receiver/MinuteReceiver.kt +++ b/app/src/main/java/com/meloda/fast/receiver/MinuteReceiver.kt @@ -1,9 +1,9 @@ -package ru.melod1n.project.vkm.receiver +package com.meloda.fast.receiver import android.content.BroadcastReceiver import android.content.Context import android.content.Intent -import ru.melod1n.project.vkm.common.TimeManager +import com.meloda.fast.common.TimeManager class MinuteReceiver : BroadcastReceiver() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/service/LongPollService.kt b/app/src/main/java/com/meloda/fast/service/LongPollService.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/service/LongPollService.kt rename to app/src/main/java/com/meloda/fast/service/LongPollService.kt index 7e184742..48145aca 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/service/LongPollService.kt +++ b/app/src/main/java/com/meloda/fast/service/LongPollService.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.service +package com.meloda.fast.service import android.app.Service import android.content.Intent @@ -6,15 +6,15 @@ import android.os.IBinder import android.util.Log import androidx.annotation.WorkerThread import androidx.collection.arrayMapOf +import com.meloda.fast.api.UserConfig +import com.meloda.fast.api.VKApi +import com.meloda.fast.api.VKLongPollParser +import com.meloda.fast.api.model.VKLongPollServer +import com.meloda.fast.concurrent.LowThread +import com.meloda.fast.net.HttpRequest +import com.meloda.fast.util.AndroidUtils import org.json.JSONArray import org.json.JSONObject -import ru.melod1n.project.vkm.api.UserConfig -import ru.melod1n.project.vkm.api.VKApi -import ru.melod1n.project.vkm.api.VKLongPollParser -import ru.melod1n.project.vkm.api.model.VKLongPollServer -import ru.melod1n.project.vkm.concurrent.LowThread -import ru.melod1n.project.vkm.net.HttpRequest -import ru.melod1n.project.vkm.util.AndroidUtils @Deprecated("Absolutely obsolete") class LongPollService : Service() { diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/AndroidUtils.kt b/app/src/main/java/com/meloda/fast/util/AndroidUtils.kt similarity index 70% rename from app/src/main/java/ru/melod1n/project/vkm/util/AndroidUtils.kt rename to app/src/main/java/com/meloda/fast/util/AndroidUtils.kt index 34bd5325..d3935dd4 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/AndroidUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/AndroidUtils.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import android.content.ClipData import android.content.Context @@ -8,8 +8,11 @@ import android.net.Uri import android.os.Build import android.provider.Settings import android.util.DisplayMetrics -import ru.melod1n.project.vkm.BuildConfig -import ru.melod1n.project.vkm.common.AppGlobal +import android.util.TypedValue +import androidx.annotation.AttrRes +import com.meloda.fast.BuildConfig +import com.meloda.fast.common.AppGlobal + object AndroidUtils { @@ -79,4 +82,39 @@ object AndroidUtils { AppGlobal.clipboardManager.setPrimaryClip(ClipData.newPlainText(label, text)) } + fun getThemeAttrColor(context: Context, @AttrRes resId: Int): Int { +// val typedValue = TypedValue() +// +// context.theme.resolveAttribute(resId, typedValue, true) +// +// return typedValue.data + + val typedValue = TypedValue() + context.theme.resolveAttribute(resId, typedValue, true) + val colorRes = typedValue.resourceId + var color = -1 + try { + color = context.resources.getColor(colorRes, context.theme) + } catch (e: Exception) { + + } + + return color + + + } + + /* + TypedValue typedValue = new TypedValue(); + context.getTheme().resolveAttribute(attributeId, typedValue, true); + int colorRes = typedValue.resourceId; + int color = -1; + try { + color = context.getResources().getColor(colorRes); + } catch (Resources.NotFoundException e) { + Log.w(TAG, "Not found color resource by id: " + colorRes); + } + return color; + */ + } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/ArrayUtils.kt b/app/src/main/java/com/meloda/fast/util/ArrayUtils.kt similarity index 94% rename from app/src/main/java/ru/melod1n/project/vkm/util/ArrayUtils.kt rename to app/src/main/java/com/meloda/fast/util/ArrayUtils.kt index 5310a154..a07228bc 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/ArrayUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/ArrayUtils.kt @@ -1,6 +1,6 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util -import ru.melod1n.project.vkm.extensions.ArrayExtensions.asArrayList +import com.meloda.fast.extensions.ArrayExtensions.asArrayList import java.util.stream.Collectors object ArrayUtils { diff --git a/app/src/main/java/com/meloda/fast/util/ColorUtils.kt b/app/src/main/java/com/meloda/fast/util/ColorUtils.kt new file mode 100644 index 00000000..ff82de84 --- /dev/null +++ b/app/src/main/java/com/meloda/fast/util/ColorUtils.kt @@ -0,0 +1,14 @@ +package com.meloda.fast.util + +import android.content.Context +import androidx.annotation.ColorInt +import com.meloda.fast.R + +object ColorUtils { + + @ColorInt + fun getColorAccent(context: Context): Int { + return AndroidUtils.getThemeAttrColor(context, R.attr.colorAccent) + } + +} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/ImageUtils.kt b/app/src/main/java/com/meloda/fast/util/ImageUtils.kt similarity index 97% rename from app/src/main/java/ru/melod1n/project/vkm/util/ImageUtils.kt rename to app/src/main/java/com/meloda/fast/util/ImageUtils.kt index 1fb1c084..8f31a359 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/ImageUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/ImageUtils.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import android.graphics.Bitmap import android.graphics.drawable.Drawable diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/KeyboardUtils.kt b/app/src/main/java/com/meloda/fast/util/KeyboardUtils.kt similarity index 78% rename from app/src/main/java/ru/melod1n/project/vkm/util/KeyboardUtils.kt rename to app/src/main/java/com/meloda/fast/util/KeyboardUtils.kt index cd4df5ed..0edeb181 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/KeyboardUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/KeyboardUtils.kt @@ -1,7 +1,7 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import android.view.View -import ru.melod1n.project.vkm.common.AppGlobal +import com.meloda.fast.common.AppGlobal object KeyboardUtils { diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/TextUtils.kt b/app/src/main/java/com/meloda/fast/util/TextUtils.kt similarity index 87% rename from app/src/main/java/ru/melod1n/project/vkm/util/TextUtils.kt rename to app/src/main/java/com/meloda/fast/util/TextUtils.kt index dd6959b1..d8524e37 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/TextUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/TextUtils.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util object TextUtils { diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/TimeUtils.kt b/app/src/main/java/com/meloda/fast/util/TimeUtils.kt similarity index 90% rename from app/src/main/java/ru/melod1n/project/vkm/util/TimeUtils.kt rename to app/src/main/java/com/meloda/fast/util/TimeUtils.kt index 303f9a91..df4f059b 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/TimeUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/TimeUtils.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import java.util.* diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/Utils.kt b/app/src/main/java/com/meloda/fast/util/Utils.kt similarity index 85% rename from app/src/main/java/ru/melod1n/project/vkm/util/Utils.kt rename to app/src/main/java/com/meloda/fast/util/Utils.kt index 10b7f6ae..cd021c94 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/Utils.kt +++ b/app/src/main/java/com/meloda/fast/util/Utils.kt @@ -1,11 +1,11 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import android.content.Context import android.content.res.Configuration -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.common.AppGlobal -import ru.melod1n.project.vkm.extensions.ArrayExtensions.isNullOrEmpty -import ru.melod1n.project.vkm.io.BytesOutputStream +import com.meloda.fast.R +import com.meloda.fast.common.AppGlobal +import com.meloda.fast.extensions.ArrayExtensions.isNullOrEmpty +import com.meloda.fast.io.BytesOutputStream import java.io.ByteArrayInputStream import java.io.IOException import java.io.ObjectInputStream diff --git a/app/src/main/java/ru/melod1n/project/vkm/util/ViewUtils.kt b/app/src/main/java/com/meloda/fast/util/ViewUtils.kt similarity index 83% rename from app/src/main/java/ru/melod1n/project/vkm/util/ViewUtils.kt rename to app/src/main/java/com/meloda/fast/util/ViewUtils.kt index a4cd75f8..5f692bec 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/util/ViewUtils.kt +++ b/app/src/main/java/com/meloda/fast/util/ViewUtils.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.util +package com.meloda.fast.util import android.content.Context import android.graphics.drawable.ColorDrawable @@ -7,12 +7,12 @@ import android.view.View import android.widget.TextView import android.widget.Toast import com.google.android.material.snackbar.Snackbar +import com.meloda.fast.R +import com.meloda.fast.api.model.VKUser +import com.meloda.fast.api.util.VKUtil +import com.meloda.fast.extensions.ContextExtensions.color +import com.meloda.fast.widget.CircleImageView import com.squareup.picasso.Picasso -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.api.model.VKUser -import ru.melod1n.project.vkm.api.util.VKUtil -import ru.melod1n.project.vkm.extensions.ContextExtensions.color -import ru.melod1n.project.vkm.widget.CircleImageView object ViewUtils { diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/BoundedLinearLayout.kt b/app/src/main/java/com/meloda/fast/widget/BoundedLinearLayout.kt similarity index 96% rename from app/src/main/java/ru/melod1n/project/vkm/widget/BoundedLinearLayout.kt rename to app/src/main/java/com/meloda/fast/widget/BoundedLinearLayout.kt index f473c96c..c39291b4 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/BoundedLinearLayout.kt +++ b/app/src/main/java/com/meloda/fast/widget/BoundedLinearLayout.kt @@ -1,10 +1,10 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.annotation.SuppressLint import android.content.Context import android.util.AttributeSet import android.widget.LinearLayout -import ru.melod1n.project.vkm.R +import com.meloda.fast.R class BoundedLinearLayout : LinearLayout { private var mBoundedWidth: Int diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/CircleImageView.kt b/app/src/main/java/com/meloda/fast/widget/CircleImageView.kt similarity index 84% rename from app/src/main/java/ru/melod1n/project/vkm/widget/CircleImageView.kt rename to app/src/main/java/com/meloda/fast/widget/CircleImageView.kt index f5b7f0f7..86c7c5b2 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/CircleImageView.kt +++ b/app/src/main/java/com/meloda/fast/widget/CircleImageView.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.content.Context import android.graphics.Canvas @@ -21,7 +21,11 @@ class CircleImageView : AppCompatImageView { constructor(context: Context, attrs: AttributeSet?) : this(context, attrs, 0) - constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { + constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super( + context, + attrs, + defStyleAttr + ) { init() } @@ -54,6 +58,11 @@ class CircleImageView : AppCompatImageView { private fun createRect(width: Int, height: Int) { rect = RectF(0f, 0f, width.toFloat(), height.toFloat()) path = Path() - path!!.addRoundRect(rect!!, (width / 2).toFloat(), (height / 2).toFloat(), Path.Direction.CW) + path!!.addRoundRect( + rect!!, + (width / 2).toFloat(), + (height / 2).toFloat(), + Path.Direction.CW + ) } } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/NoItemsView.kt b/app/src/main/java/com/meloda/fast/widget/NoItemsView.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/widget/NoItemsView.kt rename to app/src/main/java/com/meloda/fast/widget/NoItemsView.kt index 8101e977..a886f725 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/NoItemsView.kt +++ b/app/src/main/java/com/meloda/fast/widget/NoItemsView.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.content.Context import android.graphics.drawable.Drawable @@ -11,12 +11,12 @@ import androidx.annotation.ColorInt import androidx.annotation.DrawableRes import androidx.annotation.StringRes import androidx.core.view.isVisible -import ru.melod1n.project.vkm.R -import ru.melod1n.project.vkm.base.BaseAdapter -import ru.melod1n.project.vkm.extensions.ContextExtensions.drawable -import ru.melod1n.project.vkm.extensions.DrawableExtensions.tint -import ru.melod1n.project.vkm.extensions.FloatExtensions.int -import ru.melod1n.project.vkm.util.AndroidUtils +import com.meloda.fast.R +import com.meloda.fast.base.BaseAdapter +import com.meloda.fast.extensions.ContextExtensions.drawable +import com.meloda.fast.extensions.DrawableExtensions.tint +import com.meloda.fast.extensions.FloatExtensions.int +import com.meloda.fast.util.AndroidUtils @Suppress("UNCHECKED_CAST") class NoItemsView @JvmOverloads constructor( diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/RecyclerView.kt b/app/src/main/java/com/meloda/fast/widget/RecyclerView.kt similarity index 88% rename from app/src/main/java/ru/melod1n/project/vkm/widget/RecyclerView.kt rename to app/src/main/java/com/meloda/fast/widget/RecyclerView.kt index ca182f00..4252f1c1 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/RecyclerView.kt +++ b/app/src/main/java/com/meloda/fast/widget/RecyclerView.kt @@ -1,4 +1,4 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.content.Context import android.util.AttributeSet @@ -12,7 +12,5 @@ class RecyclerView @JvmOverloads constructor( var noItemsView: NoItemsView? = null - - } \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/Toolbar.kt b/app/src/main/java/com/meloda/fast/widget/Toolbar.kt similarity index 91% rename from app/src/main/java/ru/melod1n/project/vkm/widget/Toolbar.kt rename to app/src/main/java/com/meloda/fast/widget/Toolbar.kt index 4ae32824..ea49f427 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/Toolbar.kt +++ b/app/src/main/java/com/meloda/fast/widget/Toolbar.kt @@ -1,8 +1,7 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.app.Activity import android.content.Context -import android.content.res.ColorStateList import android.graphics.Canvas import android.graphics.drawable.Drawable import android.util.AttributeSet @@ -12,14 +11,13 @@ import android.view.View import android.widget.ImageButton import android.widget.ImageView import android.widget.TextView -import androidx.annotation.ColorInt import androidx.annotation.DrawableRes -import androidx.core.content.ContextCompat import androidx.core.content.res.ResourcesCompat import com.facebook.drawee.view.SimpleDraweeView import com.google.android.material.appbar.MaterialToolbar import com.google.android.material.theme.overlay.MaterialThemeOverlay -import ru.melod1n.project.vkm.R +import com.meloda.fast.R +import com.meloda.fast.util.AndroidUtils class Toolbar : MaterialToolbar { @@ -114,13 +112,18 @@ class Toolbar : MaterialToolbar { TitleMode.SIMPLE -> { title.gravity = Gravity.CENTER title.typeface = ResourcesCompat.getFont(context, R.font.google_sans_medium) - title.setTextColor(ContextCompat.getColor(context, R.color.accent)) + title.setTextColor(AndroidUtils.getThemeAttrColor(context, R.attr.colorAccent)) title.setTextSize(TypedValue.COMPLEX_UNIT_SP, 22f) } TitleMode.HINT -> { title.gravity = Gravity.CENTER_VERTICAL and Gravity.START title.typeface = ResourcesCompat.getFont(context, R.font.google_sans_regular) - title.setTextColor(ContextCompat.getColor(context, R.color.text_secondary_60_alpha)) + title.setTextColor( + AndroidUtils.getThemeAttrColor( + context, + R.attr.textColorSecondary + ) + ) title.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16f) } } diff --git a/app/src/main/java/ru/melod1n/project/vkm/widget/WrapTextView.kt b/app/src/main/java/com/meloda/fast/widget/WrapTextView.kt similarity index 95% rename from app/src/main/java/ru/melod1n/project/vkm/widget/WrapTextView.kt rename to app/src/main/java/com/meloda/fast/widget/WrapTextView.kt index 47b12516..ff134f32 100644 --- a/app/src/main/java/ru/melod1n/project/vkm/widget/WrapTextView.kt +++ b/app/src/main/java/com/meloda/fast/widget/WrapTextView.kt @@ -1,10 +1,10 @@ -package ru.melod1n.project.vkm.widget +package com.meloda.fast.widget import android.content.Context import android.text.Layout import android.util.AttributeSet import androidx.appcompat.widget.AppCompatTextView -import ru.melod1n.project.vkm.R +import com.meloda.fast.R import kotlin.math.ceil import kotlin.math.max diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpBase.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpBase.kt deleted file mode 100644 index 80574680..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpBase.kt +++ /dev/null @@ -1,21 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -import android.app.Application -import android.os.Handler - -object MvpBase { - - lateinit var handler: Handler - - fun init(application: Application) { - handler = Handler(application.mainLooper) - } - - fun init(appHandler: Handler) { - handler = appHandler - } - - fun post(runnable: Runnable) { - handler.post(runnable) - } -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpConstants.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpConstants.kt deleted file mode 100644 index b3286ffe..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpConstants.kt +++ /dev/null @@ -1,11 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -object MvpConstants { - - const val PEER_ID = "_peer_id" - const val ID = "_id" - const val COUNT = "_count" - const val OFFSET = "_offset" - const val FROM_CACHE = "_from_cache" - -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpException.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpException.kt deleted file mode 100644 index 8cb241a1..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpException.kt +++ /dev/null @@ -1,3 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -class MvpException(var errorId: String) : Exception(errorId) \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpFields.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpFields.kt deleted file mode 100644 index 42feda41..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpFields.kt +++ /dev/null @@ -1,30 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -import androidx.collection.arrayMapOf -import java.util.* - -@Suppress("UNCHECKED_CAST") -class MvpFields { - private val fields = arrayMapOf() - - fun put(key: String, value: Any): MvpFields { - fields[key] = value - return this - } - - operator fun get(key: String): T { - return fields[key] as T - } - - fun getNonNull(key: String): Any { - return fields[key]!! - } - - fun getNonNull(`object`: Any): Any { - return Objects.requireNonNull(`object`) - } - - fun getFields(): Map { - return fields - } -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpOnLoadListener.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpOnLoadListener.kt deleted file mode 100644 index 82033808..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpOnLoadListener.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -interface MvpOnLoadListener { - - fun onResponse(response: T) - - fun onError(t: Throwable) - -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpPresenter.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpPresenter.kt deleted file mode 100644 index 20905db4..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpPresenter.kt +++ /dev/null @@ -1,106 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -import android.content.Context -import android.os.Bundle -import androidx.annotation.NonNull -import androidx.annotation.Nullable - -@Suppress("UNCHECKED_CAST") -abstract class MvpPresenter, V : MvpView>( - protected var viewState: V, - private val repositoryStringClassName: String -) { - - protected var context: Context? = null - - protected fun requireContext(): Context { - if (context == null) throw IllegalStateException("context is null") - - return context!! - } - - enum class ListState { - EMPTY, EMPTY_LOADING, EMPTY_NO_INTERNET, EMPTY_ERROR, FILLED, FILLED_LOADING - } - - protected var tag: String = "" - - lateinit var repository: Repository - - init { - initRepository() - } - - private fun initRepository() { - val clazz = Class.forName(repositoryStringClassName) - - this.repository = clazz.newInstance() as Repository - } - - open fun onCreate(context: Context, bundle: Bundle? = null) { - this.context = context - } - - open fun onCreateView(bundle: Bundle? = null) {} - open fun onViewCreated(bundle: Bundle? = null) {} - - protected fun post(runnable: Runnable) { - MvpBase.post(runnable) - } - - open fun destroy() {} - - fun prepareViews() { - viewState.prepareNoItemsView() - viewState.prepareNoInternetView() - viewState.prepareErrorView() - } - - fun setState(state: ListState) { - when (state) { - ListState.EMPTY -> { - viewState.hideRefreshLayout() - viewState.hideProgressBar() - viewState.showNoItemsView() - viewState.hideNoInternetView() - viewState.hideErrorView() - } - ListState.EMPTY_LOADING -> { - viewState.hideRefreshLayout() - viewState.showProgressBar() - viewState.hideNoItemsView() - viewState.hideNoInternetView() - viewState.hideErrorView() - } - ListState.EMPTY_NO_INTERNET -> { - viewState.hideRefreshLayout() - viewState.hideProgressBar() - viewState.hideNoItemsView() - viewState.showNoInternetView() - viewState.hideErrorView() - } - ListState.EMPTY_ERROR -> { - viewState.hideRefreshLayout() - viewState.hideProgressBar() - viewState.hideNoItemsView() - viewState.hideNoInternetView() - viewState.showErrorView() - } - ListState.FILLED -> { - viewState.hideRefreshLayout() - viewState.hideProgressBar() - viewState.hideNoItemsView() - viewState.hideNoInternetView() - viewState.hideErrorView() - } - ListState.FILLED_LOADING -> { - viewState.showRefreshLayout() - viewState.hideProgressBar() - viewState.hideNoItemsView() - viewState.hideNoInternetView() - viewState.hideErrorView() - } - } - } - -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpRepository.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpRepository.kt deleted file mode 100644 index 9b6dbeb9..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpRepository.kt +++ /dev/null @@ -1,48 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -@Suppress("UNCHECKED_CAST") -abstract class MvpRepository { - - // abstract fun loadValues(fields: MvpFields, listener: MvpOnLoadListener?) -// -// abstract fun loadCachedValues(fields: MvpFields, listener: MvpOnLoadListener?) -// -// protected fun sendError(listener: MvpOnLoadListener?, errorId: String) { -// listener?.onErrorLoad(MvpException(errorId)) -// } -// - protected fun sendError( - listener: MvpOnLoadListener, - t: Throwable - ) { -// if (listener !is MvpOnLoadListener) return - - MvpBase.post { listener.onError(t) } - } - - protected fun sendResponseArray( - listener: MvpOnLoadListener>, - response: ArrayList - ) { - listener.let { MvpBase.handler.post { listener.onResponse(response) } } - } - - protected fun sendResponse( - listener: MvpOnLoadListener, - response: Item - ) { - listener.let { - MvpBase.handler.post { listener.onResponse(response) } - } - } - -// protected open fun cacheLoadedValues(values: ArrayList) {} -// -// protected fun startNewThread(runnable: Runnable) { -// Thread(runnable).start() -// } -// -// protected fun post(runnable: Runnable) { -// MvpBase.handler.post(runnable) -// } -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpView.kt b/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpView.kt deleted file mode 100644 index 485fb1cc..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/base/mvp/MvpView.kt +++ /dev/null @@ -1,33 +0,0 @@ -package ru.melod1n.project.vkm.base.mvp - -interface MvpView { - - fun showErrorSnackbar(t: Throwable) - - fun prepareNoItemsView() - - fun showNoItemsView() - - fun hideNoItemsView() - - fun prepareNoInternetView() - - fun showNoInternetView() - - fun hideNoInternetView() - - fun prepareErrorView() - - fun showErrorView() - - fun hideErrorView() - - fun showProgressBar() - - fun hideProgressBar() - - fun showRefreshLayout() - - fun hideRefreshLayout() - -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/event/EventInfo.kt b/app/src/main/java/ru/melod1n/project/vkm/event/EventInfo.kt deleted file mode 100644 index 349c485e..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/event/EventInfo.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.melod1n.project.vkm.event - -import ru.melod1n.project.vkm.api.VKApiKeys - -class EventInfo constructor(var key: VKApiKeys, var data: T? = null) \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/LoginView.kt b/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/LoginView.kt deleted file mode 100644 index 336c98f7..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/fragment/ui/view/LoginView.kt +++ /dev/null @@ -1,11 +0,0 @@ -package ru.melod1n.project.vkm.fragment.ui.view - -import ru.melod1n.project.vkm.base.mvp.MvpView - -interface LoginView : MvpView { - - fun initViews() - - fun prepareViews() - -} \ No newline at end of file diff --git a/app/src/main/java/ru/melod1n/project/vkm/item/SimpleMenuItem.kt b/app/src/main/java/ru/melod1n/project/vkm/item/SimpleMenuItem.kt deleted file mode 100644 index 4c50d755..00000000 --- a/app/src/main/java/ru/melod1n/project/vkm/item/SimpleMenuItem.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.melod1n.project.vkm.item - -import android.graphics.drawable.Drawable -import android.view.View - -data class SimpleMenuItem(val icon: Drawable?, val title: String, var clickListener: View.OnClickListener? = null) diff --git a/app/src/main/res/drawable-v21/ic_fast_lightning.xml b/app/src/main/res/drawable-v21/ic_fast_lightning.xml index 8fc57eb9..526f0859 100644 --- a/app/src/main/res/drawable-v21/ic_fast_lightning.xml +++ b/app/src/main/res/drawable-v21/ic_fast_lightning.xml @@ -8,117 +8,117 @@ diff --git a/app/src/main/res/drawable-v21/ic_online_mobile.xml b/app/src/main/res/drawable-v21/ic_online_mobile.xml index 72249755..f04b22f8 100644 --- a/app/src/main/res/drawable-v21/ic_online_mobile.xml +++ b/app/src/main/res/drawable-v21/ic_online_mobile.xml @@ -3,6 +3,7 @@ android:height="15.921dp" android:viewportWidth="11.586" android:viewportHeight="15.921"> + diff --git a/app/src/main/res/drawable-v21/ic_search.xml b/app/src/main/res/drawable-v21/ic_search.xml index be5ad99c..01045afd 100644 --- a/app/src/main/res/drawable-v21/ic_search.xml +++ b/app/src/main/res/drawable-v21/ic_search.xml @@ -1,5 +1,9 @@ - - + + diff --git a/app/src/main/res/drawable/chat_panel_background.xml b/app/src/main/res/drawable/chat_panel_background.xml index 35dd6dcf..50d98a33 100644 --- a/app/src/main/res/drawable/chat_panel_background.xml +++ b/app/src/main/res/drawable/chat_panel_background.xml @@ -13,7 +13,7 @@ + android:color="?dividerHorizontal" /> - + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_logo_fast_border.xml b/app/src/main/res/drawable/ic_logo_fast_border.xml index 5e5d690a..e1f3c02e 100644 --- a/app/src/main/res/drawable/ic_logo_fast_border.xml +++ b/app/src/main/res/drawable/ic_logo_fast_border.xml @@ -4,6 +4,6 @@ + android:color="?dividerHorizontal" /> \ No newline at end of file diff --git a/app/src/main/res/drawable-v21/ic_online_pc.xml b/app/src/main/res/drawable/ic_online_pc.xml similarity index 99% rename from app/src/main/res/drawable-v21/ic_online_pc.xml rename to app/src/main/res/drawable/ic_online_pc.xml index e6968b24..e0b449bb 100644 --- a/app/src/main/res/drawable-v21/ic_online_pc.xml +++ b/app/src/main/res/drawable/ic_online_pc.xml @@ -10,7 +10,6 @@ - \ No newline at end of file diff --git a/app/src/main/res/drawable/item_divider.xml b/app/src/main/res/drawable/item_divider.xml new file mode 100644 index 00000000..0102df45 --- /dev/null +++ b/app/src/main/res/drawable/item_divider.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/navigation_view_items_colors.xml b/app/src/main/res/drawable/navigation_view_items_colors.xml index 2c6b906e..d11eaf0b 100644 --- a/app/src/main/res/drawable/navigation_view_items_colors.xml +++ b/app/src/main/res/drawable/navigation_view_items_colors.xml @@ -1,7 +1,7 @@ - - + + \ No newline at end of file diff --git a/app/src/main/res/drawable/toolbar_background.xml b/app/src/main/res/drawable/toolbar_background.xml index 7ec92e07..ede352aa 100644 --- a/app/src/main/res/drawable/toolbar_background.xml +++ b/app/src/main/res/drawable/toolbar_background.xml @@ -4,9 +4,9 @@ - + + android:color="?dividerHorizontal" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 856d5f1c..cfe8cbf9 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,7 +1,6 @@ @@ -16,13 +15,21 @@ android:layout_height="match_parent" android:layout_marginBottom="48dp" /> + + - - diff --git a/app/src/main/res/layout/activity_start.xml b/app/src/main/res/layout/activity_start.xml index 894bbd20..741f3d33 100644 --- a/app/src/main/res/layout/activity_start.xml +++ b/app/src/main/res/layout/activity_start.xml @@ -21,7 +21,7 @@ android:layout_centerHorizontal="true" android:layout_marginTop="64dp"> - + android:textSize="26sp" /> @@ -48,7 +48,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" - android:src="@drawable/ic_fast_lightning" /> + android:src="@drawable/ic_fast_lightning" + app:tint="?colorAccent" /> @@ -70,7 +71,6 @@ android:id="@+id/loginEmailEditText" style="@style/AppTheme.Login.EditText" android:layout_width="match_parent" - android:layout_height="46dp" android:hint="@string/email_login_hint" android:inputType="textEmailAddress" /> @@ -94,7 +94,6 @@ android:id="@+id/loginPasswordEditText" style="@style/AppTheme.Login.EditText" android:layout_width="match_parent" - android:layout_height="46dp" android:hint="@string/password_login_hint" android:inputType="textPassword" /> @@ -104,7 +103,7 @@ android:id="@+id/loginAuthorize" style="@style/Widget.MaterialComponents.Button.UnelevatedButton" android:layout_width="wrap_content" - android:layout_height="52dp" + android:layout_height="60dp" android:layout_gravity="center_horizontal" android:layout_marginTop="12dp" android:fontFamily="@font/google_sans_regular" diff --git a/app/src/main/res/layout/item_conversation.xml b/app/src/main/res/layout/item_conversation.xml index ff4aacb9..e7fe5ce7 100644 --- a/app/src/main/res/layout/item_conversation.xml +++ b/app/src/main/res/layout/item_conversation.xml @@ -1,5 +1,5 @@ - + android:paddingTop="2dp" + android:paddingBottom="2dp"> @@ -69,19 +67,20 @@ android:layout_marginStart="4dp" android:paddingStart="2dp" android:paddingEnd="0dp" - android:tint="?itemTitleColor" + android:tint="@color/conversationTitle" + android:visibility="gone" tools:src="@drawable/ic_dialog_type_conversation" /> + tools:text="Title" /> @@ -96,12 +95,13 @@ @@ -109,62 +109,70 @@ android:id="@+id/conversationText" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_marginStart="2dp" + android:layout_marginStart="4dp" android:layout_marginEnd="4dp" android:baselineAligned="false" android:gravity="center_vertical" android:singleLine="true" android:textColor="?android:textColorPrimary" + android:textSize="14sp" tools:text="Message" /> - - - - - - - + - \ No newline at end of file + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_conversation_light.xml b/app/src/main/res/layout/item_conversation_light.xml index 0afb05fe..6f01341c 100644 --- a/app/src/main/res/layout/item_conversation_light.xml +++ b/app/src/main/res/layout/item_conversation_light.xml @@ -6,7 +6,7 @@ android:background="?selectableItemBackground" android:padding="12dp"> - - - - - - + diff --git a/app/src/main/res/layout/item_message_attachment_in.xml b/app/src/main/res/layout/item_message_attachment_in.xml index cc179056..53219f01 100644 --- a/app/src/main/res/layout/item_message_attachment_in.xml +++ b/app/src/main/res/layout/item_message_attachment_in.xml @@ -8,7 +8,7 @@ android:gravity="start" android:orientation="horizontal"> - - - - + - - - - + - - - - - - + - - - - + \ No newline at end of file diff --git a/app/src/main/res/layout/item_user.xml b/app/src/main/res/layout/item_user.xml index b15fc9c4..a1ef4c43 100644 --- a/app/src/main/res/layout/item_user.xml +++ b/app/src/main/res/layout/item_user.xml @@ -24,7 +24,7 @@ android:layout_height="wrap_content" android:layout_weight="0"> - - + android:tint="?android:textColorPrimary" + android:tintMode="multiply" + tools:src="@drawable/ic_search" /> @@ -64,4 +65,4 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml deleted file mode 100644 index ce9709d6..00000000 --- a/app/src/main/res/values-night/colors.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - #000000 - #000000 - #63ACFF - #000000 - #000000 - - #292929 - diff --git a/app/src/main/res/values-night/styles.xml b/app/src/main/res/values-night/styles.xml deleted file mode 100644 index 25fe7ea9..00000000 --- a/app/src/main/res/values-night/styles.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml index eef503b9..78957a89 100644 --- a/app/src/main/res/values-night/themes.xml +++ b/app/src/main/res/values-night/themes.xml @@ -2,40 +2,53 @@ + + \ No newline at end of file diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index d78d4d7f..d002566d 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -3,6 +3,16 @@ + + + + + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 949e9bc4..486bd376 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,12 +3,13 @@ #ffffff #ffffff #4284F4 - #E4E4E4 + #ffffff #ffffff - @color/accent + #E0E0E0 + + #99000000 - #e6e6e6 #ff000000 #DE000000 @@ -23,6 +24,29 @@ #F5F5F5 #5c5c5c - #e8e8e8 + #e8e8e8 #ffffff + + @color/accent + + #ffffff + #000000 + + + + + #000000 + #000000 + #63ACFF + #000000 + #000000 + + #292929 + + #99FFFFFF + + #272727 + + #000000 + #ffffff diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index d2801a3a..6803c6b4 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -11,14 +11,19 @@ 12dp @color/background @color/accent + @color/divider + @color/textSecondary + @color/edittext_filled_background + + @color/message_in + @color/message_out @style/AppTheme.ActivityAnimation - true - - @color/divider - @color/navigationBar + true + @android:color/transparent + - @@ -70,38 +76,38 @@ diff --git a/build.gradle b/build.gradle index 997de5b7..084ac9a1 100644 --- a/build.gradle +++ b/build.gradle @@ -14,6 +14,9 @@ allprojects { repositories { google() jcenter() + flatDir { + dirs 'libs' + } } }