Rename package names to org.fossify.*

This commit is contained in:
Naveen 2023-12-21 18:15:03 +05:30
parent 3a2535a980
commit 2d8a626ec0
No known key found for this signature in database
GPG key ID: 0E155DAD31671DA3
131 changed files with 915 additions and 883 deletions

View file

@ -30,6 +30,6 @@
} }
# Gson # Gson
-keep class com.simplemobiletools.commons.models.SimpleContact { *; } -keep class org.fossify.commons.models.SimpleContact { *; }
-keep class com.simplemobiletools.smsmessenger.models.Attachment { *; } -keep class org.fossify.smsmessenger.models.Attachment { *; }
-keep class com.simplemobiletools.smsmessenger.models.MessageAttachment { *; } -keep class org.fossify.smsmessenger.models.MessageAttachment { *; }

View file

@ -122,21 +122,21 @@
</activity> </activity>
<activity <activity
android:name="com.simplemobiletools.commons.activities.AboutActivity" android:name="org.fossify.commons.activities.AboutActivity"
android:configChanges="orientation" android:configChanges="orientation"
android:exported="false" android:exported="false"
android:label="@string/about" android:label="@string/about"
android:parentActivityName=".activities.MainActivity" /> android:parentActivityName=".activities.MainActivity" />
<activity <activity
android:name="com.simplemobiletools.commons.activities.CustomizationActivity" android:name="org.fossify.commons.activities.CustomizationActivity"
android:configChanges="orientation" android:configChanges="orientation"
android:exported="false" android:exported="false"
android:label="@string/customize_colors" android:label="@string/customize_colors"
android:parentActivityName=".activities.SettingsActivity" /> android:parentActivityName=".activities.SettingsActivity" />
<activity <activity
android:name="com.simplemobiletools.commons.activities.ManageBlockedNumbersActivity" android:name="org.fossify.commons.activities.ManageBlockedNumbersActivity"
android:configChanges="orientation" android:configChanges="orientation"
android:exported="false" android:exported="false"
android:label="@string/blocked_numbers" android:label="@string/blocked_numbers"
@ -221,7 +221,7 @@
android:enabled="true" android:enabled="true"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action android:name="com.simplemobiletools.smsmessenger.action.mark_as_read" /> <action android:name="org.fossify.smsmessenger.action.mark_as_read" />
</intent-filter> </intent-filter>
</receiver> </receiver>
@ -230,7 +230,7 @@
android:enabled="true" android:enabled="true"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action android:name="com.simplemobiletools.smsmessenger.action.reply" /> <action android:name="org.fossify.smsmessenger.action.reply" />
</intent-filter> </intent-filter>
</receiver> </receiver>
@ -239,7 +239,7 @@
android:enabled="true" android:enabled="true"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action android:name="com.simplemobiletools.smsmessenger.action.delete" /> <action android:name="org.fossify.smsmessenger.action.delete" />
</intent-filter> </intent-filter>
</receiver> </receiver>

View file

@ -1,20 +0,0 @@
package com.simplemobiletools.smsmessenger.dialogs
import com.simplemobiletools.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff
import com.simplemobiletools.smsmessenger.databinding.DialogInvalidNumberBinding
class InvalidNumberDialog(val activity: BaseSimpleActivity, val text: String) {
init {
val binding = DialogInvalidNumberBinding.inflate(activity.layoutInflater).apply {
dialogInvalidNumberDesc.text = text
}
activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { _, _ -> { } }
.apply {
activity.setupDialogStuff(binding.root, this)
}
}
}

View file

@ -1,9 +0,0 @@
package com.simplemobiletools.smsmessenger.extensions.gson
import com.google.gson.Gson
import com.google.gson.GsonBuilder
import com.google.gson.reflect.TypeToken
private val gsonBuilder = GsonBuilder().registerTypeAdapter(object: TypeToken<Map<String, Any>>(){}.type, MapDeserializerDoubleAsIntFix())
val gson : Gson = gsonBuilder.create()

View file

@ -1,5 +0,0 @@
package com.simplemobiletools.smsmessenger.models
class Events {
class RefreshMessages
}

View file

@ -1,31 +0,0 @@
package com.simplemobiletools.smsmessenger.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.simplemobiletools.commons.extensions.notificationManager
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.extensions.conversationsDB
import com.simplemobiletools.smsmessenger.extensions.deleteMessage
import com.simplemobiletools.smsmessenger.extensions.updateLastConversationMessage
import com.simplemobiletools.smsmessenger.extensions.updateUnreadCountBadge
import com.simplemobiletools.smsmessenger.helpers.IS_MMS
import com.simplemobiletools.smsmessenger.helpers.MESSAGE_ID
import com.simplemobiletools.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.helpers.refreshMessages
class DeleteSmsReceiver: BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
val threadId = intent.getLongExtra(THREAD_ID, 0L)
val messageId = intent.getLongExtra(MESSAGE_ID, 0L)
val isMms = intent.getBooleanExtra(IS_MMS, false)
context.notificationManager.cancel(threadId.hashCode())
ensureBackgroundThread {
context.deleteMessage(messageId, isMms)
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
context.updateLastConversationMessage(threadId)
refreshMessages()
}
}
}

View file

@ -1,7 +1,7 @@
package com.simplemobiletools.smsmessenger package org.fossify.smsmessenger
import android.app.Application import android.app.Application
import com.simplemobiletools.commons.extensions.checkUseEnglish import org.fossify.commons.extensions.checkUseEnglish
class App : Application() { class App : Application() {
override fun onCreate() { override fun onCreate() {

View file

@ -1,18 +1,23 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import org.fossify.commons.helpers.NavigationIcon
import com.simplemobiletools.smsmessenger.R import org.fossify.commons.helpers.WAS_PROTECTION_HANDLED
import com.simplemobiletools.smsmessenger.adapters.ArchivedConversationsAdapter import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.databinding.ActivityArchivedConversationsBinding import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.adapters.ArchivedConversationsAdapter
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.databinding.ActivityArchivedConversationsBinding
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.models.Events import org.fossify.smsmessenger.extensions.conversationsDB
import org.fossify.smsmessenger.extensions.removeAllArchivedConversations
import org.fossify.smsmessenger.helpers.THREAD_ID
import org.fossify.smsmessenger.helpers.THREAD_TITLE
import org.fossify.smsmessenger.models.Conversation
import org.fossify.smsmessenger.models.Events
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode import org.greenrobot.eventbus.ThreadMode
@ -98,8 +103,8 @@ class ArchivedConversationsActivity : SimpleActivity() {
activity = this, activity = this,
message = "", message = "",
messageId = R.string.empty_archive_confirmation, messageId = R.string.empty_archive_confirmation,
positive = com.simplemobiletools.commons.R.string.yes, positive = org.fossify.commons.R.string.yes,
negative = com.simplemobiletools.commons.R.string.no negative = org.fossify.commons.R.string.no
) { ) {
removeAllArchivedConversations { removeAllArchivedConversations {
loadArchivedConversations() loadArchivedConversations()

View file

@ -1,17 +1,17 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.os.Bundle import android.os.Bundle
import androidx.core.content.res.ResourcesCompat import androidx.core.content.res.ResourcesCompat
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.NavigationIcon import org.fossify.commons.helpers.NavigationIcon
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.smsmessenger.adapters.ContactsAdapter import org.fossify.smsmessenger.adapters.ContactsAdapter
import com.simplemobiletools.smsmessenger.databinding.ActivityConversationDetailsBinding import org.fossify.smsmessenger.databinding.ActivityConversationDetailsBinding
import com.simplemobiletools.smsmessenger.dialogs.RenameConversationDialog import org.fossify.smsmessenger.dialogs.RenameConversationDialog
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.THREAD_ID import org.fossify.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class ConversationDetailsActivity : SimpleActivity() { class ConversationDetailsActivity : SimpleActivity() {
@ -62,7 +62,7 @@ class ConversationDetailsActivity : SimpleActivity() {
private fun setupTextViews() { private fun setupTextViews() {
binding.conversationName.apply { binding.conversationName.apply {
ResourcesCompat.getDrawable(resources, com.simplemobiletools.commons.R.drawable.ic_edit_vector, theme)?.apply { ResourcesCompat.getDrawable(resources, org.fossify.commons.R.drawable.ic_edit_vector, theme)?.apply {
applyColorFilter(getProperTextColor()) applyColorFilter(getProperTextColor())
setCompoundDrawablesWithIntrinsicBounds(null, null, this, null) setCompoundDrawablesWithIntrinsicBounds(null, null, this, null)
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Activity import android.app.Activity
@ -12,22 +12,24 @@ import android.os.Bundle
import android.provider.Telephony import android.provider.Telephony
import android.text.TextUtils import android.text.TextUtils
import androidx.coordinatorlayout.widget.CoordinatorLayout import androidx.coordinatorlayout.widget.CoordinatorLayout
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog import org.fossify.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import org.fossify.commons.helpers.*
import com.simplemobiletools.commons.models.FAQItem import org.fossify.commons.models.FAQItem
import com.simplemobiletools.commons.models.Release import org.fossify.commons.models.Release
import com.simplemobiletools.smsmessenger.BuildConfig import org.fossify.smsmessenger.BuildConfig
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.adapters.ConversationsAdapter import org.fossify.smsmessenger.adapters.ConversationsAdapter
import com.simplemobiletools.smsmessenger.adapters.SearchResultsAdapter import org.fossify.smsmessenger.adapters.SearchResultsAdapter
import com.simplemobiletools.smsmessenger.databinding.ActivityMainBinding import org.fossify.smsmessenger.databinding.ActivityMainBinding
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.helpers.SEARCHED_MESSAGE_ID
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.models.Events import org.fossify.smsmessenger.helpers.THREAD_TITLE
import com.simplemobiletools.smsmessenger.models.Message import org.fossify.smsmessenger.models.Conversation
import com.simplemobiletools.smsmessenger.models.SearchResult import org.fossify.smsmessenger.models.Events
import org.fossify.smsmessenger.models.Message
import org.fossify.smsmessenger.models.SearchResult
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode import org.greenrobot.eventbus.ThreadMode
@ -106,7 +108,7 @@ class MainActivity : SimpleActivity() {
binding.conversationsProgressBar.trackColor = properPrimaryColor.adjustAlpha(LOWER_ALPHA) binding.conversationsProgressBar.trackColor = properPrimaryColor.adjustAlpha(LOWER_ALPHA)
checkShortcut() checkShortcut()
(binding.conversationsFab.layoutParams as? CoordinatorLayout.LayoutParams)?.bottomMargin = (binding.conversationsFab.layoutParams as? CoordinatorLayout.LayoutParams)?.bottomMargin =
navigationBarHeight + resources.getDimension(com.simplemobiletools.commons.R.dimen.activity_margin).toInt() navigationBarHeight + resources.getDimension(org.fossify.commons.R.dimen.activity_margin).toInt()
} }
override fun onPause() { override fun onPause() {
@ -185,7 +187,7 @@ class MainActivity : SimpleActivity() {
private fun refreshMenuItems() { private fun refreshMenuItems() {
binding.mainMenu.getToolbar().menu.apply { binding.mainMenu.getToolbar().menu.apply {
findItem(R.id.more_apps_from_us).isVisible = !resources.getBoolean(com.simplemobiletools.commons.R.bool.hide_google_relations) findItem(R.id.more_apps_from_us).isVisible = !resources.getBoolean(org.fossify.commons.R.bool.hide_google_relations)
findItem(R.id.show_recycle_bin).isVisible = config.useRecycleBin findItem(R.id.show_recycle_bin).isVisible = config.useRecycleBin
findItem(R.id.show_archived).isVisible = config.isArchiveAvailable findItem(R.id.show_archived).isVisible = config.isArchiveAvailable
} }
@ -223,7 +225,7 @@ class MainActivity : SimpleActivity() {
startActivityForResult(intent, MAKE_DEFAULT_APP_REQUEST) startActivityForResult(intent, MAKE_DEFAULT_APP_REQUEST)
} }
} else { } else {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
finish() finish()
} }
} else { } else {
@ -248,7 +250,7 @@ class MainActivity : SimpleActivity() {
if (!granted) { if (!granted) {
PermissionRequiredDialog( PermissionRequiredDialog(
activity = this, activity = this,
textId = com.simplemobiletools.commons.R.string.allow_notifications_incoming_messages, textId = org.fossify.commons.R.string.allow_notifications_incoming_messages,
positiveActionCallback = { openNotificationSettings() }) positiveActionCallback = { openNotificationSettings() })
} }
} }
@ -481,8 +483,8 @@ class MainActivity : SimpleActivity() {
@SuppressLint("NewApi") @SuppressLint("NewApi")
private fun getCreateNewContactShortcut(appIconColor: Int): ShortcutInfo { private fun getCreateNewContactShortcut(appIconColor: Int): ShortcutInfo {
val newEvent = getString(R.string.new_conversation) val newEvent = getString(R.string.new_conversation)
val drawable = resources.getDrawable(com.simplemobiletools.commons.R.drawable.shortcut_plus) val drawable = resources.getDrawable(org.fossify.commons.R.drawable.shortcut_plus)
(drawable as LayerDrawable).findDrawableByLayerId(com.simplemobiletools.commons.R.id.shortcut_plus_background).applyColorFilter(appIconColor) (drawable as LayerDrawable).findDrawableByLayerId(org.fossify.commons.R.id.shortcut_plus_background).applyColorFilter(appIconColor)
val bmp = drawable.convertToBitmap() val bmp = drawable.convertToBitmap()
val intent = Intent(this, NewConversationActivity::class.java) val intent = Intent(this, NewConversationActivity::class.java)
@ -581,12 +583,12 @@ class MainActivity : SimpleActivity() {
val faqItems = arrayListOf( val faqItems = arrayListOf(
FAQItem(R.string.faq_2_title, R.string.faq_2_text), FAQItem(R.string.faq_2_title, R.string.faq_2_text),
FAQItem(R.string.faq_3_title, R.string.faq_3_text), FAQItem(R.string.faq_3_title, R.string.faq_3_text),
FAQItem(com.simplemobiletools.commons.R.string.faq_9_title_commons, com.simplemobiletools.commons.R.string.faq_9_text_commons) FAQItem(org.fossify.commons.R.string.faq_9_title_commons, org.fossify.commons.R.string.faq_9_text_commons)
) )
if (!resources.getBoolean(com.simplemobiletools.commons.R.bool.hide_google_relations)) { if (!resources.getBoolean(org.fossify.commons.R.bool.hide_google_relations)) {
faqItems.add(FAQItem(com.simplemobiletools.commons.R.string.faq_2_title_commons, com.simplemobiletools.commons.R.string.faq_2_text_commons)) faqItems.add(FAQItem(org.fossify.commons.R.string.faq_2_title_commons, org.fossify.commons.R.string.faq_2_text_commons))
faqItems.add(FAQItem(com.simplemobiletools.commons.R.string.faq_6_title_commons, com.simplemobiletools.commons.R.string.faq_6_text_commons)) faqItems.add(FAQItem(org.fossify.commons.R.string.faq_6_title_commons, org.fossify.commons.R.string.faq_6_text_commons))
} }
startAboutActivity(R.string.app_name, licenses, BuildConfig.VERSION_NAME, faqItems, true) startAboutActivity(R.string.app_name, licenses, BuildConfig.VERSION_NAME, faqItems, true)

View file

@ -1,23 +1,19 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.os.Bundle import android.os.Bundle
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.beVisibleIf import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.extensions.getProperPrimaryColor import org.fossify.commons.helpers.APP_ICON_IDS
import com.simplemobiletools.commons.extensions.underlineText import org.fossify.commons.helpers.APP_LAUNCHER_NAME
import com.simplemobiletools.commons.extensions.updateTextColors import org.fossify.commons.helpers.NavigationIcon
import com.simplemobiletools.commons.extensions.viewBinding import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.helpers.APP_ICON_IDS import org.fossify.commons.interfaces.RefreshRecyclerViewListener
import com.simplemobiletools.commons.helpers.APP_LAUNCHER_NAME import org.fossify.smsmessenger.R
import com.simplemobiletools.commons.helpers.NavigationIcon import org.fossify.smsmessenger.databinding.ActivityManageBlockedKeywordsBinding
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.smsmessenger.dialogs.AddBlockedKeywordDialog
import com.simplemobiletools.commons.interfaces.RefreshRecyclerViewListener import org.fossify.smsmessenger.dialogs.ManageBlockedKeywordsAdapter
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.databinding.ActivityManageBlockedKeywordsBinding import org.fossify.smsmessenger.extensions.toArrayList
import com.simplemobiletools.smsmessenger.dialogs.AddBlockedKeywordDialog
import com.simplemobiletools.smsmessenger.dialogs.ManageBlockedKeywordsAdapter
import com.simplemobiletools.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.extensions.toArrayList
class ManageBlockedKeywordsActivity : BaseSimpleActivity(), RefreshRecyclerViewListener { class ManageBlockedKeywordsActivity : BaseSimpleActivity(), RefreshRecyclerViewListener {
override fun getAppIconIDs() = intent.getIntegerArrayListExtra(APP_ICON_IDS) ?: ArrayList() override fun getAppIconIDs() = intent.getIntegerArrayListExtra(APP_ICON_IDS) ?: ArrayList()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
@ -7,19 +7,19 @@ import android.view.WindowManager
import android.widget.Toast import android.widget.Toast
import com.google.gson.Gson import com.google.gson.Gson
import com.reddit.indicatorfastscroll.FastScrollItemIndicator import com.reddit.indicatorfastscroll.FastScrollItemIndicator
import com.simplemobiletools.commons.dialogs.RadioGroupDialog import org.fossify.commons.dialogs.RadioGroupDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import org.fossify.commons.helpers.*
import com.simplemobiletools.commons.models.RadioItem import org.fossify.commons.models.RadioItem
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.adapters.ContactsAdapter import org.fossify.smsmessenger.adapters.ContactsAdapter
import com.simplemobiletools.smsmessenger.databinding.ActivityNewConversationBinding import org.fossify.smsmessenger.databinding.ActivityNewConversationBinding
import com.simplemobiletools.smsmessenger.databinding.ItemSuggestedContactBinding import org.fossify.smsmessenger.databinding.ItemSuggestedContactBinding
import com.simplemobiletools.smsmessenger.extensions.getSuggestedContacts import org.fossify.smsmessenger.extensions.getSuggestedContacts
import com.simplemobiletools.smsmessenger.extensions.getThreadId import org.fossify.smsmessenger.extensions.getThreadId
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.messaging.isShortCodeWithLetters import org.fossify.smsmessenger.messaging.isShortCodeWithLetters
import java.net.URLDecoder import java.net.URLDecoder
import java.util.Locale import java.util.Locale
@ -146,9 +146,9 @@ class NewConversationActivity : SimpleActivity() {
if (!hasContacts) { if (!hasContacts) {
val placeholderText = if (hasPermission(PERMISSION_READ_CONTACTS)) { val placeholderText = if (hasPermission(PERMISSION_READ_CONTACTS)) {
com.simplemobiletools.commons.R.string.no_contacts_found org.fossify.commons.R.string.no_contacts_found
} else { } else {
com.simplemobiletools.commons.R.string.no_access_to_contacts org.fossify.commons.R.string.no_access_to_contacts
} }
binding.noContactsPlaceholder.text = getString(placeholderText) binding.noContactsPlaceholder.text = getString(placeholderText)

View file

@ -1,18 +1,24 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import org.fossify.commons.helpers.NavigationIcon
import com.simplemobiletools.smsmessenger.R import org.fossify.commons.helpers.WAS_PROTECTION_HANDLED
import com.simplemobiletools.smsmessenger.adapters.RecycleBinConversationsAdapter import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.databinding.ActivityRecycleBinConversationsBinding import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.adapters.RecycleBinConversationsAdapter
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.databinding.ActivityRecycleBinConversationsBinding
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.models.Events import org.fossify.smsmessenger.extensions.conversationsDB
import org.fossify.smsmessenger.extensions.emptyMessagesRecycleBin
import org.fossify.smsmessenger.helpers.IS_RECYCLE_BIN
import org.fossify.smsmessenger.helpers.THREAD_ID
import org.fossify.smsmessenger.helpers.THREAD_TITLE
import org.fossify.smsmessenger.models.Conversation
import org.fossify.smsmessenger.models.Events
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode import org.greenrobot.eventbus.ThreadMode
@ -98,8 +104,8 @@ class RecycleBinConversationsActivity : SimpleActivity() {
activity = this, activity = this,
message = "", message = "",
messageId = R.string.empty_recycle_bin_messages_confirmation, messageId = R.string.empty_recycle_bin_messages_confirmation,
positive = com.simplemobiletools.commons.R.string.yes, positive = org.fossify.commons.R.string.yes,
negative = com.simplemobiletools.commons.R.string.no negative = org.fossify.commons.R.string.no
) { ) {
ensureBackgroundThread { ensureBackgroundThread {
emptyMessagesRecycleBin() emptyMessagesRecycleBin()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.annotation.TargetApi import android.annotation.TargetApi
import android.content.Intent import android.content.Intent
@ -6,22 +6,21 @@ import android.net.Uri
import android.os.Build import android.os.Build
import android.os.Bundle import android.os.Bundle
import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.result.contract.ActivityResultContracts
import com.simplemobiletools.commons.activities.ManageBlockedNumbersActivity
import com.simplemobiletools.commons.dialogs.*
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.commons.models.RadioItem
import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.databinding.ActivitySettingsBinding
import com.simplemobiletools.smsmessenger.dialogs.ExportMessagesDialog
import com.simplemobiletools.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.extensions.emptyMessagesRecycleBin
import com.simplemobiletools.smsmessenger.extensions.messagesDB
import com.simplemobiletools.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.models.*
import kotlinx.serialization.encodeToString import kotlinx.serialization.encodeToString
import kotlinx.serialization.json.Json import kotlinx.serialization.json.Json
import java.util.* import org.fossify.commons.activities.ManageBlockedNumbersActivity
import org.fossify.commons.dialogs.*
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.*
import org.fossify.commons.models.RadioItem
import org.fossify.smsmessenger.R
import org.fossify.smsmessenger.databinding.ActivitySettingsBinding
import org.fossify.smsmessenger.dialogs.ExportMessagesDialog
import org.fossify.smsmessenger.extensions.config
import org.fossify.smsmessenger.extensions.emptyMessagesRecycleBin
import org.fossify.smsmessenger.extensions.messagesDB
import org.fossify.smsmessenger.helpers.*
import java.util.Locale
import kotlin.system.exitProcess import kotlin.system.exitProcess
class SettingsActivity : SimpleActivity() { class SettingsActivity : SimpleActivity() {
@ -99,7 +98,7 @@ class SettingsActivity : SimpleActivity() {
private val saveDocument = registerForActivityResult(ActivityResultContracts.CreateDocument(messagesFileType)) { uri -> private val saveDocument = registerForActivityResult(ActivityResultContracts.CreateDocument(messagesFileType)) { uri ->
if (uri != null) { if (uri != null) {
toast(com.simplemobiletools.commons.R.string.exporting) toast(org.fossify.commons.R.string.exporting)
exportMessages(uri) exportMessages(uri)
} }
} }
@ -123,7 +122,7 @@ class SettingsActivity : SimpleActivity() {
try { try {
MessagesReader(this).getMessagesToExport(config.exportSms, config.exportMms) { messagesToExport -> MessagesReader(this).getMessagesToExport(config.exportSms, config.exportMms) { messagesToExport ->
if (messagesToExport.isEmpty()) { if (messagesToExport.isEmpty()) {
toast(com.simplemobiletools.commons.R.string.no_entries_for_exporting) toast(org.fossify.commons.R.string.no_entries_for_exporting)
return@getMessagesToExport return@getMessagesToExport
} }
val json = Json { encodeDefaults = true } val json = Json { encodeDefaults = true }
@ -133,7 +132,7 @@ class SettingsActivity : SimpleActivity() {
outputStream.use { outputStream.use {
it.write(jsonString.toByteArray()) it.write(jsonString.toByteArray())
} }
toast(com.simplemobiletools.commons.R.string.exporting_successful) toast(org.fossify.commons.R.string.exporting_successful)
} }
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e) showErrorToast(e)
@ -188,7 +187,7 @@ class SettingsActivity : SimpleActivity() {
// support for device-wise blocking came on Android 7, rely only on that // support for device-wise blocking came on Android 7, rely only on that
@TargetApi(Build.VERSION_CODES.N) @TargetApi(Build.VERSION_CODES.N)
private fun setupManageBlockedNumbers() = binding.apply { private fun setupManageBlockedNumbers() = binding.apply {
settingsManageBlockedNumbers.text = addLockedLabelIfNeeded(com.simplemobiletools.commons.R.string.manage_blocked_numbers) settingsManageBlockedNumbers.text = addLockedLabelIfNeeded(org.fossify.commons.R.string.manage_blocked_numbers)
settingsManageBlockedNumbersHolder.beVisibleIf(isNougatPlus()) settingsManageBlockedNumbersHolder.beVisibleIf(isNougatPlus())
settingsManageBlockedNumbersHolder.setOnClickListener { settingsManageBlockedNumbersHolder.setOnClickListener {
@ -228,10 +227,10 @@ class SettingsActivity : SimpleActivity() {
settingsFontSize.text = getFontSizeText() settingsFontSize.text = getFontSizeText()
settingsFontSizeHolder.setOnClickListener { settingsFontSizeHolder.setOnClickListener {
val items = arrayListOf( val items = arrayListOf(
RadioItem(FONT_SIZE_SMALL, getString(com.simplemobiletools.commons.R.string.small)), RadioItem(FONT_SIZE_SMALL, getString(org.fossify.commons.R.string.small)),
RadioItem(FONT_SIZE_MEDIUM, getString(com.simplemobiletools.commons.R.string.medium)), RadioItem(FONT_SIZE_MEDIUM, getString(org.fossify.commons.R.string.medium)),
RadioItem(FONT_SIZE_LARGE, getString(com.simplemobiletools.commons.R.string.large)), RadioItem(FONT_SIZE_LARGE, getString(org.fossify.commons.R.string.large)),
RadioItem(FONT_SIZE_EXTRA_LARGE, getString(com.simplemobiletools.commons.R.string.extra_large)) RadioItem(FONT_SIZE_EXTRA_LARGE, getString(org.fossify.commons.R.string.extra_large))
) )
RadioGroupDialog(this@SettingsActivity, items, config.fontSize) { RadioGroupDialog(this@SettingsActivity, items, config.fontSize) {
@ -295,7 +294,7 @@ class SettingsActivity : SimpleActivity() {
val items = arrayListOf( val items = arrayListOf(
RadioItem(LOCK_SCREEN_SENDER_MESSAGE, getString(R.string.sender_and_message)), RadioItem(LOCK_SCREEN_SENDER_MESSAGE, getString(R.string.sender_and_message)),
RadioItem(LOCK_SCREEN_SENDER, getString(R.string.sender_only)), RadioItem(LOCK_SCREEN_SENDER, getString(R.string.sender_only)),
RadioItem(LOCK_SCREEN_NOTHING, getString(com.simplemobiletools.commons.R.string.nothing)), RadioItem(LOCK_SCREEN_NOTHING, getString(org.fossify.commons.R.string.nothing)),
) )
RadioGroupDialog(this@SettingsActivity, items, config.lockScreenVisibilitySetting) { RadioGroupDialog(this@SettingsActivity, items, config.lockScreenVisibilitySetting) {
@ -309,7 +308,7 @@ class SettingsActivity : SimpleActivity() {
when (config.lockScreenVisibilitySetting) { when (config.lockScreenVisibilitySetting) {
LOCK_SCREEN_SENDER_MESSAGE -> R.string.sender_and_message LOCK_SCREEN_SENDER_MESSAGE -> R.string.sender_and_message
LOCK_SCREEN_SENDER -> R.string.sender_only LOCK_SCREEN_SENDER -> R.string.sender_only
else -> com.simplemobiletools.commons.R.string.nothing else -> org.fossify.commons.R.string.nothing
} }
) )
@ -359,14 +358,14 @@ class SettingsActivity : SimpleActivity() {
settingsEmptyRecycleBinHolder.setOnClickListener { settingsEmptyRecycleBinHolder.setOnClickListener {
if (recycleBinMessages == 0) { if (recycleBinMessages == 0) {
toast(com.simplemobiletools.commons.R.string.recycle_bin_empty) toast(org.fossify.commons.R.string.recycle_bin_empty)
} else { } else {
ConfirmationDialog( ConfirmationDialog(
activity = this@SettingsActivity, activity = this@SettingsActivity,
message = "", message = "",
messageId = R.string.empty_recycle_bin_messages_confirmation, messageId = R.string.empty_recycle_bin_messages_confirmation,
positive = com.simplemobiletools.commons.R.string.yes, positive = org.fossify.commons.R.string.yes,
negative = com.simplemobiletools.commons.R.string.no negative = org.fossify.commons.R.string.no
) { ) {
ensureBackgroundThread { ensureBackgroundThread {
emptyMessagesRecycleBin() emptyMessagesRecycleBin()
@ -393,12 +392,12 @@ class SettingsActivity : SimpleActivity() {
if (config.isAppPasswordProtectionOn) { if (config.isAppPasswordProtectionOn) {
val confirmationTextId = if (config.appProtectionType == PROTECTION_FINGERPRINT) { val confirmationTextId = if (config.appProtectionType == PROTECTION_FINGERPRINT) {
com.simplemobiletools.commons.R.string.fingerprint_setup_successfully org.fossify.commons.R.string.fingerprint_setup_successfully
} else { } else {
com.simplemobiletools.commons.R.string.protection_setup_successfully org.fossify.commons.R.string.protection_setup_successfully
} }
ConfirmationDialog(this@SettingsActivity, "", confirmationTextId, com.simplemobiletools.commons.R.string.ok, 0) { } ConfirmationDialog(this@SettingsActivity, "", confirmationTextId, org.fossify.commons.R.string.ok, 0) { }
} }
} }
} }

View file

@ -1,7 +1,7 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
open class SimpleActivity : BaseSimpleActivity() { open class SimpleActivity : BaseSimpleActivity() {
override fun getAppIconIDs() = arrayListOf( override fun getAppIconIDs() = arrayListOf(

View file

@ -1,7 +1,7 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.content.Intent import android.content.Intent
import com.simplemobiletools.commons.activities.BaseSplashActivity import org.fossify.commons.activities.BaseSplashActivity
class SplashActivity : BaseSplashActivity() { class SplashActivity : BaseSplashActivity() {
override fun initActivity() { override fun initActivity() {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Activity import android.app.Activity
@ -43,31 +43,31 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.google.gson.Gson import com.google.gson.Gson
import com.google.gson.reflect.TypeToken import com.google.gson.reflect.TypeToken
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.dialogs.FeatureLockedDialog import org.fossify.commons.dialogs.FeatureLockedDialog
import com.simplemobiletools.commons.dialogs.PermissionRequiredDialog import org.fossify.commons.dialogs.PermissionRequiredDialog
import com.simplemobiletools.commons.dialogs.RadioGroupDialog import org.fossify.commons.dialogs.RadioGroupDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.* import org.fossify.commons.helpers.*
import com.simplemobiletools.commons.models.PhoneNumber import org.fossify.commons.models.PhoneNumber
import com.simplemobiletools.commons.models.RadioItem import org.fossify.commons.models.RadioItem
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.BuildConfig import org.fossify.smsmessenger.BuildConfig
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.adapters.AttachmentsAdapter import org.fossify.smsmessenger.adapters.AttachmentsAdapter
import com.simplemobiletools.smsmessenger.adapters.AutoCompleteTextViewAdapter import org.fossify.smsmessenger.adapters.AutoCompleteTextViewAdapter
import com.simplemobiletools.smsmessenger.adapters.ThreadAdapter import org.fossify.smsmessenger.adapters.ThreadAdapter
import com.simplemobiletools.smsmessenger.databinding.ActivityThreadBinding import org.fossify.smsmessenger.databinding.ActivityThreadBinding
import com.simplemobiletools.smsmessenger.databinding.ItemSelectedContactBinding import org.fossify.smsmessenger.databinding.ItemSelectedContactBinding
import com.simplemobiletools.smsmessenger.dialogs.InvalidNumberDialog import org.fossify.smsmessenger.dialogs.InvalidNumberDialog
import com.simplemobiletools.smsmessenger.dialogs.RenameConversationDialog import org.fossify.smsmessenger.dialogs.RenameConversationDialog
import com.simplemobiletools.smsmessenger.dialogs.ScheduleMessageDialog import org.fossify.smsmessenger.dialogs.ScheduleMessageDialog
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.messaging.* import org.fossify.smsmessenger.messaging.*
import com.simplemobiletools.smsmessenger.models.* import org.fossify.smsmessenger.models.*
import com.simplemobiletools.smsmessenger.models.ThreadItem.* import org.fossify.smsmessenger.models.ThreadItem.*
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.Subscribe
import org.greenrobot.eventbus.ThreadMode import org.greenrobot.eventbus.ThreadMode
@ -131,7 +131,7 @@ class ThreadActivity : SimpleActivity() {
val extras = intent.extras val extras = intent.extras
if (extras == null) { if (extras == null) {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
finish() finish()
return return
} }
@ -257,7 +257,7 @@ class ThreadActivity : SimpleActivity() {
findItem(R.id.unarchive).isVisible = threadItems.isNotEmpty() && conversation?.isArchived == true && !isRecycleBin && archiveAvailable findItem(R.id.unarchive).isVisible = threadItems.isNotEmpty() && conversation?.isArchived == true && !isRecycleBin && archiveAvailable
findItem(R.id.rename_conversation).isVisible = participants.size > 1 && conversation != null && !isRecycleBin findItem(R.id.rename_conversation).isVisible = participants.size > 1 && conversation != null && !isRecycleBin
findItem(R.id.conversation_details).isVisible = conversation != null && !isRecycleBin findItem(R.id.conversation_details).isVisible = conversation != null && !isRecycleBin
findItem(R.id.block_number).title = addLockedLabelIfNeeded(com.simplemobiletools.commons.R.string.block_number) findItem(R.id.block_number).title = addLockedLabelIfNeeded(org.fossify.commons.R.string.block_number)
findItem(R.id.block_number).isVisible = isNougatPlus() && !isRecycleBin findItem(R.id.block_number).isVisible = isNougatPlus() && !isRecycleBin
findItem(R.id.dial_number).isVisible = participants.size == 1 && !isSpecialNumber() && !isRecycleBin findItem(R.id.dial_number).isVisible = participants.size == 1 && !isSpecialNumber() && !isRecycleBin
findItem(R.id.manage_people).isVisible = !isSpecialNumber() && !isRecycleBin findItem(R.id.manage_people).isVisible = !isSpecialNumber() && !isRecycleBin
@ -401,7 +401,7 @@ class ThreadActivity : SimpleActivity() {
val name = intent.getStringExtra(THREAD_TITLE) ?: "" val name = intent.getStringExtra(THREAD_TITLE) ?: ""
val number = intent.getStringExtra(THREAD_NUMBER) val number = intent.getStringExtra(THREAD_NUMBER)
if (number == null) { if (number == null) {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
finish() finish()
return@ensureBackgroundThread return@ensureBackgroundThread
} }
@ -761,7 +761,7 @@ class ThreadActivity : SimpleActivity() {
} else { } else {
PermissionRequiredDialog( PermissionRequiredDialog(
activity = this, activity = this,
textId = com.simplemobiletools.commons.R.string.allow_alarm_scheduled_messages, textId = org.fossify.commons.R.string.allow_alarm_scheduled_messages,
positiveActionCallback = { positiveActionCallback = {
openRequestExactAlarmSettings(BuildConfig.APPLICATION_ID) openRequestExactAlarmSettings(BuildConfig.APPLICATION_ID)
}, },
@ -837,7 +837,7 @@ class ThreadActivity : SimpleActivity() {
) )
} }
if (isOreoPlus()) { if (isOreoPlus()) {
tooltipText = getString(com.simplemobiletools.commons.R.string.more_info) tooltipText = getString(org.fossify.commons.R.string.more_info)
} }
} }
} }
@ -936,7 +936,7 @@ class ThreadActivity : SimpleActivity() {
private fun blockNumber() { private fun blockNumber() {
val numbers = participants.getAddresses() val numbers = participants.getAddresses()
val numbersString = TextUtils.join(", ", numbers) val numbersString = TextUtils.join(", ", numbers)
val question = String.format(resources.getString(com.simplemobiletools.commons.R.string.block_confirmation), numbersString) val question = String.format(resources.getString(org.fossify.commons.R.string.block_confirmation), numbersString)
ConfirmationDialog(this, question) { ConfirmationDialog(this, question) {
ensureBackgroundThread { ensureBackgroundThread {
@ -1153,7 +1153,7 @@ class ThreadActivity : SimpleActivity() {
return items return items
} }
private fun launchActivityForResult(intent: Intent, requestCode: Int, @StringRes error: Int = com.simplemobiletools.commons.R.string.no_app_found) { private fun launchActivityForResult(intent: Intent, requestCode: Int, @StringRes error: Int = org.fossify.commons.R.string.no_app_found) {
hideKeyboard() hideKeyboard()
try { try {
startActivityForResult(intent, requestCode) startActivityForResult(intent, requestCode)
@ -1226,11 +1226,11 @@ class ThreadActivity : SimpleActivity() {
addAttachment(vCardUri) addAttachment(vCardUri)
} }
} else { } else {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
} }
} }
} else { } else {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
} }
} }
} }
@ -1251,7 +1251,7 @@ class ThreadActivity : SimpleActivity() {
val mimeType = contentResolver.getType(uri) val mimeType = contentResolver.getType(uri)
if (mimeType == null) { if (mimeType == null) {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
return return
} }
val isImage = mimeType.isImageMimeType() val isImage = mimeType.isImageMimeType()
@ -1302,7 +1302,7 @@ class ThreadActivity : SimpleActivity() {
outputStream = contentResolver.openOutputStream(Uri.parse(resultData.dataString!!), "rwt") outputStream = contentResolver.openOutputStream(Uri.parse(resultData.dataString!!), "rwt")
inputStream!!.copyTo(outputStream!!) inputStream!!.copyTo(outputStream!!)
outputStream.flush() outputStream.flush()
toast(com.simplemobiletools.commons.R.string.file_saved) toast(org.fossify.commons.R.string.file_saved)
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e) showErrorToast(e)
} finally { } finally {
@ -1331,7 +1331,7 @@ class ThreadActivity : SimpleActivity() {
private fun sendMessage() { private fun sendMessage() {
var text = binding.messageHolder.threadTypeMessage.value var text = binding.messageHolder.threadTypeMessage.value
if (text.isEmpty() && getAttachmentSelections().isEmpty()) { if (text.isEmpty() && getAttachmentSelections().isEmpty()) {
showErrorToast(getString(com.simplemobiletools.commons.R.string.unknown_error_occurred)) showErrorToast(getString(org.fossify.commons.R.string.unknown_error_occurred))
return return
} }
scrollToBottom() scrollToBottom()
@ -1379,7 +1379,7 @@ class ThreadActivity : SimpleActivity() {
} }
} }
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e.localizedMessage ?: getString(com.simplemobiletools.commons.R.string.unknown_error_occurred)) showErrorToast(e.localizedMessage ?: getString(org.fossify.commons.R.string.unknown_error_occurred))
} }
} }
@ -1403,7 +1403,7 @@ class ThreadActivity : SimpleActivity() {
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e) showErrorToast(e)
} catch (e: Error) { } catch (e: Error) {
showErrorToast(e.localizedMessage ?: getString(com.simplemobiletools.commons.R.string.unknown_error_occurred)) showErrorToast(e.localizedMessage ?: getString(org.fossify.commons.R.string.unknown_error_occurred))
} }
} }
@ -1441,9 +1441,9 @@ class ThreadActivity : SimpleActivity() {
newLinearLayout.orientation = LinearLayout.HORIZONTAL newLinearLayout.orientation = LinearLayout.HORIZONTAL
val sideMargin = (binding.selectedContacts.layoutParams as RelativeLayout.LayoutParams).leftMargin val sideMargin = (binding.selectedContacts.layoutParams as RelativeLayout.LayoutParams).leftMargin
val mediumMargin = resources.getDimension(com.simplemobiletools.commons.R.dimen.medium_margin).toInt() val mediumMargin = resources.getDimension(org.fossify.commons.R.dimen.medium_margin).toInt()
val parentWidth = realScreenSize.x - sideMargin * 2 val parentWidth = realScreenSize.x - sideMargin * 2
val firstRowWidth = parentWidth - resources.getDimension(com.simplemobiletools.commons.R.dimen.normal_icon_size).toInt() + sideMargin / 2 val firstRowWidth = parentWidth - resources.getDimension(org.fossify.commons.R.dimen.normal_icon_size).toInt() + sideMargin / 2
var widthSoFar = 0 var widthSoFar = 0
var isFirstRow = true var isFirstRow = true
@ -1529,7 +1529,7 @@ class ThreadActivity : SimpleActivity() {
type = mimeType type = mimeType
addCategory(Intent.CATEGORY_OPENABLE) addCategory(Intent.CATEGORY_OPENABLE)
putExtra(Intent.EXTRA_TITLE, path.split("/").last()) putExtra(Intent.EXTRA_TITLE, path.split("/").last())
launchActivityForResult(this, PICK_SAVE_FILE_INTENT, error = com.simplemobiletools.commons.R.string.system_service_disabled) launchActivityForResult(this, PICK_SAVE_FILE_INTENT, error = org.fossify.commons.R.string.system_service_disabled)
} }
} }
@ -1597,7 +1597,7 @@ class ThreadActivity : SimpleActivity() {
val items = arrayListOf( val items = arrayListOf(
RadioItem(TYPE_EDIT, getString(R.string.update_message)), RadioItem(TYPE_EDIT, getString(R.string.update_message)),
RadioItem(TYPE_SEND, getString(R.string.send_now)), RadioItem(TYPE_SEND, getString(R.string.send_now)),
RadioItem(TYPE_DELETE, getString(com.simplemobiletools.commons.R.string.delete)) RadioItem(TYPE_DELETE, getString(org.fossify.commons.R.string.delete))
) )
RadioGroupDialog(activity = this, items = items, titleId = R.string.scheduled_message) { any -> RadioGroupDialog(activity = this, items = items, titleId = R.string.scheduled_message) { any ->
when (any as Int) { when (any as Int) {
@ -1733,14 +1733,14 @@ class ThreadActivity : SimpleActivity() {
private fun setupAttachmentPickerView() = binding.messageHolder.attachmentPicker.apply { private fun setupAttachmentPickerView() = binding.messageHolder.attachmentPicker.apply {
val buttonColors = arrayOf( val buttonColors = arrayOf(
com.simplemobiletools.commons.R.color.md_red_500, org.fossify.commons.R.color.md_red_500,
com.simplemobiletools.commons.R.color.md_brown_500, org.fossify.commons.R.color.md_brown_500,
com.simplemobiletools.commons.R.color.md_pink_500, org.fossify.commons.R.color.md_pink_500,
com.simplemobiletools.commons.R.color.md_purple_500, org.fossify.commons.R.color.md_purple_500,
com.simplemobiletools.commons.R.color.md_teal_500, org.fossify.commons.R.color.md_teal_500,
com.simplemobiletools.commons.R.color.md_green_500, org.fossify.commons.R.color.md_green_500,
com.simplemobiletools.commons.R.color.md_indigo_500, org.fossify.commons.R.color.md_indigo_500,
com.simplemobiletools.commons.R.color.md_blue_500 org.fossify.commons.R.color.md_blue_500
).map { ResourcesCompat.getColor(resources, it, theme) } ).map { ResourcesCompat.getColor(resources, it, theme) }
arrayOf( arrayOf(
choosePhotoIcon, choosePhotoIcon,
@ -1869,7 +1869,7 @@ class ThreadActivity : SimpleActivity() {
} }
private fun getBottomBarColor() = if (baseConfig.isUsingSystemTheme) { private fun getBottomBarColor() = if (baseConfig.isUsingSystemTheme) {
resources.getColor(com.simplemobiletools.commons.R.color.you_bottom_bar_color) resources.getColor(org.fossify.commons.R.color.you_bottom_bar_color)
} else { } else {
getBottomNavigationBackgroundColor() getBottomNavigationBackgroundColor()
} }

View file

@ -1,23 +1,23 @@
package com.simplemobiletools.smsmessenger.activities package org.fossify.smsmessenger.activities
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
import android.os.Bundle import android.os.Bundle
import com.simplemobiletools.commons.extensions.normalizePhoneNumber
import com.simplemobiletools.commons.extensions.sendEmailIntent
import com.simplemobiletools.commons.extensions.viewBinding
import com.simplemobiletools.commons.helpers.NavigationIcon
import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.adapters.VCardViewerAdapter
import com.simplemobiletools.smsmessenger.databinding.ActivityVcardViewerBinding
import com.simplemobiletools.smsmessenger.extensions.dialNumber
import com.simplemobiletools.smsmessenger.helpers.EXTRA_VCARD_URI
import com.simplemobiletools.smsmessenger.helpers.parseVCardFromUri
import com.simplemobiletools.smsmessenger.models.VCardPropertyWrapper
import com.simplemobiletools.smsmessenger.models.VCardWrapper
import ezvcard.VCard import ezvcard.VCard
import ezvcard.property.Email import ezvcard.property.Email
import ezvcard.property.Telephone import ezvcard.property.Telephone
import org.fossify.commons.extensions.normalizePhoneNumber
import org.fossify.commons.extensions.sendEmailIntent
import org.fossify.commons.extensions.viewBinding
import org.fossify.commons.helpers.NavigationIcon
import org.fossify.smsmessenger.R
import org.fossify.smsmessenger.adapters.VCardViewerAdapter
import org.fossify.smsmessenger.databinding.ActivityVcardViewerBinding
import org.fossify.smsmessenger.extensions.dialNumber
import org.fossify.smsmessenger.helpers.EXTRA_VCARD_URI
import org.fossify.smsmessenger.helpers.parseVCardFromUri
import org.fossify.smsmessenger.models.VCardPropertyWrapper
import org.fossify.smsmessenger.models.VCardWrapper
class VCardViewerActivity : SimpleActivity() { class VCardViewerActivity : SimpleActivity() {

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.view.Menu import android.view.Menu
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.notificationManager import org.fossify.commons.extensions.notificationManager
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.extensions.deleteConversation import org.fossify.smsmessenger.extensions.deleteConversation
import com.simplemobiletools.smsmessenger.extensions.updateConversationArchivedStatus import org.fossify.smsmessenger.extensions.updateConversationArchivedStatus
import com.simplemobiletools.smsmessenger.helpers.refreshMessages import org.fossify.smsmessenger.helpers.refreshMessages
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class ArchivedConversationsAdapter( class ArchivedConversationsAdapter(
activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit
@ -35,7 +35,7 @@ class ArchivedConversationsAdapter(
val itemsCnt = selectedKeys.size val itemsCnt = selectedKeys.size
val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt) val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt)
val baseString = com.simplemobiletools.commons.R.string.deletion_confirmation val baseString = org.fossify.commons.R.string.deletion_confirmation
val question = String.format(resources.getString(baseString), items) val question = String.format(resources.getString(baseString), items)
ConfirmationDialog(activity, question) { ConfirmationDialog(activity, question) {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.content.Intent import android.content.Intent
import android.graphics.drawable.Drawable import android.graphics.drawable.Drawable
@ -18,16 +18,16 @@ import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
import com.bumptech.glide.request.RequestListener import com.bumptech.glide.request.RequestListener
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.bumptech.glide.request.target.Target import com.bumptech.glide.request.target.Target
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.VCardViewerActivity import org.fossify.smsmessenger.activities.VCardViewerActivity
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentDocumentPreviewBinding import org.fossify.smsmessenger.databinding.ItemAttachmentDocumentPreviewBinding
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentMediaPreviewBinding import org.fossify.smsmessenger.databinding.ItemAttachmentMediaPreviewBinding
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentVcardPreviewBinding import org.fossify.smsmessenger.databinding.ItemAttachmentVcardPreviewBinding
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.models.AttachmentSelection import org.fossify.smsmessenger.models.AttachmentSelection
class AttachmentsAdapter( class AttachmentsAdapter(
val activity: BaseSimpleActivity, val activity: BaseSimpleActivity,
@ -72,6 +72,7 @@ class AttachmentsAdapter(
onRemoveButtonClicked = { removeAttachment(attachment) } onRemoveButtonClicked = { removeAttachment(attachment) }
) )
} }
ATTACHMENT_VCARD -> { ATTACHMENT_VCARD -> {
(binding as ItemAttachmentVcardPreviewBinding).setupVCardPreview( (binding as ItemAttachmentVcardPreviewBinding).setupVCardPreview(
activity = activity, activity = activity,
@ -85,6 +86,7 @@ class AttachmentsAdapter(
onRemoveButtonClicked = { removeAttachment(attachment) } onRemoveButtonClicked = { removeAttachment(attachment) }
) )
} }
ATTACHMENT_MEDIA -> setupMediaPreview( ATTACHMENT_MEDIA -> setupMediaPreview(
binding = binding as ItemAttachmentMediaPreviewBinding, binding = binding as ItemAttachmentMediaPreviewBinding,
attachment = attachment attachment = attachment
@ -164,7 +166,7 @@ class AttachmentsAdapter(
} }
private fun loadMediaPreview(binding: ItemAttachmentMediaPreviewBinding, attachment: AttachmentSelection) { private fun loadMediaPreview(binding: ItemAttachmentMediaPreviewBinding, attachment: AttachmentSelection) {
val roundedCornersRadius = resources.getDimension(com.simplemobiletools.commons.R.dimen.activity_margin).toInt() val roundedCornersRadius = resources.getDimension(org.fossify.commons.R.dimen.activity_margin).toInt()
val size = resources.getDimension(R.dimen.attachment_preview_size).toInt() val size = resources.getDimension(R.dimen.attachment_preview_size).toInt()
val options = RequestOptions() val options = RequestOptions()
@ -179,7 +181,7 @@ class AttachmentsAdapter(
.listener(object : RequestListener<Drawable> { .listener(object : RequestListener<Drawable> {
override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Drawable>, isFirstResource: Boolean): Boolean { override fun onLoadFailed(e: GlideException?, model: Any?, target: Target<Drawable>, isFirstResource: Boolean): Boolean {
removeAttachment(attachment) removeAttachment(attachment)
activity.toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) activity.toast(org.fossify.commons.R.string.unknown_error_occurred)
return false return false
} }

View file

@ -1,18 +1,18 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.widget.ArrayAdapter import android.widget.ArrayAdapter
import android.widget.Filter import android.widget.Filter
import com.simplemobiletools.commons.databinding.ItemContactWithNumberBinding import org.fossify.commons.databinding.ItemContactWithNumberBinding
import com.simplemobiletools.commons.extensions.darkenColor import org.fossify.commons.extensions.darkenColor
import com.simplemobiletools.commons.extensions.getContrastColor import org.fossify.commons.extensions.getContrastColor
import com.simplemobiletools.commons.extensions.getProperBackgroundColor import org.fossify.commons.extensions.getProperBackgroundColor
import com.simplemobiletools.commons.extensions.normalizeString import org.fossify.commons.extensions.normalizeString
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
class AutoCompleteTextViewAdapter(val activity: SimpleActivity, val contacts: ArrayList<SimpleContact>) : ArrayAdapter<SimpleContact>(activity, 0, contacts) { class AutoCompleteTextViewAdapter(val activity: SimpleActivity, val contacts: ArrayList<SimpleContact>) : ArrayAdapter<SimpleContact>(activity, 0, contacts) {
var resultList = ArrayList<SimpleContact>() var resultList = ArrayList<SimpleContact>()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.graphics.Typeface import android.graphics.Typeface
import android.os.Parcelable import android.os.Parcelable
@ -9,15 +9,16 @@ import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.qtalk.recyclerviewfastscroller.RecyclerViewFastScroller import com.qtalk.recyclerviewfastscroller.RecyclerViewFastScroller
import com.simplemobiletools.commons.adapters.MyRecyclerViewListAdapter import org.fossify.commons.adapters.MyRecyclerViewListAdapter
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.databinding.ItemConversationBinding import org.fossify.smsmessenger.databinding.ItemConversationBinding
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.extensions.getAllDrafts
import org.fossify.smsmessenger.models.Conversation
@Suppress("LeakingThis") @Suppress("LeakingThis")
abstract class BaseConversationsAdapter( abstract class BaseConversationsAdapter(

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.text.TextUtils import android.text.TextUtils
import android.util.TypedValue import android.util.TypedValue
@ -6,13 +6,13 @@ import android.view.Menu
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import org.fossify.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.databinding.ItemContactWithNumberBinding import org.fossify.commons.databinding.ItemContactWithNumberBinding
import com.simplemobiletools.commons.extensions.getTextSize import org.fossify.commons.extensions.getTextSize
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
class ContactsAdapter( class ContactsAdapter(
activity: SimpleActivity, var contacts: ArrayList<SimpleContact>, recyclerView: MyRecyclerView, itemClick: (Any) -> Unit activity: SimpleActivity, var contacts: ArrayList<SimpleContact>, recyclerView: MyRecyclerView, itemClick: (Any) -> Unit

View file

@ -1,22 +1,22 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.content.Intent import android.content.Intent
import android.text.TextUtils import android.text.TextUtils
import android.view.Menu import android.view.Menu
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.dialogs.FeatureLockedDialog import org.fossify.commons.dialogs.FeatureLockedDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.KEY_PHONE import org.fossify.commons.helpers.KEY_PHONE
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.helpers.isNougatPlus import org.fossify.commons.helpers.isNougatPlus
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.dialogs.RenameConversationDialog import org.fossify.smsmessenger.dialogs.RenameConversationDialog
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.refreshMessages import org.fossify.smsmessenger.helpers.refreshMessages
import com.simplemobiletools.smsmessenger.messaging.isShortCodeWithLetters import org.fossify.smsmessenger.messaging.isShortCodeWithLetters
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class ConversationsAdapter( class ConversationsAdapter(
activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit
@ -31,7 +31,7 @@ class ConversationsAdapter(
val archiveAvailable = activity.config.isArchiveAvailable val archiveAvailable = activity.config.isArchiveAvailable
menu.apply { menu.apply {
findItem(R.id.cab_block_number).title = activity.addLockedLabelIfNeeded(com.simplemobiletools.commons.R.string.block_number) findItem(R.id.cab_block_number).title = activity.addLockedLabelIfNeeded(org.fossify.commons.R.string.block_number)
findItem(R.id.cab_block_number).isVisible = isNougatPlus() findItem(R.id.cab_block_number).isVisible = isNougatPlus()
findItem(R.id.cab_add_number_to_contact).isVisible = isSingleSelection && !isGroupConversation findItem(R.id.cab_add_number_to_contact).isVisible = isSingleSelection && !isGroupConversation
findItem(R.id.cab_dial_number).isVisible = isSingleSelection && !isGroupConversation && !isShortCodeWithLetters(selectedConversation.phoneNumber) findItem(R.id.cab_dial_number).isVisible = isSingleSelection && !isGroupConversation && !isShortCodeWithLetters(selectedConversation.phoneNumber)
@ -76,7 +76,7 @@ class ConversationsAdapter(
private fun askConfirmBlock() { private fun askConfirmBlock() {
val numbers = getSelectedItems().distinctBy { it.phoneNumber }.map { it.phoneNumber } val numbers = getSelectedItems().distinctBy { it.phoneNumber }.map { it.phoneNumber }
val numbersString = TextUtils.join(", ", numbers) val numbersString = TextUtils.join(", ", numbers)
val question = String.format(resources.getString(com.simplemobiletools.commons.R.string.block_confirmation), numbersString) val question = String.format(resources.getString(org.fossify.commons.R.string.block_confirmation), numbersString)
ConfirmationDialog(activity, question) { ConfirmationDialog(activity, question) {
blockNumbers() blockNumbers()
@ -120,7 +120,7 @@ class ConversationsAdapter(
val itemsCnt = selectedKeys.size val itemsCnt = selectedKeys.size
val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt) val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt)
val baseString = com.simplemobiletools.commons.R.string.deletion_confirmation val baseString = org.fossify.commons.R.string.deletion_confirmation
val question = String.format(resources.getString(baseString), items) val question = String.format(resources.getString(baseString), items)
ConfirmationDialog(activity, question) { ConfirmationDialog(activity, question) {

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.view.Menu import android.view.Menu
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.notificationManager import org.fossify.commons.extensions.notificationManager
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.extensions.deleteConversation import org.fossify.smsmessenger.extensions.deleteConversation
import com.simplemobiletools.smsmessenger.extensions.restoreAllMessagesFromRecycleBinForConversation import org.fossify.smsmessenger.extensions.restoreAllMessagesFromRecycleBinForConversation
import com.simplemobiletools.smsmessenger.helpers.refreshMessages import org.fossify.smsmessenger.helpers.refreshMessages
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class RecycleBinConversationsAdapter( class RecycleBinConversationsAdapter(
activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit activity: SimpleActivity, recyclerView: MyRecyclerView, onRefresh: () -> Unit, itemClick: (Any) -> Unit
@ -35,7 +35,7 @@ class RecycleBinConversationsAdapter(
val itemsCnt = selectedKeys.size val itemsCnt = selectedKeys.size
val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt) val items = resources.getQuantityString(R.plurals.delete_conversations, itemsCnt, itemsCnt)
val baseString = com.simplemobiletools.commons.R.string.deletion_confirmation val baseString = org.fossify.commons.R.string.deletion_confirmation
val question = String.format(resources.getString(baseString), items) val question = String.format(resources.getString(baseString), items)
ConfirmationDialog(activity, question) { ConfirmationDialog(activity, question) {

View file

@ -1,18 +1,18 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.util.TypedValue import android.util.TypedValue
import android.view.Menu import android.view.Menu
import android.view.View import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import org.fossify.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.getTextSize import org.fossify.commons.extensions.getTextSize
import com.simplemobiletools.commons.extensions.highlightTextPart import org.fossify.commons.extensions.highlightTextPart
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.databinding.ItemSearchResultBinding import org.fossify.smsmessenger.databinding.ItemSearchResultBinding
import com.simplemobiletools.smsmessenger.models.SearchResult import org.fossify.smsmessenger.models.SearchResult
class SearchResultsAdapter( class SearchResultsAdapter(
activity: SimpleActivity, var searchResults: ArrayList<SearchResult>, recyclerView: MyRecyclerView, highlightText: String, itemClick: (Any) -> Unit activity: SimpleActivity, var searchResults: ArrayList<SearchResult>, recyclerView: MyRecyclerView, highlightText: String, itemClick: (Any) -> Unit

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Intent import android.content.Intent
@ -28,27 +28,27 @@ import com.bumptech.glide.load.resource.bitmap.FitCenter
import com.bumptech.glide.request.RequestListener import com.bumptech.glide.request.RequestListener
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.bumptech.glide.request.target.Target import com.bumptech.glide.request.target.Target
import com.simplemobiletools.commons.adapters.MyRecyclerViewListAdapter import org.fossify.commons.adapters.MyRecyclerViewListAdapter
import com.simplemobiletools.commons.dialogs.ConfirmationDialog import org.fossify.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.NewConversationActivity import org.fossify.smsmessenger.activities.NewConversationActivity
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.activities.ThreadActivity import org.fossify.smsmessenger.activities.ThreadActivity
import com.simplemobiletools.smsmessenger.activities.VCardViewerActivity import org.fossify.smsmessenger.activities.VCardViewerActivity
import com.simplemobiletools.smsmessenger.databinding.* import org.fossify.smsmessenger.databinding.*
import com.simplemobiletools.smsmessenger.dialogs.DeleteConfirmationDialog import org.fossify.smsmessenger.dialogs.DeleteConfirmationDialog
import com.simplemobiletools.smsmessenger.dialogs.MessageDetailsDialog import org.fossify.smsmessenger.dialogs.MessageDetailsDialog
import com.simplemobiletools.smsmessenger.dialogs.SelectTextDialog import org.fossify.smsmessenger.dialogs.SelectTextDialog
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.* import org.fossify.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.models.Attachment import org.fossify.smsmessenger.models.Attachment
import com.simplemobiletools.smsmessenger.models.Message import org.fossify.smsmessenger.models.Message
import com.simplemobiletools.smsmessenger.models.ThreadItem import org.fossify.smsmessenger.models.ThreadItem
import com.simplemobiletools.smsmessenger.models.ThreadItem.* import org.fossify.smsmessenger.models.ThreadItem.*
class ThreadAdapter( class ThreadAdapter(
activity: SimpleActivity, activity: SimpleActivity,
@ -203,9 +203,9 @@ class ThreadAdapter(
} }
val baseString = if (activity.config.useRecycleBin && !isRecycleBin) { val baseString = if (activity.config.useRecycleBin && !isRecycleBin) {
com.simplemobiletools.commons.R.string.move_to_recycle_bin_confirmation org.fossify.commons.R.string.move_to_recycle_bin_confirmation
} else { } else {
com.simplemobiletools.commons.R.string.deletion_confirmation org.fossify.commons.R.string.deletion_confirmation
} }
val question = String.format(resources.getString(baseString), items) val question = String.format(resources.getString(baseString), items)
@ -384,7 +384,7 @@ class ThreadAdapter(
if (message.isScheduled) { if (message.isScheduled) {
typeface = Typeface.create(Typeface.DEFAULT, Typeface.ITALIC) typeface = Typeface.create(Typeface.DEFAULT, Typeface.ITALIC)
val scheduledDrawable = AppCompatResources.getDrawable(activity, com.simplemobiletools.commons.R.drawable.ic_clock_vector)?.apply { val scheduledDrawable = AppCompatResources.getDrawable(activity, org.fossify.commons.R.drawable.ic_clock_vector)?.apply {
applyColorFilter(contrastColor) applyColorFilter(contrastColor)
val size = lineHeight val size = lineHeight
setBounds(0, 0, size, size) setBounds(0, 0, size, size)
@ -523,7 +523,7 @@ class ThreadAdapter(
private fun setupThreadSuccess(view: View, isDelivered: Boolean) { private fun setupThreadSuccess(view: View, isDelivered: Boolean) {
ItemThreadSuccessBinding.bind(view).apply { ItemThreadSuccessBinding.bind(view).apply {
threadSuccess.setImageResource(if (isDelivered) R.drawable.ic_check_double_vector else com.simplemobiletools.commons.R.drawable.ic_check_vector) threadSuccess.setImageResource(if (isDelivered) R.drawable.ic_check_double_vector else org.fossify.commons.R.drawable.ic_check_vector)
threadSuccess.applyColorFilter(textColor) threadSuccess.applyColorFilter(textColor)
} }
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.adapters package org.fossify.smsmessenger.adapters
import android.util.TypedValue import android.util.TypedValue
import android.view.ViewGroup import android.view.ViewGroup
@ -9,14 +9,14 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.load.resource.bitmap.RoundedCorners import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.databinding.ItemVcardContactBinding import org.fossify.smsmessenger.databinding.ItemVcardContactBinding
import com.simplemobiletools.smsmessenger.databinding.ItemVcardContactPropertyBinding import org.fossify.smsmessenger.databinding.ItemVcardContactPropertyBinding
import com.simplemobiletools.smsmessenger.models.VCardPropertyWrapper import org.fossify.smsmessenger.models.VCardPropertyWrapper
import com.simplemobiletools.smsmessenger.models.VCardWrapper import org.fossify.smsmessenger.models.VCardWrapper
private const val TYPE_VCARD_CONTACT = 1 private const val TYPE_VCARD_CONTACT = 1
private const val TYPE_VCARD_CONTACT_PROPERTY = 2 private const val TYPE_VCARD_CONTACT_PROPERTY = 2
@ -44,9 +44,11 @@ class VCardViewerAdapter(
TYPE_VCARD_CONTACT -> VCardContactViewHolder( TYPE_VCARD_CONTACT -> VCardContactViewHolder(
binding = ItemVcardContactBinding.inflate(layoutInflater, parent, false) binding = ItemVcardContactBinding.inflate(layoutInflater, parent, false)
) )
TYPE_VCARD_CONTACT_PROPERTY -> VCardPropertyViewHolder( TYPE_VCARD_CONTACT_PROPERTY -> VCardPropertyViewHolder(
binding = ItemVcardContactPropertyBinding.inflate(layoutInflater, parent, false) binding = ItemVcardContactPropertyBinding.inflate(layoutInflater, parent, false)
) )
else -> throw IllegalArgumentException("Unexpected type: $viewType") else -> throw IllegalArgumentException("Unexpected type: $viewType")
} }
} }
@ -76,7 +78,7 @@ class VCardViewerAdapter(
null null
} }
val roundingRadius = resources.getDimensionPixelSize(com.simplemobiletools.commons.R.dimen.big_margin) val roundingRadius = resources.getDimensionPixelSize(org.fossify.commons.R.dimen.big_margin)
val transformation = RoundedCorners(roundingRadius) val transformation = RoundedCorners(roundingRadius)
val options = RequestOptions() val options = RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.RESOURCE) .diskCacheStrategy(DiskCacheStrategy.RESOURCE)

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.databases package org.fossify.smsmessenger.databases
import android.content.Context import android.content.Context
import androidx.room.Database import androidx.room.Database
@ -7,12 +7,12 @@ import androidx.room.RoomDatabase
import androidx.room.TypeConverters import androidx.room.TypeConverters
import androidx.room.migration.Migration import androidx.room.migration.Migration
import androidx.sqlite.db.SupportSQLiteDatabase import androidx.sqlite.db.SupportSQLiteDatabase
import com.simplemobiletools.smsmessenger.helpers.Converters import org.fossify.smsmessenger.helpers.Converters
import com.simplemobiletools.smsmessenger.interfaces.AttachmentsDao import org.fossify.smsmessenger.interfaces.AttachmentsDao
import com.simplemobiletools.smsmessenger.interfaces.ConversationsDao import org.fossify.smsmessenger.interfaces.ConversationsDao
import com.simplemobiletools.smsmessenger.interfaces.MessageAttachmentsDao import org.fossify.smsmessenger.interfaces.MessageAttachmentsDao
import com.simplemobiletools.smsmessenger.interfaces.MessagesDao import org.fossify.smsmessenger.interfaces.MessagesDao
import com.simplemobiletools.smsmessenger.models.* import org.fossify.smsmessenger.models.*
@Database(entities = [Conversation::class, Attachment::class, MessageAttachment::class, Message::class, RecycleBinMessage::class], version = 8) @Database(entities = [Conversation::class, Attachment::class, MessageAttachment::class, Message::class, RecycleBinMessage::class], version = 8)
@TypeConverters(Converters::class) @TypeConverters(Converters::class)

View file

@ -1,13 +1,13 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard import org.fossify.commons.extensions.showKeyboard
import com.simplemobiletools.commons.extensions.value import org.fossify.commons.extensions.value
import com.simplemobiletools.smsmessenger.databinding.DialogAddBlockedKeywordBinding import org.fossify.smsmessenger.databinding.DialogAddBlockedKeywordBinding
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
class AddBlockedKeywordDialog(val activity: BaseSimpleActivity, private val originalKeyword: String? = null, val callback: () -> Unit) { class AddBlockedKeywordDialog(val activity: BaseSimpleActivity, private val originalKeyword: String? = null, val callback: () -> Unit) {
init { init {
@ -18,8 +18,8 @@ class AddBlockedKeywordDialog(val activity: BaseSimpleActivity, private val orig
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null) .setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply { .apply {
activity.setupDialogStuff(binding.root, this) { alertDialog -> activity.setupDialogStuff(binding.root, this) { alertDialog ->
alertDialog.showKeyboard(binding.addBlockedKeywordEdittext) alertDialog.showKeyboard(binding.addBlockedKeywordEdittext)

View file

@ -1,11 +1,11 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import android.app.Activity import android.app.Activity
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.commons.extensions.beGoneIf import org.fossify.commons.extensions.beGoneIf
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.smsmessenger.databinding.DialogDeleteConfirmationBinding import org.fossify.smsmessenger.databinding.DialogDeleteConfirmationBinding
class DeleteConfirmationDialog( class DeleteConfirmationDialog(
private val activity: Activity, private val activity: Activity,
@ -21,8 +21,8 @@ class DeleteConfirmationDialog(
binding.deleteRememberTitle.text = message binding.deleteRememberTitle.text = message
binding.skipTheRecycleBinCheckbox.beGoneIf(!showSkipRecycleBinOption) binding.skipTheRecycleBinCheckbox.beGoneIf(!showSkipRecycleBinOption)
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.yes) { _, _ -> dialogConfirmed() } .setPositiveButton(org.fossify.commons.R.string.yes) { _, _ -> dialogConfirmed() }
.setNegativeButton(com.simplemobiletools.commons.R.string.no, null) .setNegativeButton(org.fossify.commons.R.string.no, null)
.apply { .apply {
activity.setupDialogStuff(binding.root, this) { alertDialog -> activity.setupDialogStuff(binding.root, this) { alertDialog ->
dialog = alertDialog dialog = alertDialog

View file

@ -1,11 +1,11 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.databinding.DialogExportMessagesBinding import org.fossify.smsmessenger.databinding.DialogExportMessagesBinding
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
class ExportMessagesDialog( class ExportMessagesDialog(
private val activity: SimpleActivity, private val activity: SimpleActivity,
@ -23,8 +23,8 @@ class ExportMessagesDialog(
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null) .setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply { .apply {
activity.setupDialogStuff(binding.root, this, R.string.export_messages) { alertDialog -> activity.setupDialogStuff(binding.root, this, R.string.export_messages) { alertDialog ->
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
@ -32,13 +32,13 @@ class ExportMessagesDialog(
config.exportMms = binding.exportMmsCheckbox.isChecked config.exportMms = binding.exportMmsCheckbox.isChecked
val filename = binding.exportMessagesFilename.value val filename = binding.exportMessagesFilename.value
when { when {
filename.isEmpty() -> activity.toast(com.simplemobiletools.commons.R.string.empty_name) filename.isEmpty() -> activity.toast(org.fossify.commons.R.string.empty_name)
filename.isAValidFilename() -> { filename.isAValidFilename() -> {
callback(filename) callback(filename)
alertDialog.dismiss() alertDialog.dismiss()
} }
else -> activity.toast(com.simplemobiletools.commons.R.string.invalid_name) else -> activity.toast(org.fossify.commons.R.string.invalid_name)
} }
} }
} }

View file

@ -1,17 +1,17 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.toast import org.fossify.commons.extensions.toast
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.SimpleActivity import org.fossify.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.databinding.DialogImportMessagesBinding import org.fossify.smsmessenger.databinding.DialogImportMessagesBinding
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.helpers.MessagesImporter import org.fossify.smsmessenger.helpers.MessagesImporter
import com.simplemobiletools.smsmessenger.models.ImportResult import org.fossify.smsmessenger.models.ImportResult
import com.simplemobiletools.smsmessenger.models.MessagesBackup import org.fossify.smsmessenger.models.MessagesBackup
class ImportMessagesDialog( class ImportMessagesDialog(
private val activity: SimpleActivity, private val activity: SimpleActivity,
@ -28,8 +28,8 @@ class ImportMessagesDialog(
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null) .setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply { .apply {
activity.setupDialogStuff(binding.root, this, R.string.import_messages) { alertDialog -> activity.setupDialogStuff(binding.root, this, R.string.import_messages) { alertDialog ->
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener { alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener {
@ -43,7 +43,7 @@ class ImportMessagesDialog(
} }
ignoreClicks = true ignoreClicks = true
activity.toast(com.simplemobiletools.commons.R.string.importing) activity.toast(org.fossify.commons.R.string.importing)
config.importSms = binding.importSmsCheckbox.isChecked config.importSms = binding.importSmsCheckbox.isChecked
config.importMms = binding.importMmsCheckbox.isChecked config.importMms = binding.importMmsCheckbox.isChecked
ensureBackgroundThread { ensureBackgroundThread {
@ -60,10 +60,10 @@ class ImportMessagesDialog(
private fun handleParseResult(result: ImportResult) { private fun handleParseResult(result: ImportResult) {
activity.toast( activity.toast(
when (result) { when (result) {
ImportResult.IMPORT_OK -> com.simplemobiletools.commons.R.string.importing_successful ImportResult.IMPORT_OK -> org.fossify.commons.R.string.importing_successful
ImportResult.IMPORT_PARTIAL -> com.simplemobiletools.commons.R.string.importing_some_entries_failed ImportResult.IMPORT_PARTIAL -> org.fossify.commons.R.string.importing_some_entries_failed
ImportResult.IMPORT_FAIL -> com.simplemobiletools.commons.R.string.importing_failed ImportResult.IMPORT_FAIL -> org.fossify.commons.R.string.importing_failed
else -> com.simplemobiletools.commons.R.string.no_items_found else -> org.fossify.commons.R.string.no_items_found
} }
) )
} }

View file

@ -0,0 +1,20 @@
package org.fossify.smsmessenger.dialogs
import org.fossify.commons.activities.BaseSimpleActivity
import org.fossify.commons.extensions.getAlertDialogBuilder
import org.fossify.commons.extensions.setupDialogStuff
import org.fossify.smsmessenger.databinding.DialogInvalidNumberBinding
class InvalidNumberDialog(val activity: BaseSimpleActivity, val text: String) {
init {
val binding = DialogInvalidNumberBinding.inflate(activity.layoutInflater).apply {
dialogInvalidNumberDesc.text = text
}
activity.getAlertDialogBuilder()
.setPositiveButton(org.fossify.commons.R.string.ok) { _, _ -> { } }
.apply {
activity.setupDialogStuff(binding.root, this)
}
}
}

View file

@ -1,18 +1,18 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import android.view.* import android.view.*
import android.widget.PopupMenu import android.widget.PopupMenu
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import org.fossify.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.copyToClipboard import org.fossify.commons.extensions.copyToClipboard
import com.simplemobiletools.commons.extensions.getPopupMenuTheme import org.fossify.commons.extensions.getPopupMenuTheme
import com.simplemobiletools.commons.extensions.getProperTextColor import org.fossify.commons.extensions.getProperTextColor
import com.simplemobiletools.commons.extensions.setupViewBackground import org.fossify.commons.extensions.setupViewBackground
import com.simplemobiletools.commons.interfaces.RefreshRecyclerViewListener import org.fossify.commons.interfaces.RefreshRecyclerViewListener
import com.simplemobiletools.commons.views.MyRecyclerView import org.fossify.commons.views.MyRecyclerView
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.databinding.ItemManageBlockedKeywordBinding import org.fossify.smsmessenger.databinding.ItemManageBlockedKeywordBinding
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
class ManageBlockedKeywordsAdapter( class ManageBlockedKeywordsAdapter(
activity: BaseSimpleActivity, var blockedKeywords: ArrayList<String>, val listener: RefreshRecyclerViewListener?, activity: BaseSimpleActivity, var blockedKeywords: ArrayList<String>, val listener: RefreshRecyclerViewListener?,

View file

@ -1,14 +1,16 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.telephony.SubscriptionInfo import android.telephony.SubscriptionInfo
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.dialogs.BasePropertiesDialog import org.fossify.commons.dialogs.BasePropertiesDialog
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.smsmessenger.R import org.fossify.commons.extensions.getTimeFormat
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.smsmessenger.extensions.subscriptionManagerCompat import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.models.Message import org.fossify.smsmessenger.extensions.config
import org.fossify.smsmessenger.extensions.subscriptionManagerCompat
import org.fossify.smsmessenger.models.Message
import org.joda.time.DateTime import org.joda.time.DateTime
class MessageDetailsDialog(val activity: BaseSimpleActivity, val message: Message) : BasePropertiesDialog(activity) { class MessageDetailsDialog(val activity: BaseSimpleActivity, val message: Message) : BasePropertiesDialog(activity) {
@ -23,7 +25,7 @@ class MessageDetailsDialog(val activity: BaseSimpleActivity, val message: Messag
addProperty(message.getSentOrReceivedAtLabel(), message.getSentOrReceivedAt()) addProperty(message.getSentOrReceivedAtLabel(), message.getSentOrReceivedAt())
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { _, _ -> } .setPositiveButton(org.fossify.commons.R.string.ok) { _, _ -> }
.apply { .apply {
activity.setupDialogStuff(mDialogView.root, this, R.string.message_details) activity.setupDialogStuff(mDialogView.root, this, R.string.message_details)
} }
@ -57,7 +59,7 @@ class MessageDetailsDialog(val activity: BaseSimpleActivity, val message: Messag
private fun Message.getSIM(availableSIMs: List<SubscriptionInfo>): String { private fun Message.getSIM(availableSIMs: List<SubscriptionInfo>): String {
return availableSIMs.firstOrNull { it.subscriptionId == subscriptionId }?.displayName?.toString() return availableSIMs.firstOrNull { it.subscriptionId == subscriptionId }?.displayName?.toString()
?: activity.getString(com.simplemobiletools.commons.R.string.unknown) ?: activity.getString(org.fossify.commons.R.string.unknown)
} }
private fun Message.getSentOrReceivedAtLabel(): Int { private fun Message.getSentOrReceivedAtLabel(): Int {

View file

@ -1,15 +1,15 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import android.app.Activity import android.app.Activity
import android.content.DialogInterface.BUTTON_POSITIVE import android.content.DialogInterface.BUTTON_POSITIVE
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.commons.extensions.showKeyboard import org.fossify.commons.extensions.showKeyboard
import com.simplemobiletools.commons.extensions.toast import org.fossify.commons.extensions.toast
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.databinding.DialogRenameConversationBinding import org.fossify.smsmessenger.databinding.DialogRenameConversationBinding
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class RenameConversationDialog( class RenameConversationDialog(
private val activity: Activity, private val activity: Activity,
@ -30,8 +30,8 @@ class RenameConversationDialog(
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null) .setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply { .apply {
activity.setupDialogStuff(binding.root, this, R.string.rename_conversation) { alertDialog -> activity.setupDialogStuff(binding.root, this, R.string.rename_conversation) { alertDialog ->
dialog = alertDialog dialog = alertDialog
@ -40,7 +40,7 @@ class RenameConversationDialog(
setOnClickListener { setOnClickListener {
val newTitle = binding.renameConvEditText.text.toString() val newTitle = binding.renameConvEditText.text.toString()
if (newTitle.isEmpty()) { if (newTitle.isEmpty()) {
activity.toast(com.simplemobiletools.commons.R.string.empty_name) activity.toast(org.fossify.commons.R.string.empty_name)
return@setOnClickListener return@setOnClickListener
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import android.app.DatePickerDialog import android.app.DatePickerDialog
import android.app.DatePickerDialog.OnDateSetListener import android.app.DatePickerDialog.OnDateSetListener
@ -8,12 +8,12 @@ import android.text.format.DateFormat
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.google.android.material.timepicker.MaterialTimePicker import com.google.android.material.timepicker.MaterialTimePicker
import com.google.android.material.timepicker.TimeFormat import com.google.android.material.timepicker.TimeFormat
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.databinding.ScheduleMessageDialogBinding import org.fossify.smsmessenger.databinding.ScheduleMessageDialogBinding
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.extensions.roundToClosestMultipleOf import org.fossify.smsmessenger.extensions.roundToClosestMultipleOf
import org.joda.time.DateTime import org.joda.time.DateTime
import java.util.Calendar import java.util.Calendar
@ -66,8 +66,8 @@ class ScheduleMessageDialog(
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok, null) .setPositiveButton(org.fossify.commons.R.string.ok, null)
.setNegativeButton(com.simplemobiletools.commons.R.string.cancel, null) .setNegativeButton(org.fossify.commons.R.string.cancel, null)
.apply { .apply {
previewShown = true previewShown = true
activity.setupDialogStuff(binding.root, this, R.string.schedule_message) { dialog -> activity.setupDialogStuff(binding.root, this, R.string.schedule_message) { dialog ->
@ -99,7 +99,7 @@ class ScheduleMessageDialog(
datePicker.minDate = System.currentTimeMillis() datePicker.minDate = System.currentTimeMillis()
show() show()
getButton(AlertDialog.BUTTON_NEGATIVE).apply { getButton(AlertDialog.BUTTON_NEGATIVE).apply {
text = activity.getString(com.simplemobiletools.commons.R.string.cancel) text = activity.getString(org.fossify.commons.R.string.cancel)
setOnClickListener { setOnClickListener {
dismiss() dismiss()
} }
@ -136,7 +136,7 @@ class ScheduleMessageDialog(
).apply { ).apply {
show() show()
getButton(AlertDialog.BUTTON_NEGATIVE).apply { getButton(AlertDialog.BUTTON_NEGATIVE).apply {
text = activity.getString(com.simplemobiletools.commons.R.string.cancel) text = activity.getString(org.fossify.commons.R.string.cancel)
setOnClickListener { setOnClickListener {
dismiss() dismiss()
} }

View file

@ -1,9 +1,9 @@
package com.simplemobiletools.smsmessenger.dialogs package org.fossify.smsmessenger.dialogs
import com.simplemobiletools.commons.activities.BaseSimpleActivity import org.fossify.commons.activities.BaseSimpleActivity
import com.simplemobiletools.commons.extensions.getAlertDialogBuilder import org.fossify.commons.extensions.getAlertDialogBuilder
import com.simplemobiletools.commons.extensions.setupDialogStuff import org.fossify.commons.extensions.setupDialogStuff
import com.simplemobiletools.smsmessenger.databinding.DialogSelectTextBinding import org.fossify.smsmessenger.databinding.DialogSelectTextBinding
// helper dialog for selecting just a part of a message, not copying the whole into clipboard // helper dialog for selecting just a part of a message, not copying the whole into clipboard
class SelectTextDialog(val activity: BaseSimpleActivity, val text: String) { class SelectTextDialog(val activity: BaseSimpleActivity, val text: String) {
@ -13,7 +13,7 @@ class SelectTextDialog(val activity: BaseSimpleActivity, val text: String) {
} }
activity.getAlertDialogBuilder() activity.getAlertDialogBuilder()
.setPositiveButton(com.simplemobiletools.commons.R.string.ok) { _, _ -> { } } .setPositiveButton(org.fossify.commons.R.string.ok) { _, _ -> { } }
.apply { .apply {
activity.setupDialogStuff(binding.root, this) activity.setupDialogStuff(binding.root, this)
} }

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.app.Activity import android.app.Activity
import android.content.ActivityNotFoundException import android.content.ActivityNotFoundException
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
import android.provider.ContactsContract import android.provider.ContactsContract
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.CONTACT_ID import org.fossify.commons.helpers.CONTACT_ID
import com.simplemobiletools.commons.helpers.IS_PRIVATE import org.fossify.commons.helpers.IS_PRIVATE
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import java.util.Locale import java.util.Locale
fun Activity.dialNumber(phoneNumber: String, callback: (() -> Unit)? = null) { fun Activity.dialNumber(phoneNumber: String, callback: (() -> Unit)? = null) {
@ -22,7 +22,7 @@ fun Activity.dialNumber(phoneNumber: String, callback: (() -> Unit)? = null) {
startActivity(this) startActivity(this)
callback?.invoke() callback?.invoke()
} catch (e: ActivityNotFoundException) { } catch (e: ActivityNotFoundException) {
toast(com.simplemobiletools.commons.R.string.no_app_found) toast(org.fossify.commons.R.string.no_app_found)
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e) showErrorToast(e)
} }
@ -43,7 +43,7 @@ fun Activity.launchViewIntent(uri: Uri, mimetype: String, filename: String) {
if (newMimetype.isNotEmpty() && mimetype != newMimetype) { if (newMimetype.isNotEmpty() && mimetype != newMimetype) {
launchViewIntent(uri, newMimetype, filename) launchViewIntent(uri, newMimetype, filename)
} else { } else {
toast(com.simplemobiletools.commons.R.string.no_app_found) toast(org.fossify.commons.R.string.no_app_found)
} }
} catch (e: Exception) { } catch (e: Exception) {
showErrorToast(e) showErrorToast(e)

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.graphics.Bitmap import android.graphics.Bitmap

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.content.ContentValues import android.content.ContentValues

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Application import android.app.Application
@ -20,23 +20,23 @@ import android.text.TextUtils
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.bumptech.glide.load.engine.DiskCacheStrategy import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.request.RequestOptions import com.bumptech.glide.request.RequestOptions
import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.commons.models.PhoneNumber
import com.simplemobiletools.commons.models.SimpleContact
import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.databases.MessagesDatabase
import com.simplemobiletools.smsmessenger.helpers.*
import com.simplemobiletools.smsmessenger.helpers.AttachmentUtils.parseAttachmentNames
import com.simplemobiletools.smsmessenger.interfaces.AttachmentsDao
import com.simplemobiletools.smsmessenger.interfaces.ConversationsDao
import com.simplemobiletools.smsmessenger.interfaces.MessageAttachmentsDao
import com.simplemobiletools.smsmessenger.interfaces.MessagesDao
import com.simplemobiletools.smsmessenger.messaging.MessagingUtils
import com.simplemobiletools.smsmessenger.messaging.MessagingUtils.Companion.ADDRESS_SEPARATOR
import com.simplemobiletools.smsmessenger.messaging.SmsSender
import com.simplemobiletools.smsmessenger.models.*
import me.leolin.shortcutbadger.ShortcutBadger import me.leolin.shortcutbadger.ShortcutBadger
import org.fossify.commons.extensions.*
import org.fossify.commons.helpers.*
import org.fossify.commons.models.PhoneNumber
import org.fossify.commons.models.SimpleContact
import org.fossify.smsmessenger.R
import org.fossify.smsmessenger.databases.MessagesDatabase
import org.fossify.smsmessenger.helpers.*
import org.fossify.smsmessenger.helpers.AttachmentUtils.parseAttachmentNames
import org.fossify.smsmessenger.interfaces.AttachmentsDao
import org.fossify.smsmessenger.interfaces.ConversationsDao
import org.fossify.smsmessenger.interfaces.MessageAttachmentsDao
import org.fossify.smsmessenger.interfaces.MessagesDao
import org.fossify.smsmessenger.messaging.MessagingUtils
import org.fossify.smsmessenger.messaging.MessagingUtils.Companion.ADDRESS_SEPARATOR
import org.fossify.smsmessenger.messaging.SmsSender
import org.fossify.smsmessenger.models.*
import java.io.FileNotFoundException import java.io.FileNotFoundException
val Context.config: Config get() = Config.newInstance(applicationContext) val Context.config: Config get() = Config.newInstance(applicationContext)
@ -666,7 +666,7 @@ fun Context.removeAllArchivedConversations(callback: (() -> Unit)? = null) {
toast(R.string.archive_emptied_successfully) toast(R.string.archive_emptied_successfully)
callback?.invoke() callback?.invoke()
} catch (e: Exception) { } catch (e: Exception) {
toast(com.simplemobiletools.commons.R.string.unknown_error_occurred) toast(org.fossify.commons.R.string.unknown_error_occurred)
} }
} }
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.database.Cursor import android.database.Cursor
import com.google.gson.JsonNull import com.google.gson.JsonNull

View file

@ -1,7 +1,7 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.text.format.DateFormat import android.text.format.DateFormat
import java.util.* import java.util.Date
fun Date.format(pattern: String): String { fun Date.format(pattern: String): String {
return DateFormat.format(pattern, this).toString() return DateFormat.format(pattern, this).toString()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import kotlin.math.roundToInt import kotlin.math.roundToInt

View file

@ -1,7 +1,7 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.text.TextUtils import android.text.TextUtils
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
fun ArrayList<SimpleContact>.getThreadTitle(): String = TextUtils.join(", ", map { it.name }.toTypedArray()).orEmpty() fun ArrayList<SimpleContact>.getThreadTitle(): String = TextUtils.join(", ", map { it.name }.toTypedArray()).orEmpty()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
fun String.getExtensionFromMimeType(): String { fun String.getExtensionFromMimeType(): String {
return when (lowercase()) { return when (lowercase()) {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions package org.fossify.smsmessenger.extensions
import android.animation.ObjectAnimator import android.animation.ObjectAnimator
import android.view.View import android.view.View

View file

@ -0,0 +1,9 @@
package org.fossify.smsmessenger.extensions.gson
import com.google.gson.Gson
import com.google.gson.GsonBuilder
import com.google.gson.reflect.TypeToken
private val gsonBuilder = GsonBuilder().registerTypeAdapter(object : TypeToken<Map<String, Any>>() {}.type, MapDeserializerDoubleAsIntFix())
val gson: Gson = gsonBuilder.create()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions.gson package org.fossify.smsmessenger.extensions.gson
import com.google.gson.* import com.google.gson.*
import java.math.BigDecimal import java.math.BigDecimal

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions.gson package org.fossify.smsmessenger.extensions.gson
import com.google.gson.JsonArray import com.google.gson.JsonArray
import com.google.gson.JsonElement import com.google.gson.JsonElement

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.extensions.gson package org.fossify.smsmessenger.extensions.gson
import com.google.gson.JsonDeserializationContext import com.google.gson.JsonDeserializationContext
import com.google.gson.JsonDeserializer import com.google.gson.JsonDeserializer
@ -25,6 +25,7 @@ class MapDeserializerDoubleAsIntFix : JsonDeserializer<Map<String, Any>?> {
} }
return list return list
} }
element.isJsonObject -> { element.isJsonObject -> {
val map: MutableMap<String, Any?> = LinkedTreeMap() val map: MutableMap<String, Any?> = LinkedTreeMap()
val obj = element.asJsonObject val obj = element.asJsonObject
@ -34,15 +35,18 @@ class MapDeserializerDoubleAsIntFix : JsonDeserializer<Map<String, Any>?> {
} }
return map return map
} }
element.isJsonPrimitive -> { element.isJsonPrimitive -> {
val prim = element.asJsonPrimitive val prim = element.asJsonPrimitive
when { when {
prim.isBoolean -> { prim.isBoolean -> {
return prim.asBoolean return prim.asBoolean
} }
prim.isString -> { prim.isString -> {
return prim.asString return prim.asString
} }
prim.isNumber -> { prim.isNumber -> {
val num = prim.asNumber val num = prim.asNumber
// here you can handle double int/long values // here you can handle double int/long values

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.app.Activity import android.app.Activity
import android.net.Uri import android.net.Uri
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentDocumentBinding import org.fossify.smsmessenger.databinding.ItemAttachmentDocumentBinding
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentDocumentPreviewBinding import org.fossify.smsmessenger.databinding.ItemAttachmentDocumentPreviewBinding
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentVcardBinding import org.fossify.smsmessenger.databinding.ItemAttachmentVcardBinding
import com.simplemobiletools.smsmessenger.databinding.ItemAttachmentVcardPreviewBinding import org.fossify.smsmessenger.databinding.ItemAttachmentVcardPreviewBinding
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
fun ItemAttachmentDocumentPreviewBinding.setupDocumentPreview( fun ItemAttachmentDocumentPreviewBinding.setupDocumentPreview(
uri: Uri, uri: Uri,
@ -124,7 +124,7 @@ fun ItemAttachmentVcardBinding.setupVCardPreview(
activity.runOnUiThread { activity.runOnUiThread {
if (vCards.isEmpty()) { if (vCards.isEmpty()) {
vcardTitle.beVisible() vcardTitle.beVisible()
vcardTitle.text = context.getString(com.simplemobiletools.commons.R.string.unknown_error_occurred) vcardTitle.text = context.getString(org.fossify.commons.R.string.unknown_error_occurred)
return@runOnUiThread return@runOnUiThread
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.util.Xml import android.util.Xml
import org.xmlpull.v1.XmlPullParser import org.xmlpull.v1.XmlPullParser

View file

@ -1,9 +1,9 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.content.Context import android.content.Context
import com.simplemobiletools.commons.helpers.BaseConfig import org.fossify.commons.helpers.BaseConfig
import com.simplemobiletools.smsmessenger.extensions.getDefaultKeyboardHeight import org.fossify.smsmessenger.extensions.getDefaultKeyboardHeight
import com.simplemobiletools.smsmessenger.models.Conversation import org.fossify.smsmessenger.models.Conversation
class Config(context: Context) : BaseConfig(context) { class Config(context: Context) : BaseConfig(context) {
companion object { companion object {

View file

@ -1,6 +1,6 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import com.simplemobiletools.smsmessenger.models.Events import org.fossify.smsmessenger.models.Events
import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.EventBus
import org.joda.time.DateTime import org.joda.time.DateTime
import org.joda.time.DateTimeZone import org.joda.time.DateTimeZone
@ -45,7 +45,7 @@ const val LAST_RECYCLE_BIN_CHECK = "last_recycle_bin_check"
const val IS_RECYCLE_BIN = "is_recycle_bin" const val IS_RECYCLE_BIN = "is_recycle_bin"
const val IS_ARCHIVE_AVAILABLE = "is_archive_available" const val IS_ARCHIVE_AVAILABLE = "is_archive_available"
private const val PATH = "com.simplemobiletools.smsmessenger.action." private const val PATH = "org.fossify.smsmessenger.action."
const val MARK_AS_READ = PATH + "mark_as_read" const val MARK_AS_READ = PATH + "mark_as_read"
const val REPLY = PATH + "reply" const val REPLY = PATH + "reply"

View file

@ -1,11 +1,11 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import androidx.room.TypeConverter import androidx.room.TypeConverter
import com.google.gson.Gson import com.google.gson.Gson
import com.google.gson.reflect.TypeToken import com.google.gson.reflect.TypeToken
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
import com.simplemobiletools.smsmessenger.models.Attachment import org.fossify.smsmessenger.models.Attachment
import com.simplemobiletools.smsmessenger.models.MessageAttachment import org.fossify.smsmessenger.models.MessageAttachment
class Converters { class Converters {
private val gson = Gson() private val gson = Gson()

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.content.Context import android.content.Context
import android.graphics.Bitmap import android.graphics.Bitmap
@ -6,13 +6,13 @@ import android.graphics.BitmapFactory
import android.graphics.Matrix import android.graphics.Matrix
import android.media.ExifInterface import android.media.ExifInterface
import android.net.Uri import android.net.Uri
import com.simplemobiletools.commons.extensions.getCompressionFormat import org.fossify.commons.extensions.getCompressionFormat
import com.simplemobiletools.commons.extensions.getMyFileUri import org.fossify.commons.extensions.getMyFileUri
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.extensions.extension import org.fossify.smsmessenger.extensions.extension
import com.simplemobiletools.smsmessenger.extensions.getExtensionFromMimeType import org.fossify.smsmessenger.extensions.getExtensionFromMimeType
import com.simplemobiletools.smsmessenger.extensions.getFileSizeFromUri import org.fossify.smsmessenger.extensions.getFileSizeFromUri
import com.simplemobiletools.smsmessenger.extensions.isImageMimeType import org.fossify.smsmessenger.extensions.isImageMimeType
import java.io.File import java.io.File
import java.io.FileOutputStream import java.io.FileOutputStream
import kotlin.math.roundToInt import kotlin.math.roundToInt

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.net.Uri import android.net.Uri
import android.util.Xml import android.util.Xml
import com.simplemobiletools.commons.extensions.showErrorToast
import com.simplemobiletools.commons.extensions.toast
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.activities.SimpleActivity
import com.simplemobiletools.smsmessenger.dialogs.ImportMessagesDialog
import com.simplemobiletools.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.models.*
import kotlinx.serialization.SerializationException import kotlinx.serialization.SerializationException
import kotlinx.serialization.json.Json import kotlinx.serialization.json.Json
import org.fossify.commons.extensions.showErrorToast
import org.fossify.commons.extensions.toast
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.smsmessenger.activities.SimpleActivity
import org.fossify.smsmessenger.dialogs.ImportMessagesDialog
import org.fossify.smsmessenger.extensions.config
import org.fossify.smsmessenger.models.*
import org.xmlpull.v1.XmlPullParser import org.xmlpull.v1.XmlPullParser
import java.io.InputStream import java.io.InputStream
@ -27,7 +27,7 @@ class MessagesImporter(private val activity: SimpleActivity) {
val fileType = activity.contentResolver.getType(uri).orEmpty() val fileType = activity.contentResolver.getType(uri).orEmpty()
val isXml = isXmlMimeType(fileType) || (uri.path?.endsWith("txt") == true && isFileXml(uri)) val isXml = isXmlMimeType(fileType) || (uri.path?.endsWith("txt") == true && isFileXml(uri))
if (isXml) { if (isXml) {
activity.toast(com.simplemobiletools.commons.R.string.importing) activity.toast(org.fossify.commons.R.string.importing)
getInputStreamFromUri(uri)!!.importXml() getInputStreamFromUri(uri)!!.importXml()
} else { } else {
importJson(uri) importJson(uri)
@ -45,14 +45,14 @@ class MessagesImporter(private val activity: SimpleActivity) {
val deserializedList = Json.decodeFromString<List<MessagesBackup>>(jsonString) val deserializedList = Json.decodeFromString<List<MessagesBackup>>(jsonString)
if (deserializedList.isEmpty()) { if (deserializedList.isEmpty()) {
activity.toast(com.simplemobiletools.commons.R.string.no_entries_for_importing) activity.toast(org.fossify.commons.R.string.no_entries_for_importing)
return return
} }
ImportMessagesDialog(activity, deserializedList) ImportMessagesDialog(activity, deserializedList)
} catch (e: SerializationException) { } catch (e: SerializationException) {
activity.toast(com.simplemobiletools.commons.R.string.invalid_file_format) activity.toast(org.fossify.commons.R.string.invalid_file_format)
} catch (e: IllegalArgumentException) { } catch (e: IllegalArgumentException) {
activity.toast(com.simplemobiletools.commons.R.string.invalid_file_format) activity.toast(org.fossify.commons.R.string.invalid_file_format)
} catch (e: Exception) { } catch (e: Exception) {
activity.showErrorToast(e) activity.showErrorToast(e)
} }
@ -132,12 +132,12 @@ class MessagesImporter(private val activity: SimpleActivity) {
refreshMessages() refreshMessages()
} }
when { when {
messagesFailed > 0 && messagesImported > 0 -> activity.toast(com.simplemobiletools.commons.R.string.importing_some_entries_failed) messagesFailed > 0 && messagesImported > 0 -> activity.toast(org.fossify.commons.R.string.importing_some_entries_failed)
messagesFailed > 0 -> activity.toast(com.simplemobiletools.commons.R.string.importing_failed) messagesFailed > 0 -> activity.toast(org.fossify.commons.R.string.importing_failed)
else -> activity.toast(com.simplemobiletools.commons.R.string.importing_successful) else -> activity.toast(org.fossify.commons.R.string.importing_successful)
} }
} catch (_: Exception) { } catch (_: Exception) {
activity.toast(com.simplemobiletools.commons.R.string.invalid_file_format) activity.toast(org.fossify.commons.R.string.invalid_file_format)
} }
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Context import android.content.Context
@ -6,11 +6,11 @@ import android.net.Uri
import android.provider.Telephony.Mms import android.provider.Telephony.Mms
import android.provider.Telephony.Sms import android.provider.Telephony.Sms
import android.util.Base64 import android.util.Base64
import com.simplemobiletools.commons.extensions.* import org.fossify.commons.extensions.*
import com.simplemobiletools.commons.helpers.isQPlus import org.fossify.commons.helpers.isQPlus
import com.simplemobiletools.commons.helpers.isRPlus import org.fossify.commons.helpers.isRPlus
import com.simplemobiletools.smsmessenger.extensions.getConversationIds import org.fossify.smsmessenger.extensions.getConversationIds
import com.simplemobiletools.smsmessenger.models.* import org.fossify.smsmessenger.models.*
import java.io.IOException import java.io.IOException
import java.io.InputStream import java.io.InputStream

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Context import android.content.Context
@ -8,13 +8,13 @@ import android.provider.Telephony.Sms
import android.util.Base64 import android.util.Base64
import com.google.android.mms.pdu_alt.PduHeaders import com.google.android.mms.pdu_alt.PduHeaders
import com.klinker.android.send_message.Utils import com.klinker.android.send_message.Utils
import com.simplemobiletools.commons.extensions.getLongValue import org.fossify.commons.extensions.getLongValue
import com.simplemobiletools.commons.extensions.queryCursor import org.fossify.commons.extensions.queryCursor
import com.simplemobiletools.commons.helpers.isRPlus import org.fossify.commons.helpers.isRPlus
import com.simplemobiletools.smsmessenger.models.MmsAddress import org.fossify.smsmessenger.models.MmsAddress
import com.simplemobiletools.smsmessenger.models.MmsBackup import org.fossify.smsmessenger.models.MmsBackup
import com.simplemobiletools.smsmessenger.models.MmsPart import org.fossify.smsmessenger.models.MmsPart
import com.simplemobiletools.smsmessenger.models.SmsBackup import org.fossify.smsmessenger.models.SmsBackup
class MessagesWriter(private val context: Context) { class MessagesWriter(private val context: Context) {
private val INVALID_ID = -1L private val INVALID_ID = -1L

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Notification import android.app.Notification
@ -14,18 +14,18 @@ import android.media.RingtoneManager
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import androidx.core.app.Person import androidx.core.app.Person
import androidx.core.app.RemoteInput import androidx.core.app.RemoteInput
import com.simplemobiletools.commons.extensions.getProperPrimaryColor import org.fossify.commons.extensions.getProperPrimaryColor
import com.simplemobiletools.commons.extensions.notificationManager import org.fossify.commons.extensions.notificationManager
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.isNougatPlus import org.fossify.commons.helpers.isNougatPlus
import com.simplemobiletools.commons.helpers.isOreoPlus import org.fossify.commons.helpers.isOreoPlus
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.activities.ThreadActivity import org.fossify.smsmessenger.activities.ThreadActivity
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.messaging.isShortCodeWithLetters import org.fossify.smsmessenger.messaging.isShortCodeWithLetters
import com.simplemobiletools.smsmessenger.receivers.DeleteSmsReceiver import org.fossify.smsmessenger.receivers.DeleteSmsReceiver
import com.simplemobiletools.smsmessenger.receivers.DirectReplyReceiver import org.fossify.smsmessenger.receivers.DirectReplyReceiver
import com.simplemobiletools.smsmessenger.receivers.MarkAsReadReceiver import org.fossify.smsmessenger.receivers.MarkAsReadReceiver
class NotificationHelper(private val context: Context) { class NotificationHelper(private val context: Context) {
@ -128,12 +128,12 @@ class NotificationHelper(private val context: Context) {
builder.addAction(replyAction) builder.addAction(replyAction)
} }
builder.addAction(com.simplemobiletools.commons.R.drawable.ic_check_vector, context.getString(R.string.mark_as_read), markAsReadPendingIntent) builder.addAction(org.fossify.commons.R.drawable.ic_check_vector, context.getString(R.string.mark_as_read), markAsReadPendingIntent)
.setChannelId(NOTIFICATION_CHANNEL) .setChannelId(NOTIFICATION_CHANNEL)
if (isNoReplySms) { if (isNoReplySms) {
builder.addAction( builder.addAction(
com.simplemobiletools.commons.R.drawable.ic_delete_vector, org.fossify.commons.R.drawable.ic_delete_vector,
context.getString(com.simplemobiletools.commons.R.string.delete), context.getString(org.fossify.commons.R.string.delete),
deleteSmsPendingIntent deleteSmsPendingIntent
).setChannelId(NOTIFICATION_CHANNEL) ).setChannelId(NOTIFICATION_CHANNEL)
} }

View file

@ -1,10 +1,10 @@
package com.simplemobiletools.smsmessenger.helpers package org.fossify.smsmessenger.helpers
import android.content.Context import android.content.Context
import android.net.Uri import android.net.Uri
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import ezvcard.Ezvcard import ezvcard.Ezvcard
import ezvcard.VCard import ezvcard.VCard
import org.fossify.commons.helpers.ensureBackgroundThread
fun parseVCardFromUri(context: Context, uri: Uri, callback: (vCards: List<VCard>) -> Unit) { fun parseVCardFromUri(context: Context, uri: Uri, callback: (vCards: List<VCard>) -> Unit) {
ensureBackgroundThread { ensureBackgroundThread {

View file

@ -1,8 +1,8 @@
package com.simplemobiletools.smsmessenger.interfaces package org.fossify.smsmessenger.interfaces
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Query import androidx.room.Query
import com.simplemobiletools.smsmessenger.models.Attachment import org.fossify.smsmessenger.models.Attachment
@Dao @Dao
interface AttachmentsDao { interface AttachmentsDao {

View file

@ -1,8 +1,11 @@
package com.simplemobiletools.smsmessenger.interfaces package org.fossify.smsmessenger.interfaces
import androidx.room.* import androidx.room.Dao
import com.simplemobiletools.smsmessenger.models.Conversation import androidx.room.Insert
import com.simplemobiletools.smsmessenger.models.ConversationWithSnippetOverride import androidx.room.OnConflictStrategy
import androidx.room.Query
import org.fossify.smsmessenger.models.Conversation
import org.fossify.smsmessenger.models.ConversationWithSnippetOverride
@Dao @Dao
interface ConversationsDao { interface ConversationsDao {

View file

@ -1,8 +1,8 @@
package com.simplemobiletools.smsmessenger.interfaces package org.fossify.smsmessenger.interfaces
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Query import androidx.room.Query
import com.simplemobiletools.smsmessenger.models.MessageAttachment import org.fossify.smsmessenger.models.MessageAttachment
@Dao @Dao
interface MessageAttachmentsDao { interface MessageAttachmentsDao {

View file

@ -1,8 +1,8 @@
package com.simplemobiletools.smsmessenger.interfaces package org.fossify.smsmessenger.interfaces
import androidx.room.* import androidx.room.*
import com.simplemobiletools.smsmessenger.models.RecycleBinMessage import org.fossify.smsmessenger.models.Message
import com.simplemobiletools.smsmessenger.models.Message import org.fossify.smsmessenger.models.RecycleBinMessage
@Dao @Dao
interface MessagesDao { interface MessagesDao {

View file

@ -1,18 +1,18 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
import android.content.Context import android.content.Context
import android.telephony.SmsMessage import android.telephony.SmsMessage
import android.widget.Toast.LENGTH_LONG import android.widget.Toast.LENGTH_LONG
import com.klinker.android.send_message.Settings import com.klinker.android.send_message.Settings
import com.simplemobiletools.commons.extensions.showErrorToast import org.fossify.commons.extensions.showErrorToast
import com.simplemobiletools.commons.extensions.toast import org.fossify.commons.extensions.toast
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.extensions.config import org.fossify.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.extensions.messagingUtils import org.fossify.smsmessenger.extensions.messagingUtils
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.EMPTY_DESTINATION_ADDRESS import org.fossify.smsmessenger.messaging.SmsException.Companion.EMPTY_DESTINATION_ADDRESS
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.ERROR_PERSISTING_MESSAGE import org.fossify.smsmessenger.messaging.SmsException.Companion.ERROR_PERSISTING_MESSAGE
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.ERROR_SENDING_MESSAGE import org.fossify.smsmessenger.messaging.SmsException.Companion.ERROR_SENDING_MESSAGE
import com.simplemobiletools.smsmessenger.models.Attachment import org.fossify.smsmessenger.models.Attachment
@Deprecated("TODO: Move/rewrite messaging config code into the app.") @Deprecated("TODO: Move/rewrite messaging config code into the app.")
fun Context.getSendMessageSettings(): Settings { fun Context.getSendMessageSettings(): Settings {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Activity import android.app.Activity
@ -13,16 +13,16 @@ import android.widget.Toast
import com.klinker.android.send_message.Message import com.klinker.android.send_message.Message
import com.klinker.android.send_message.Settings import com.klinker.android.send_message.Settings
import com.klinker.android.send_message.Transaction import com.klinker.android.send_message.Transaction
import com.simplemobiletools.commons.extensions.showErrorToast import org.fossify.commons.extensions.showErrorToast
import com.simplemobiletools.commons.extensions.toast import org.fossify.commons.extensions.toast
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.extensions.getThreadId import org.fossify.smsmessenger.extensions.getThreadId
import com.simplemobiletools.smsmessenger.extensions.isPlainTextMimeType import org.fossify.smsmessenger.extensions.isPlainTextMimeType
import com.simplemobiletools.smsmessenger.extensions.smsSender import org.fossify.smsmessenger.extensions.smsSender
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.ERROR_PERSISTING_MESSAGE import org.fossify.smsmessenger.messaging.SmsException.Companion.ERROR_PERSISTING_MESSAGE
import com.simplemobiletools.smsmessenger.models.Attachment import org.fossify.smsmessenger.models.Attachment
import com.simplemobiletools.smsmessenger.receivers.MmsSentReceiver import org.fossify.smsmessenger.receivers.MmsSentReceiver
import com.simplemobiletools.smsmessenger.receivers.SendStatusReceiver import org.fossify.smsmessenger.receivers.SendStatusReceiver
class MessagingUtils(val context: Context) { class MessagingUtils(val context: Context) {
@ -166,7 +166,7 @@ class MessagingUtils(val context: Context) {
} catch (e: Exception) { } catch (e: Exception) {
context.showErrorToast(e) context.showErrorToast(e)
} catch (e: Error) { } catch (e: Error) {
context.showErrorToast(e.localizedMessage ?: context.getString(com.simplemobiletools.commons.R.string.unknown_error_occurred)) context.showErrorToast(e.localizedMessage ?: context.getString(org.fossify.commons.R.string.unknown_error_occurred))
} }
} }

View file

@ -1,14 +1,14 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
import android.app.AlarmManager import android.app.AlarmManager
import android.app.PendingIntent import android.app.PendingIntent
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import androidx.core.app.AlarmManagerCompat import androidx.core.app.AlarmManagerCompat
import com.simplemobiletools.smsmessenger.helpers.SCHEDULED_MESSAGE_ID import org.fossify.smsmessenger.helpers.SCHEDULED_MESSAGE_ID
import com.simplemobiletools.smsmessenger.helpers.THREAD_ID import org.fossify.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.models.Message import org.fossify.smsmessenger.models.Message
import com.simplemobiletools.smsmessenger.receivers.ScheduledMessageReceiver import org.fossify.smsmessenger.receivers.ScheduledMessageReceiver
/** /**
* All things related to scheduled messages are here. * All things related to scheduled messages are here.

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
class SmsException(val errorCode: Int, val exception: Exception? = null) : Exception() { class SmsException(val errorCode: Int, val exception: Exception? = null) : Exception() {
companion object { companion object {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
import android.telephony.SmsManager import android.telephony.SmsManager
import com.klinker.android.send_message.Settings import com.klinker.android.send_message.Settings

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.messaging package org.fossify.smsmessenger.messaging
import android.app.Application import android.app.Application
import android.app.PendingIntent import android.app.PendingIntent
import android.content.Intent import android.content.Intent
import android.net.Uri import android.net.Uri
import android.telephony.PhoneNumberUtils import android.telephony.PhoneNumberUtils
import com.simplemobiletools.commons.helpers.isSPlus import org.fossify.commons.helpers.isSPlus
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.EMPTY_DESTINATION_ADDRESS import org.fossify.smsmessenger.messaging.SmsException.Companion.EMPTY_DESTINATION_ADDRESS
import com.simplemobiletools.smsmessenger.messaging.SmsException.Companion.ERROR_SENDING_MESSAGE import org.fossify.smsmessenger.messaging.SmsException.Companion.ERROR_SENDING_MESSAGE
import com.simplemobiletools.smsmessenger.receivers.SendStatusReceiver import org.fossify.smsmessenger.receivers.SendStatusReceiver
import com.simplemobiletools.smsmessenger.receivers.SmsStatusDeliveredReceiver import org.fossify.smsmessenger.receivers.SmsStatusDeliveredReceiver
import com.simplemobiletools.smsmessenger.receivers.SmsStatusSentReceiver import org.fossify.smsmessenger.receivers.SmsStatusSentReceiver
/** Class that sends chat message via SMS. */ /** Class that sends chat message via SMS. */
class SmsSender(val app: Application) { class SmsSender(val app: Application) {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.net.Uri import android.net.Uri
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
@ -14,7 +14,8 @@ data class Attachment(
@ColumnInfo(name = "mimetype") var mimetype: String, @ColumnInfo(name = "mimetype") var mimetype: String,
@ColumnInfo(name = "width") var width: Int, @ColumnInfo(name = "width") var width: Int,
@ColumnInfo(name = "height") var height: Int, @ColumnInfo(name = "height") var height: Int,
@ColumnInfo(name = "filename") var filename: String) { @ColumnInfo(name = "filename") var filename: String
) {
fun getUri() = Uri.parse(uriString) fun getUri() = Uri.parse(uriString)
} }

View file

@ -1,12 +1,12 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.net.Uri import android.net.Uri
import com.simplemobiletools.smsmessenger.extensions.isImageMimeType import org.fossify.smsmessenger.extensions.isImageMimeType
import com.simplemobiletools.smsmessenger.extensions.isVCardMimeType import org.fossify.smsmessenger.extensions.isVCardMimeType
import com.simplemobiletools.smsmessenger.extensions.isVideoMimeType import org.fossify.smsmessenger.extensions.isVideoMimeType
import com.simplemobiletools.smsmessenger.helpers.ATTACHMENT_DOCUMENT import org.fossify.smsmessenger.helpers.ATTACHMENT_DOCUMENT
import com.simplemobiletools.smsmessenger.helpers.ATTACHMENT_MEDIA import org.fossify.smsmessenger.helpers.ATTACHMENT_MEDIA
import com.simplemobiletools.smsmessenger.helpers.ATTACHMENT_VCARD import org.fossify.smsmessenger.helpers.ATTACHMENT_VCARD
data class AttachmentSelection( data class AttachmentSelection(
val id: String, val id: String,

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import kotlinx.serialization.SerialName import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Embedded import androidx.room.Embedded

View file

@ -0,0 +1,5 @@
package org.fossify.smsmessenger.models
class Events {
class RefreshMessages
}

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import com.google.gson.annotations.SerializedName import com.google.gson.annotations.SerializedName

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
enum class ImportResult { enum class ImportResult {
IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL, IMPORT_NOTHING_NEW IMPORT_FAIL, IMPORT_OK, IMPORT_PARTIAL, IMPORT_NOTHING_NEW

View file

@ -1,10 +1,10 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.provider.Telephony import android.provider.Telephony
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity
import androidx.room.PrimaryKey import androidx.room.PrimaryKey
import com.simplemobiletools.commons.models.SimpleContact import org.fossify.commons.models.SimpleContact
@Entity(tableName = "messages") @Entity(tableName = "messages")
data class Message( data class Message(

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity
@ -8,4 +8,5 @@ import androidx.room.PrimaryKey
data class MessageAttachment( data class MessageAttachment(
@PrimaryKey val id: Long, @PrimaryKey val id: Long,
@ColumnInfo(name = "text") var text: String, @ColumnInfo(name = "text") var text: String,
@ColumnInfo(name = "attachments") var attachments: ArrayList<Attachment>) @ColumnInfo(name = "attachments") var attachments: ArrayList<Attachment>
)

View file

@ -1,13 +1,16 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import kotlinx.serialization.DeserializationStrategy import kotlinx.serialization.DeserializationStrategy
import kotlinx.serialization.SerialName import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
import kotlinx.serialization.SerializationException import kotlinx.serialization.SerializationException
import kotlinx.serialization.json.* import kotlinx.serialization.json.JsonContentPolymorphicSerializer
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.jsonObject
import kotlinx.serialization.json.jsonPrimitive
@Serializable(with = BackupSerializer::class) @Serializable(with = BackupSerializer::class)
sealed class MessagesBackup() { sealed class MessagesBackup {
@SerialName("backupType") @SerialName("backupType")
abstract val backupType: BackupType abstract val backupType: BackupType
} }

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.content.ContentValues import android.content.ContentValues
import android.provider.Telephony import android.provider.Telephony

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.content.ContentValues import android.content.ContentValues
import android.provider.Telephony import android.provider.Telephony
@ -48,7 +48,7 @@ data class MmsBackup(
val parts: List<MmsPart>, val parts: List<MmsPart>,
override val backupType: BackupType = BackupType.MMS, override val backupType: BackupType = BackupType.MMS,
): MessagesBackup() { ) : MessagesBackup() {
fun toContentValues(): ContentValues { fun toContentValues(): ContentValues {
return contentValuesOf( return contentValuesOf(

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.content.ContentValues import android.content.ContentValues
import android.provider.Telephony import android.provider.Telephony

View file

@ -1,3 +1,3 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
data class NamePhoto(val name: String, val photoUri: String?) data class NamePhoto(val name: String, val photoUri: String?)

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity

View file

@ -1,3 +1,3 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
data class SIMCard(val id: Int, val subscriptionId: Int, val label: String) data class SIMCard(val id: Int, val subscriptionId: Int, val label: String)

View file

@ -1,3 +1,3 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
data class SearchResult(val messageId: Long, val title: String, val snippet: String, val date: String, val threadId: Long, var photoUri: String) data class SearchResult(val messageId: Long, val title: String, val snippet: String, val date: String, val threadId: Long, var photoUri: String)

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.content.ContentValues import android.content.ContentValues
@ -33,7 +33,7 @@ data class SmsBackup(
val serviceCenter: String?, val serviceCenter: String?,
override val backupType: BackupType = BackupType.SMS, override val backupType: BackupType = BackupType.SMS,
): MessagesBackup() { ) : MessagesBackup() {
fun toContentValues(): ContentValues { fun toContentValues(): ContentValues {
return contentValuesOf( return contentValuesOf(

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
/** /**
* Thread item representations for the main thread recyclerview. [Message] is also a [ThreadItem] * Thread item representations for the main thread recyclerview. [Message] is also a [ThreadItem]

View file

@ -1,12 +1,12 @@
package com.simplemobiletools.smsmessenger.models package org.fossify.smsmessenger.models
import android.content.Context import android.content.Context
import com.simplemobiletools.commons.extensions.normalizePhoneNumber
import com.simplemobiletools.smsmessenger.extensions.config
import com.simplemobiletools.smsmessenger.extensions.format
import com.simplemobiletools.smsmessenger.helpers.parseNameFromVCard
import ezvcard.VCard import ezvcard.VCard
import ezvcard.property.* import ezvcard.property.*
import org.fossify.commons.extensions.normalizePhoneNumber
import org.fossify.smsmessenger.extensions.config
import org.fossify.smsmessenger.extensions.format
import org.fossify.smsmessenger.helpers.parseNameFromVCard
private val displayedPropertyClasses = arrayOf( private val displayedPropertyClasses = arrayOf(
Telephone::class.java, Email::class.java, Organization::class.java, Birthday::class.java, Anniversary::class.java, Note::class.java Telephone::class.java, Email::class.java, Organization::class.java, Birthday::class.java, Anniversary::class.java, Note::class.java
@ -37,9 +37,9 @@ data class VCardPropertyWrapper(val value: String, val type: String, val propert
private fun VCardProperty.getPropertyTypeString(context: Context): String { private fun VCardProperty.getPropertyTypeString(context: Context): String {
return when (parameters.type) { return when (parameters.type) {
CELL -> context.getString(com.simplemobiletools.commons.R.string.mobile) CELL -> context.getString(org.fossify.commons.R.string.mobile)
HOME -> context.getString(com.simplemobiletools.commons.R.string.home) HOME -> context.getString(org.fossify.commons.R.string.home)
WORK -> context.getString(com.simplemobiletools.commons.R.string.work) WORK -> context.getString(org.fossify.commons.R.string.work)
else -> "" else -> ""
} }
} }
@ -51,20 +51,23 @@ data class VCardPropertyWrapper(val value: String, val type: String, val propert
is Email -> VCardPropertyWrapper(value, getPropertyTypeString(context), property) is Email -> VCardPropertyWrapper(value, getPropertyTypeString(context), property)
is Organization -> VCardPropertyWrapper( is Organization -> VCardPropertyWrapper(
value = values.joinToString(), value = values.joinToString(),
type = context.getString(com.simplemobiletools.commons.R.string.work), type = context.getString(org.fossify.commons.R.string.work),
property = property property = property
) )
is Birthday -> VCardPropertyWrapper( is Birthday -> VCardPropertyWrapper(
value = date.format(context.config.dateFormat), value = date.format(context.config.dateFormat),
type = context.getString(com.simplemobiletools.commons.R.string.birthday), type = context.getString(org.fossify.commons.R.string.birthday),
property = property property = property
) )
is Anniversary -> VCardPropertyWrapper( is Anniversary -> VCardPropertyWrapper(
value = date.format(context.config.dateFormat), value = date.format(context.config.dateFormat),
type = context.getString(com.simplemobiletools.commons.R.string.anniversary), type = context.getString(org.fossify.commons.R.string.anniversary),
property = property property = property
) )
is Note -> VCardPropertyWrapper(value, context.getString(com.simplemobiletools.commons.R.string.notes), property)
is Note -> VCardPropertyWrapper(value, context.getString(org.fossify.commons.R.string.notes), property)
else -> VCardPropertyWrapper("", "", property) else -> VCardPropertyWrapper("", "", property)
} }
} }

View file

@ -0,0 +1,31 @@
package org.fossify.smsmessenger.receivers
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import org.fossify.commons.extensions.notificationManager
import org.fossify.commons.helpers.ensureBackgroundThread
import org.fossify.smsmessenger.extensions.conversationsDB
import org.fossify.smsmessenger.extensions.deleteMessage
import org.fossify.smsmessenger.extensions.updateLastConversationMessage
import org.fossify.smsmessenger.extensions.updateUnreadCountBadge
import org.fossify.smsmessenger.helpers.IS_MMS
import org.fossify.smsmessenger.helpers.MESSAGE_ID
import org.fossify.smsmessenger.helpers.THREAD_ID
import org.fossify.smsmessenger.helpers.refreshMessages
class DeleteSmsReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
val threadId = intent.getLongExtra(THREAD_ID, 0L)
val messageId = intent.getLongExtra(MESSAGE_ID, 0L)
val isMms = intent.getBooleanExtra(IS_MMS, false)
context.notificationManager.cancel(threadId.hashCode())
ensureBackgroundThread {
context.deleteMessage(messageId, isMms)
context.updateUnreadCountBadge(context.conversationsDB.getUnreadConversations())
context.updateLastConversationMessage(threadId)
refreshMessages()
}
}
}

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.receivers package org.fossify.smsmessenger.receivers
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.BroadcastReceiver import android.content.BroadcastReceiver
@ -7,14 +7,14 @@ import android.content.Intent
import android.os.Handler import android.os.Handler
import android.os.Looper import android.os.Looper
import androidx.core.app.RemoteInput import androidx.core.app.RemoteInput
import com.simplemobiletools.commons.extensions.showErrorToast import org.fossify.commons.extensions.showErrorToast
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import org.fossify.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.extensions.* import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.REPLY import org.fossify.smsmessenger.helpers.REPLY
import com.simplemobiletools.smsmessenger.helpers.THREAD_ID import org.fossify.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.helpers.THREAD_NUMBER import org.fossify.smsmessenger.helpers.THREAD_NUMBER
import com.simplemobiletools.smsmessenger.messaging.sendMessageCompat import org.fossify.smsmessenger.messaging.sendMessageCompat
class DirectReplyReceiver : BroadcastReceiver() { class DirectReplyReceiver : BroadcastReceiver() {
@SuppressLint("MissingPermission") @SuppressLint("MissingPermission")

View file

@ -1,16 +1,16 @@
package com.simplemobiletools.smsmessenger.receivers package org.fossify.smsmessenger.receivers
import android.content.BroadcastReceiver import android.content.BroadcastReceiver
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import com.simplemobiletools.commons.extensions.notificationManager import org.fossify.commons.extensions.notificationManager
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.extensions.conversationsDB import org.fossify.smsmessenger.extensions.conversationsDB
import com.simplemobiletools.smsmessenger.extensions.markThreadMessagesRead import org.fossify.smsmessenger.extensions.markThreadMessagesRead
import com.simplemobiletools.smsmessenger.extensions.updateUnreadCountBadge import org.fossify.smsmessenger.extensions.updateUnreadCountBadge
import com.simplemobiletools.smsmessenger.helpers.MARK_AS_READ import org.fossify.smsmessenger.helpers.MARK_AS_READ
import com.simplemobiletools.smsmessenger.helpers.THREAD_ID import org.fossify.smsmessenger.helpers.THREAD_ID
import com.simplemobiletools.smsmessenger.helpers.refreshMessages import org.fossify.smsmessenger.helpers.refreshMessages
class MarkAsReadReceiver : BroadcastReceiver() { class MarkAsReadReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) { override fun onReceive(context: Context, intent: Intent) {

View file

@ -1,4 +1,4 @@
package com.simplemobiletools.smsmessenger.receivers package org.fossify.smsmessenger.receivers
import android.content.Context import android.content.Context
import android.net.Uri import android.net.Uri
@ -6,18 +6,13 @@ import android.os.Handler
import android.os.Looper import android.os.Looper
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.klinker.android.send_message.MmsReceivedReceiver import com.klinker.android.send_message.MmsReceivedReceiver
import com.simplemobiletools.commons.extensions.isNumberBlocked import org.fossify.commons.extensions.isNumberBlocked
import com.simplemobiletools.commons.extensions.normalizePhoneNumber import org.fossify.commons.extensions.normalizePhoneNumber
import com.simplemobiletools.commons.extensions.showErrorToast import org.fossify.commons.extensions.showErrorToast
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import org.fossify.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.R import org.fossify.smsmessenger.R
import com.simplemobiletools.smsmessenger.extensions.conversationsDB import org.fossify.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.extensions.getConversations import org.fossify.smsmessenger.helpers.refreshMessages
import com.simplemobiletools.smsmessenger.extensions.getLatestMMS
import com.simplemobiletools.smsmessenger.extensions.insertOrUpdateConversation
import com.simplemobiletools.smsmessenger.extensions.showReceivedMessageNotification
import com.simplemobiletools.smsmessenger.extensions.updateUnreadCountBadge
import com.simplemobiletools.smsmessenger.helpers.refreshMessages
// more info at https://github.com/klinker41/android-smsmms // more info at https://github.com/klinker41/android-smsmms
class MmsReceiver : MmsReceivedReceiver() { class MmsReceiver : MmsReceivedReceiver() {

Some files were not shown because too many files have changed in this diff Show more