mirror of
https://github.com/SimpleMobileTools/Simple-Contacts.git
synced 2025-06-05 21:59:27 +02:00
@@ -1,7 +1,7 @@
|
||||
Changelog
|
||||
==========
|
||||
|
||||
Version 6.10.1 *(2020-05-06)*
|
||||
Version 6.10.2 *(2020-05-06)*
|
||||
----------------------------
|
||||
|
||||
* Removing the READ_CALL_LOG permission
|
||||
|
@@ -57,9 +57,8 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.simplemobiletools:commons:5.27.7'
|
||||
implementation 'com.simplemobiletools:commons:5.28.2'
|
||||
implementation 'joda-time:joda-time:2.10.1'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta4'
|
||||
implementation 'com.googlecode.ez-vcard:ez-vcard:0.10.5'
|
||||
implementation 'com.github.tibbi:IndicatorFastScroll:08f512858a'
|
||||
|
||||
|
@@ -16,7 +16,7 @@ import com.bumptech.glide.request.RequestOptions
|
||||
import com.bumptech.glide.request.target.Target
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
import com.simplemobiletools.commons.extensions.getContactLetterIcon
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.commons.models.RadioItem
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
import com.simplemobiletools.contacts.pro.extensions.sendEmailIntent
|
||||
@@ -31,7 +31,7 @@ abstract class ContactActivity : SimpleActivity() {
|
||||
protected var currentContactPhotoPath = ""
|
||||
|
||||
fun showPhotoPlaceholder(photoView: ImageView) {
|
||||
val placeholder = BitmapDrawable(resources, getContactLetterIcon(contact?.getNameToDisplay() ?: "A"))
|
||||
val placeholder = BitmapDrawable(resources, SimpleContactsHelper(this).getContactLetterIcon(contact?.getNameToDisplay() ?: "A"))
|
||||
photoView.setImageDrawable(placeholder)
|
||||
currentContactPhotoPath = ""
|
||||
contact?.photo = null
|
||||
|
@@ -14,6 +14,7 @@ import android.view.Menu
|
||||
import android.view.MenuItem
|
||||
import android.view.View
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.KEY_PHONE
|
||||
import com.simplemobiletools.commons.helpers.REQUEST_CODE_SET_DEFAULT_DIALER
|
||||
import com.simplemobiletools.commons.helpers.isOreoPlus
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
@@ -21,7 +22,6 @@ import com.simplemobiletools.contacts.pro.adapters.ContactsAdapter
|
||||
import com.simplemobiletools.contacts.pro.dialogs.CallConfirmationDialog
|
||||
import com.simplemobiletools.contacts.pro.extensions.*
|
||||
import com.simplemobiletools.contacts.pro.helpers.ContactsHelper
|
||||
import com.simplemobiletools.contacts.pro.helpers.KEY_PHONE
|
||||
import com.simplemobiletools.contacts.pro.helpers.LOCATION_DIALPAD
|
||||
import com.simplemobiletools.contacts.pro.models.Contact
|
||||
import com.simplemobiletools.contacts.pro.models.SpeedDial
|
||||
|
@@ -183,7 +183,7 @@ class EditContactActivity : ContactActivity() {
|
||||
if (((contact!!.id == 0 && action == Intent.ACTION_INSERT) || action == ADD_NEW_CONTACT_NUMBER) && intent.extras != null) {
|
||||
val phoneNumber = getPhoneNumberFromIntent(intent)
|
||||
if (phoneNumber != null) {
|
||||
contact!!.phoneNumbers.add(PhoneNumber(phoneNumber, DEFAULT_PHONE_NUMBER_TYPE, "", phoneNumber.normalizeNumber()))
|
||||
contact!!.phoneNumbers.add(PhoneNumber(phoneNumber, DEFAULT_PHONE_NUMBER_TYPE, "", phoneNumber.normalizePhoneNumber()))
|
||||
if (phoneNumber.isNotEmpty() && action == ADD_NEW_CONTACT_NUMBER) {
|
||||
highlightLastPhoneNumber = true
|
||||
}
|
||||
@@ -911,7 +911,7 @@ class EditContactActivity : ContactActivity() {
|
||||
val numberLabel = if (numberType == Phone.TYPE_CUSTOM) numberHolder.contact_number_type.value else ""
|
||||
|
||||
if (number.isNotEmpty()) {
|
||||
phoneNumbers.add(PhoneNumber(number, numberType, numberLabel, number.normalizeNumber()))
|
||||
phoneNumbers.add(PhoneNumber(number, numberType, numberLabel, number.normalizePhoneNumber()))
|
||||
}
|
||||
}
|
||||
return phoneNumbers
|
||||
|
@@ -13,6 +13,7 @@ import androidx.appcompat.widget.SearchView
|
||||
import androidx.core.view.MenuItemCompat
|
||||
import androidx.viewpager.widget.ViewPager
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.KEY_PHONE
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_GET_ACCOUNTS
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_CONTACTS
|
||||
|
@@ -36,6 +36,7 @@ import com.simplemobiletools.contacts.pro.extensions.getTempFile
|
||||
import com.simplemobiletools.contacts.pro.extensions.handleGenericContactClick
|
||||
import com.simplemobiletools.contacts.pro.fragments.MyViewPagerFragment
|
||||
import com.simplemobiletools.contacts.pro.helpers.*
|
||||
import com.simplemobiletools.contacts.pro.helpers.ContactsHelper
|
||||
import com.simplemobiletools.contacts.pro.interfaces.RefreshContactsListener
|
||||
import com.simplemobiletools.contacts.pro.models.Contact
|
||||
import kotlinx.android.synthetic.main.activity_main.*
|
||||
@@ -71,8 +72,8 @@ class MainActivity : SimpleActivity(), RefreshContactsListener {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_main)
|
||||
appLaunched(BuildConfig.APPLICATION_ID)
|
||||
setupTabColors()
|
||||
|
||||
setupTabColors()
|
||||
checkContactPermissions()
|
||||
storeStateVariables()
|
||||
checkWhatsNewDialog()
|
||||
|
@@ -6,10 +6,10 @@ import android.graphics.drawable.Drawable
|
||||
import android.net.Uri
|
||||
import com.simplemobiletools.commons.activities.BaseSimpleActivity
|
||||
import com.simplemobiletools.commons.extensions.getColoredDrawableWithColor
|
||||
import com.simplemobiletools.commons.helpers.KEY_PHONE
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
import com.simplemobiletools.contacts.pro.extensions.config
|
||||
import com.simplemobiletools.contacts.pro.helpers.KEY_MAILTO
|
||||
import com.simplemobiletools.contacts.pro.helpers.KEY_PHONE
|
||||
import com.simplemobiletools.contacts.pro.helpers.LOCATION_CONTACTS_TAB
|
||||
import com.simplemobiletools.contacts.pro.helpers.LOCATION_FAVORITES_TAB
|
||||
|
||||
|
@@ -244,15 +244,8 @@ class ViewContactActivity : ContactActivity() {
|
||||
}
|
||||
|
||||
private fun openWith() {
|
||||
Intent().apply {
|
||||
action = ContactsContract.QuickContact.ACTION_QUICK_CONTACT
|
||||
data = getContactPublicUri(contact!!)
|
||||
if (resolveActivity(packageManager) != null) {
|
||||
startActivity(this)
|
||||
} else {
|
||||
toast(R.string.no_app_found)
|
||||
}
|
||||
}
|
||||
val uri = getContactPublicUri(contact!!)
|
||||
launchViewContactIntent(uri)
|
||||
}
|
||||
|
||||
private fun setupFavorite() {
|
||||
@@ -345,6 +338,12 @@ class ViewContactActivity : ContactActivity() {
|
||||
contact_numbers_image.beGone()
|
||||
contact_numbers_holder.beGone()
|
||||
}
|
||||
|
||||
// make sure the Call and SMS buttons are visible if any phone number is shown
|
||||
if (phoneNumbers.isNotEmpty()) {
|
||||
contact_send_sms.beVisible()
|
||||
contact_start_call.beVisible()
|
||||
}
|
||||
}
|
||||
|
||||
// a contact cannot have different emails per contact source. Such contacts are handled as separate ones, not duplicates of each other
|
||||
|
@@ -5,6 +5,9 @@ import android.util.TypedValue
|
||||
import android.view.Menu
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.FrameLayout
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import com.bumptech.glide.Glide
|
||||
import com.bumptech.glide.load.engine.DiskCacheStrategy
|
||||
import com.bumptech.glide.request.RequestOptions
|
||||
@@ -13,6 +16,7 @@ import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||
import com.simplemobiletools.commons.models.RadioItem
|
||||
import com.simplemobiletools.commons.views.FastScroller
|
||||
@@ -25,7 +29,6 @@ import com.simplemobiletools.contacts.pro.helpers.*
|
||||
import com.simplemobiletools.contacts.pro.interfaces.RefreshContactsListener
|
||||
import com.simplemobiletools.contacts.pro.interfaces.RemoveFromGroupListener
|
||||
import com.simplemobiletools.contacts.pro.models.Contact
|
||||
import kotlinx.android.synthetic.main.item_contact_with_number.view.*
|
||||
import java.util.*
|
||||
|
||||
class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList<Contact>, private val refreshListener: RefreshContactsListener?,
|
||||
@@ -255,26 +258,28 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList<Cont
|
||||
override fun onViewRecycled(holder: ViewHolder) {
|
||||
super.onViewRecycled(holder)
|
||||
if (!activity.isDestroyed && !activity.isFinishing) {
|
||||
Glide.with(activity).clear(holder.itemView.contact_tmb)
|
||||
Glide.with(activity).clear(holder.itemView.findViewById<ImageView>(R.id.item_contact_image))
|
||||
}
|
||||
}
|
||||
|
||||
private fun setupView(view: View, contact: Contact) {
|
||||
view.apply {
|
||||
contact_frame?.isSelected = selectedKeys.contains(contact.id)
|
||||
findViewById<FrameLayout>(R.id.item_contact_frame)?.isSelected = selectedKeys.contains(contact.id)
|
||||
val fullName = contact.getNameToDisplay()
|
||||
contact_name.text = if (textToHighlight.isEmpty()) fullName else {
|
||||
findViewById<TextView>(R.id.item_contact_name).text = if (textToHighlight.isEmpty()) fullName else {
|
||||
if (fullName.contains(textToHighlight, true)) {
|
||||
fullName.highlightTextPart(textToHighlight, adjustedPrimaryColor)
|
||||
} else {
|
||||
highlightTextFromNumbers(fullName, textToHighlight, adjustedPrimaryColor)
|
||||
fullName.highlightTextFromNumbers(textToHighlight, adjustedPrimaryColor)
|
||||
}
|
||||
}
|
||||
|
||||
contact_name.setTextColor(textColor)
|
||||
contact_name.setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize)
|
||||
findViewById<TextView>(R.id.item_contact_name).apply {
|
||||
setTextColor(textColor)
|
||||
setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize)
|
||||
}
|
||||
|
||||
if (contact_number != null) {
|
||||
if (findViewById<TextView>(R.id.item_contact_number) != null) {
|
||||
val phoneNumberToUse = if (textToHighlight.isEmpty()) {
|
||||
contact.phoneNumbers.firstOrNull()
|
||||
} else {
|
||||
@@ -282,17 +287,19 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList<Cont
|
||||
}
|
||||
|
||||
val numberText = phoneNumberToUse?.value ?: ""
|
||||
contact_number.text = if (textToHighlight.isEmpty()) numberText else numberText.highlightTextPart(textToHighlight, adjustedPrimaryColor, false, true)
|
||||
contact_number.setTextColor(textColor)
|
||||
contact_number.setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize)
|
||||
findViewById<TextView>(R.id.item_contact_number).apply {
|
||||
text = if (textToHighlight.isEmpty()) numberText else numberText.highlightTextPart(textToHighlight, adjustedPrimaryColor, false, true)
|
||||
setTextColor(textColor)
|
||||
setTextSize(TypedValue.COMPLEX_UNIT_PX, fontSize)
|
||||
}
|
||||
}
|
||||
|
||||
contact_tmb.beVisibleIf(showContactThumbnails)
|
||||
findViewById<TextView>(R.id.item_contact_image).beVisibleIf(showContactThumbnails)
|
||||
|
||||
if (showContactThumbnails) {
|
||||
val placeholderImage = BitmapDrawable(resources, context.getContactLetterIcon(fullName))
|
||||
val placeholderImage = BitmapDrawable(resources, SimpleContactsHelper(context).getContactLetterIcon(fullName))
|
||||
if (contact.photoUri.isEmpty() && contact.photo == null) {
|
||||
contact_tmb.setImageDrawable(placeholderImage)
|
||||
findViewById<ImageView>(R.id.item_contact_image).setImageDrawable(placeholderImage)
|
||||
} else {
|
||||
val options = RequestOptions()
|
||||
.signature(ObjectKey(contact.getSignatureKey()))
|
||||
@@ -310,7 +317,7 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList<Cont
|
||||
.load(itemToLoad)
|
||||
.apply(options)
|
||||
.apply(RequestOptions.circleCropTransform())
|
||||
.into(contact_tmb)
|
||||
.into(findViewById(R.id.item_contact_image))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -6,7 +6,11 @@ import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.extensions.beVisibleIf
|
||||
import com.simplemobiletools.commons.extensions.getAdjustedPrimaryColor
|
||||
import com.simplemobiletools.commons.extensions.getTextSize
|
||||
import com.simplemobiletools.commons.extensions.highlightTextPart
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||
import com.simplemobiletools.commons.views.FastScroller
|
||||
import com.simplemobiletools.commons.views.MyRecyclerView
|
||||
@@ -167,7 +171,7 @@ class GroupsAdapter(activity: SimpleActivity, var groups: ArrayList<Group>, val
|
||||
|
||||
group_tmb.beVisibleIf(showContactThumbnails)
|
||||
if (showContactThumbnails) {
|
||||
group_tmb.setImageDrawable(activity.getColoredGroupIcon(group.title))
|
||||
group_tmb.setImageDrawable(SimpleContactsHelper(activity).getColoredGroupIcon(group.title))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -11,12 +11,12 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy
|
||||
import com.bumptech.glide.request.RequestOptions
|
||||
import com.bumptech.glide.signature.ObjectKey
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.commons.views.FastScroller
|
||||
import com.simplemobiletools.commons.views.MyRecyclerView
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
import com.simplemobiletools.contacts.pro.activities.SimpleActivity
|
||||
import com.simplemobiletools.contacts.pro.extensions.config
|
||||
import com.simplemobiletools.contacts.pro.helpers.highlightTextFromNumbers
|
||||
import com.simplemobiletools.contacts.pro.models.Contact
|
||||
import kotlinx.android.synthetic.main.item_add_favorite_with_number.view.*
|
||||
import java.util.*
|
||||
@@ -109,7 +109,7 @@ class SelectContactsAdapter(val activity: SimpleActivity, var contacts: ArrayLis
|
||||
if (fullName.contains(textToHighlight, true)) {
|
||||
fullName.highlightTextPart(textToHighlight, adjustedPrimaryColor)
|
||||
} else {
|
||||
highlightTextFromNumbers(fullName, textToHighlight, adjustedPrimaryColor)
|
||||
fullName.highlightTextFromNumbers(textToHighlight, adjustedPrimaryColor)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -146,7 +146,7 @@ class SelectContactsAdapter(val activity: SimpleActivity, var contacts: ArrayLis
|
||||
else -> contact.firstName
|
||||
}
|
||||
|
||||
val placeholderImage = BitmapDrawable(resources, context.getContactLetterIcon(avatarName))
|
||||
val placeholderImage = BitmapDrawable(resources, SimpleContactsHelper(context).getContactLetterIcon(avatarName))
|
||||
|
||||
if (contact.photoUri.isEmpty() && contact.photo == null) {
|
||||
contact_tmb.setImageDrawable(placeholderImage)
|
||||
|
@@ -19,7 +19,7 @@ class SpeedDialAdapter(activity: SimpleActivity, var speedDialValues: ArrayList<
|
||||
setupDragListener(true)
|
||||
}
|
||||
|
||||
override fun getActionMenuId() = R.menu.cab_speed_dial
|
||||
override fun getActionMenuId() = R.menu.cab_delete_only
|
||||
|
||||
override fun prepareActionMode(menu: Menu) {}
|
||||
|
||||
|
@@ -9,7 +9,6 @@ import android.telecom.TelecomManager
|
||||
import com.simplemobiletools.commons.activities.BaseSimpleActivity
|
||||
import com.simplemobiletools.commons.dialogs.RadioGroupDialog
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_CALL_PHONE
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_READ_PHONE_STATE
|
||||
import com.simplemobiletools.commons.models.RadioItem
|
||||
import com.simplemobiletools.contacts.pro.BuildConfig
|
||||
@@ -30,25 +29,6 @@ fun SimpleActivity.startCallIntent(recipient: String) {
|
||||
}
|
||||
}
|
||||
|
||||
fun SimpleActivity.launchCallIntent(recipient: String, handle: PhoneAccountHandle?) {
|
||||
handlePermission(PERMISSION_CALL_PHONE) {
|
||||
val action = if (it) Intent.ACTION_CALL else Intent.ACTION_DIAL
|
||||
Intent(action).apply {
|
||||
data = Uri.fromParts("tel", recipient, null)
|
||||
|
||||
if (handle != null) {
|
||||
putExtra(TelecomManager.EXTRA_PHONE_ACCOUNT_HANDLE, handle)
|
||||
}
|
||||
|
||||
if (resolveActivity(packageManager) != null) {
|
||||
startActivity(this)
|
||||
} else {
|
||||
toast(R.string.no_app_found)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun SimpleActivity.tryStartCall(contact: Contact) {
|
||||
if (config.showCallConfirmation) {
|
||||
CallConfirmationDialog(this, contact.getNameToDisplay()) {
|
||||
|
@@ -17,6 +17,7 @@ import com.simplemobiletools.commons.extensions.telecomManager
|
||||
import com.simplemobiletools.commons.extensions.toast
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS
|
||||
import com.simplemobiletools.commons.helpers.PERMISSION_WRITE_CONTACTS
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.contacts.pro.BuildConfig
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
import com.simplemobiletools.contacts.pro.activities.EditContactActivity
|
||||
@@ -310,7 +311,7 @@ fun Context.getContactPublicUri(contact: Contact): Uri {
|
||||
val lookupKey = if (contact.isPrivate()) {
|
||||
"local_${contact.id}"
|
||||
} else {
|
||||
ContactsHelper(this).getContactLookupKey(contact.id.toString())
|
||||
SimpleContactsHelper(this).getContactLookupKey(contact.id.toString())
|
||||
}
|
||||
return Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_LOOKUP_URI, lookupKey)
|
||||
}
|
||||
|
@@ -1,6 +1,5 @@
|
||||
package com.simplemobiletools.contacts.pro.extensions
|
||||
|
||||
import android.telephony.PhoneNumberUtils
|
||||
import android.widget.TextView
|
||||
import com.simplemobiletools.commons.helpers.getDateFormats
|
||||
import org.joda.time.DateTime
|
||||
@@ -33,5 +32,3 @@ fun String.getDateTimeFromDateString(viewToUpdate: TextView? = null): DateTime {
|
||||
}
|
||||
return date
|
||||
}
|
||||
|
||||
fun String.normalizeNumber() = PhoneNumberUtils.normalizeNumber(this)
|
||||
|
@@ -1,10 +0,0 @@
|
||||
package com.simplemobiletools.contacts.pro.fragments
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
|
||||
class InsertOrEditContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPagerFragment(context, attributeSet) {
|
||||
override fun fabClicked() {}
|
||||
|
||||
override fun placeholderClicked() {}
|
||||
}
|
@@ -5,8 +5,7 @@ import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.telecom.Call
|
||||
import android.telecom.VideoProfile
|
||||
import com.simplemobiletools.commons.extensions.getNameFromPhoneNumber
|
||||
import com.simplemobiletools.commons.extensions.getPhotoUriFromPhoneNumber
|
||||
import com.simplemobiletools.commons.helpers.SimpleContactsHelper
|
||||
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
|
||||
import com.simplemobiletools.contacts.pro.extensions.contactsDB
|
||||
import com.simplemobiletools.contacts.pro.models.CallContact
|
||||
@@ -63,8 +62,8 @@ class CallManager {
|
||||
if (uri.startsWith("tel:")) {
|
||||
val number = uri.substringAfter("tel:")
|
||||
callContact.number = number
|
||||
callContact.name = context.getNameFromPhoneNumber(number)
|
||||
callContact.photoUri = context.getPhotoUriFromPhoneNumber(number)
|
||||
callContact.name = SimpleContactsHelper(context).getNameFromPhoneNumber(number)
|
||||
callContact.photoUri = SimpleContactsHelper(context).getPhotoUriFromPhoneNumber(number)
|
||||
|
||||
if (callContact.name == callContact.number) {
|
||||
ensureBackgroundThread {
|
||||
|
@@ -1,10 +1,6 @@
|
||||
package com.simplemobiletools.contacts.pro.helpers
|
||||
|
||||
import android.provider.ContactsContract.CommonDataKinds
|
||||
import android.telephony.PhoneNumberUtils
|
||||
import android.text.Spannable
|
||||
import android.text.SpannableString
|
||||
import android.text.style.ForegroundColorSpan
|
||||
import com.simplemobiletools.commons.extensions.normalizeString
|
||||
import com.simplemobiletools.contacts.pro.models.LocalContact
|
||||
|
||||
@@ -40,7 +36,6 @@ const val ACCEPT_CALL = PATH + "accept_call"
|
||||
const val DECLINE_CALL = PATH + "decline_call"
|
||||
|
||||
// extras used at third party intents
|
||||
const val KEY_PHONE = "phone"
|
||||
const val KEY_NAME = "name"
|
||||
const val KEY_EMAIL = "email"
|
||||
const val KEY_MAILTO = "mailto"
|
||||
@@ -123,18 +118,3 @@ const val WHATSAPP_PACKAGE = "com.whatsapp"
|
||||
fun getEmptyLocalContact() = LocalContact(0, "", "", "", "", "", "", null, "", ArrayList(), ArrayList(), ArrayList(), 0, ArrayList(), "", ArrayList(), "", "", ArrayList(), ArrayList())
|
||||
|
||||
fun getProperText(text: String, shouldNormalize: Boolean) = if (shouldNormalize) text.normalizeString() else text
|
||||
|
||||
fun highlightTextFromNumbers(name: String, textToHighlight: String, adjustedPrimaryColor: Int): SpannableString {
|
||||
val spannableString = SpannableString(name)
|
||||
val digits = PhoneNumberUtils.convertKeypadLettersToDigits(name)
|
||||
if (digits.contains(textToHighlight)) {
|
||||
val startIndex = digits.indexOf(textToHighlight, 0, true)
|
||||
val endIndex = Math.min(startIndex + textToHighlight.length, name.length)
|
||||
try {
|
||||
spannableString.setSpan(ForegroundColorSpan(adjustedPrimaryColor), startIndex, endIndex, Spannable.SPAN_EXCLUSIVE_INCLUSIVE)
|
||||
} catch (ignored: IndexOutOfBoundsException) {
|
||||
}
|
||||
}
|
||||
|
||||
return spannableString
|
||||
}
|
||||
|
@@ -14,13 +14,13 @@ import android.text.TextUtils
|
||||
import android.util.SparseArray
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import com.simplemobiletools.commons.helpers.*
|
||||
import com.simplemobiletools.commons.overloads.times
|
||||
import com.simplemobiletools.contacts.pro.R
|
||||
import com.simplemobiletools.contacts.pro.extensions.*
|
||||
import com.simplemobiletools.contacts.pro.models.*
|
||||
import com.simplemobiletools.contacts.pro.models.Email
|
||||
import com.simplemobiletools.contacts.pro.models.Event
|
||||
import com.simplemobiletools.contacts.pro.models.Organization
|
||||
import com.simplemobiletools.contacts.pro.overloads.times
|
||||
import java.util.*
|
||||
import kotlin.collections.ArrayList
|
||||
|
||||
@@ -265,7 +265,7 @@ class ContactsHelper(val context: Context) {
|
||||
context.queryCursor(uri, projection, selection, selectionArgs, showErrors = true) { cursor ->
|
||||
val id = cursor.getIntValue(Data.RAW_CONTACT_ID)
|
||||
val number = cursor.getStringValue(Phone.NUMBER) ?: return@queryCursor
|
||||
val normalizedNumber = cursor.getStringValue(Phone.NORMALIZED_NUMBER) ?: number.normalizeNumber()
|
||||
val normalizedNumber = cursor.getStringValue(Phone.NORMALIZED_NUMBER) ?: number.normalizePhoneNumber()
|
||||
val type = cursor.getIntValue(Phone.TYPE)
|
||||
val label = cursor.getStringValue(Phone.LABEL) ?: ""
|
||||
|
||||
@@ -516,7 +516,7 @@ class ContactsHelper(val context: Context) {
|
||||
return groups
|
||||
}
|
||||
|
||||
private fun getQuestionMarks() = "?,".times(displayContactSources.filter { it.isNotEmpty() }.size).trimEnd(',')
|
||||
private fun getQuestionMarks() = ("?," * displayContactSources.filter { it.isNotEmpty() }.size).trimEnd(',')
|
||||
|
||||
private fun getSourcesSelection(addMimeType: Boolean = false, addContactId: Boolean = false, useRawContactId: Boolean = true): String {
|
||||
val strings = ArrayList<String>()
|
||||
@@ -1351,24 +1351,6 @@ class ContactsHelper(val context: Context) {
|
||||
fileDescriptor.close()
|
||||
}
|
||||
|
||||
fun getContactLookupKey(contactId: String): String {
|
||||
val uri = Data.CONTENT_URI
|
||||
val projection = arrayOf(Data.CONTACT_ID, Data.LOOKUP_KEY)
|
||||
val selection = "${Data.MIMETYPE} = ? AND ${Data.RAW_CONTACT_ID} = ?"
|
||||
val selectionArgs = arrayOf(StructuredName.CONTENT_ITEM_TYPE, contactId)
|
||||
|
||||
val cursor = context.contentResolver.query(uri, projection, selection, selectionArgs, null)
|
||||
cursor?.use {
|
||||
if (cursor.moveToFirst()) {
|
||||
val id = cursor.getIntValue(Data.CONTACT_ID)
|
||||
val lookupKey = cursor.getStringValue(Data.LOOKUP_KEY)
|
||||
return "$lookupKey/$id"
|
||||
}
|
||||
}
|
||||
|
||||
return ""
|
||||
}
|
||||
|
||||
fun getContactMimeTypeId(contactId: String, mimeType: String): String {
|
||||
val uri = Data.CONTENT_URI
|
||||
val projection = arrayOf(Data._ID, Data.RAW_CONTACT_ID, Data.MIMETYPE)
|
||||
|
@@ -5,12 +5,12 @@ import android.graphics.BitmapFactory
|
||||
import android.provider.ContactsContract.CommonDataKinds
|
||||
import android.provider.ContactsContract.CommonDataKinds.*
|
||||
import android.widget.Toast
|
||||
import com.simplemobiletools.commons.extensions.normalizePhoneNumber
|
||||
import com.simplemobiletools.commons.extensions.showErrorToast
|
||||
import com.simplemobiletools.contacts.pro.activities.SimpleActivity
|
||||
import com.simplemobiletools.contacts.pro.extensions.getCachePhoto
|
||||
import com.simplemobiletools.contacts.pro.extensions.getCachePhotoUri
|
||||
import com.simplemobiletools.contacts.pro.extensions.groupsDB
|
||||
import com.simplemobiletools.contacts.pro.extensions.normalizeNumber
|
||||
import com.simplemobiletools.contacts.pro.helpers.VcfImporter.ImportResult.*
|
||||
import com.simplemobiletools.contacts.pro.models.*
|
||||
import com.simplemobiletools.contacts.pro.models.Email
|
||||
@@ -60,7 +60,7 @@ class VcfImporter(val activity: SimpleActivity) {
|
||||
""
|
||||
}
|
||||
|
||||
phoneNumbers.add(PhoneNumber(number, type, label, number.normalizeNumber()))
|
||||
phoneNumbers.add(PhoneNumber(number, type, label, number.normalizePhoneNumber()))
|
||||
}
|
||||
|
||||
val emails = ArrayList<Email>()
|
||||
|
@@ -2,11 +2,11 @@ package com.simplemobiletools.contacts.pro.models
|
||||
|
||||
import android.graphics.Bitmap
|
||||
import android.telephony.PhoneNumberUtils
|
||||
import com.simplemobiletools.commons.extensions.normalizePhoneNumber
|
||||
import com.simplemobiletools.commons.extensions.normalizeString
|
||||
import com.simplemobiletools.commons.helpers.SORT_BY_FIRST_NAME
|
||||
import com.simplemobiletools.commons.helpers.SORT_BY_MIDDLE_NAME
|
||||
import com.simplemobiletools.commons.helpers.SORT_DESCENDING
|
||||
import com.simplemobiletools.contacts.pro.extensions.normalizeNumber
|
||||
import com.simplemobiletools.contacts.pro.helpers.SMT_PRIVATE
|
||||
|
||||
data class Contact(var id: Int, var prefix: String, var firstName: String, var middleName: String, var surname: String, var suffix: String, var nickname: String,
|
||||
@@ -109,8 +109,8 @@ data class Contact(var id: Int, var prefix: String, var firstName: String, var m
|
||||
|
||||
fun getStringToCompare(): String {
|
||||
return copy(id = 0, prefix = "", firstName = getNameToDisplay().toLowerCase(), middleName = "", surname = "", suffix = "", nickname = "", photoUri = "",
|
||||
phoneNumbers = ArrayList(), emails = ArrayList(), events = ArrayList(), source = "", addresses = ArrayList(), starred = 0, contactId = 0,
|
||||
thumbnailUri = "", notes = "", groups = ArrayList(), websites = ArrayList(), organization = Organization("", ""), IMs = ArrayList()).toString()
|
||||
phoneNumbers = ArrayList(), emails = ArrayList(), events = ArrayList(), source = "", addresses = ArrayList(), starred = 0, contactId = 0,
|
||||
thumbnailUri = "", notes = "", groups = ArrayList(), websites = ArrayList(), organization = Organization("", ""), IMs = ArrayList()).toString()
|
||||
}
|
||||
|
||||
fun getHashToCompare() = getStringToCompare().hashCode()
|
||||
@@ -125,12 +125,12 @@ data class Contact(var id: Int, var prefix: String, var firstName: String, var m
|
||||
|
||||
fun doesContainPhoneNumber(text: String, convertLetters: Boolean): Boolean {
|
||||
return if (text.isNotEmpty()) {
|
||||
val normalizedText = if (convertLetters) text.normalizeNumber() else text
|
||||
val normalizedText = if (convertLetters) text.normalizePhoneNumber() else text
|
||||
phoneNumbers.any {
|
||||
PhoneNumberUtils.compare(it.normalizedNumber, normalizedText) ||
|
||||
it.value.contains(text) ||
|
||||
it.normalizedNumber?.contains(normalizedText) == true ||
|
||||
it.value.normalizeNumber().contains(normalizedText)
|
||||
it.value.normalizePhoneNumber().contains(normalizedText)
|
||||
}
|
||||
} else {
|
||||
false
|
||||
|
@@ -1,9 +0,0 @@
|
||||
package com.simplemobiletools.contacts.pro.overloads
|
||||
|
||||
operator fun String.times(x: Int): String {
|
||||
val stringBuilder = StringBuilder()
|
||||
for (i in 1..x) {
|
||||
stringBuilder.append(this)
|
||||
}
|
||||
return stringBuilder.toString()
|
||||
}
|
@@ -33,6 +33,29 @@
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_use_english_holder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/medium_margin"
|
||||
android:background="?attr/selectableItemBackground"
|
||||
android:paddingStart="@dimen/normal_margin"
|
||||
android:paddingTop="@dimen/activity_margin"
|
||||
android:paddingEnd="@dimen/normal_margin"
|
||||
android:paddingBottom="@dimen/activity_margin">
|
||||
|
||||
<com.simplemobiletools.commons.views.MySwitchCompat
|
||||
android:id="@+id/settings_use_english"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@null"
|
||||
android:clickable="false"
|
||||
android:paddingStart="@dimen/medium_margin"
|
||||
android:text="@string/use_english_language"
|
||||
app:switchPadding="@dimen/medium_margin"/>
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_manage_contact_fields_holder"
|
||||
android:layout_width="match_parent"
|
||||
@@ -149,29 +172,6 @@
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_use_english_holder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/medium_margin"
|
||||
android:background="?attr/selectableItemBackground"
|
||||
android:paddingStart="@dimen/normal_margin"
|
||||
android:paddingTop="@dimen/activity_margin"
|
||||
android:paddingEnd="@dimen/normal_margin"
|
||||
android:paddingBottom="@dimen/activity_margin">
|
||||
|
||||
<com.simplemobiletools.commons.views.MySwitchCompat
|
||||
android:id="@+id/settings_use_english"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@null"
|
||||
android:clickable="false"
|
||||
android:paddingStart="@dimen/medium_margin"
|
||||
android:text="@string/use_english_language"
|
||||
app:switchPadding="@dimen/medium_margin"/>
|
||||
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/settings_show_contact_thumbnails_holder"
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -1,59 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/contact_frame"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/selectableItemBackground"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:foreground="@drawable/selector">
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/contact_holder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="@dimen/min_row_height"
|
||||
android:paddingStart="@dimen/tiny_margin"
|
||||
android:paddingTop="@dimen/normal_margin"
|
||||
android:paddingEnd="@dimen/activity_margin"
|
||||
android:paddingBottom="@dimen/normal_margin">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/contact_tmb"
|
||||
android:layout_width="@dimen/normal_icon_size"
|
||||
android:layout_height="@dimen/normal_icon_size"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginStart="@dimen/small_margin"
|
||||
android:padding="@dimen/tiny_margin"
|
||||
android:src="@drawable/ic_person_vector" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/contact_name"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_toEndOf="@+id/contact_tmb"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="@dimen/medium_margin"
|
||||
android:paddingEnd="@dimen/activity_margin"
|
||||
android:textSize="@dimen/big_text_size"
|
||||
tools:text="John Doe" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/contact_number"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_below="@+id/contact_name"
|
||||
android:layout_alignStart="@+id/contact_name"
|
||||
android:layout_toEndOf="@+id/contact_tmb"
|
||||
android:alpha="0.6"
|
||||
android:ellipsize="end"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="@dimen/medium_margin"
|
||||
android:paddingEnd="@dimen/activity_margin"
|
||||
android:textSize="@dimen/big_text_size"
|
||||
tools:text="0123 456 789" />
|
||||
|
||||
</RelativeLayout>
|
||||
</FrameLayout>
|
@@ -1,46 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/contact_frame"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/selectableItemBackground"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:foreground="@drawable/selector">
|
||||
|
||||
<RelativeLayout
|
||||
android:id="@+id/contact_holder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="@dimen/min_row_height"
|
||||
android:paddingStart="@dimen/tiny_margin"
|
||||
android:paddingTop="@dimen/medium_margin"
|
||||
android:paddingEnd="@dimen/activity_margin"
|
||||
android:paddingBottom="@dimen/medium_margin">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/contact_tmb"
|
||||
android:layout_width="@dimen/normal_icon_size"
|
||||
android:layout_height="@dimen/normal_icon_size"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_marginStart="@dimen/small_margin"
|
||||
android:padding="@dimen/tiny_margin"
|
||||
android:src="@drawable/ic_person_vector" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/contact_name"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerVertical="true"
|
||||
android:layout_toEndOf="@+id/contact_tmb"
|
||||
android:ellipsize="end"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="@dimen/medium_margin"
|
||||
android:paddingEnd="@dimen/activity_margin"
|
||||
android:textSize="@dimen/big_text_size"
|
||||
tools:text="John Doe" />
|
||||
|
||||
</RelativeLayout>
|
||||
</FrameLayout>
|
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<item
|
||||
android:id="@+id/cab_delete"
|
||||
android:icon="@drawable/ic_delete_vector"
|
||||
android:title="@string/delete"
|
||||
app:showAsAction="ifRoom" />
|
||||
</menu>
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">إظهار مربع حوار تأكيد الاتصال قبل بدء مكالمة</string>
|
||||
<string name="show_only_contacts_with_numbers">إظهار جهات الإتصال التي لديها أرقام هواتف فقط</string>
|
||||
<string name="show_dialpad_letters">عرض الحروف على لوحة الاتصال</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">المنزل</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Zəngə başlamazdan əvvəl zəng təsdiq pəncərəsi göstər</string>
|
||||
<string name="show_only_contacts_with_numbers">Show only contacts with phone numbers</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Ev</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Před zahájením hovoru zobrazit potvrzovací dialog</string>
|
||||
<string name="show_only_contacts_with_numbers">Zobrazit jen kontakty s telefonními čísly</string>
|
||||
<string name="show_dialpad_letters">Zobrazit na číselníku písmena</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Domov</string>
|
||||
@@ -141,13 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kontakt bude vymazán ze všech zdrojů kontaktů.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kontakt</item>
|
||||
<item quantity="few">%d kontakty</item>
|
||||
<item quantity="other">%d kontaktů</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d skupinu</item>
|
||||
<item quantity="few">%d skupiny</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Dangos deialog i gadarnhau cyn gwneud galwad</string>
|
||||
<string name="show_only_contacts_with_numbers">Dangos dim ond cysylltiadau gyda rhifau ffôn</string>
|
||||
<string name="show_dialpad_letters">Dangos llythrennau ar y pad deialu</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Cartref</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Vis en opkaldsbekræftelsesdialog før du starter et opkald</string>
|
||||
<string name="show_only_contacts_with_numbers">Vis kun kontakter med telefonnumre</string>
|
||||
<string name="show_dialpad_letters">Vis bogstaver på tastaturet</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Hjem</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Bestätigungsdialog zeigen, bevor ein Anruf durchgeführt wird</string>
|
||||
<string name="show_only_contacts_with_numbers">Nur Kontakte mit Telefonnummern anzeigen</string>
|
||||
<string name="show_dialpad_letters">Buchstaben im Wahlfeld anzeigen</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Privat</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Der Kontakt wird von allen Kontaktquellen entfernt.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d Kontakt</item>
|
||||
<item quantity="other">%d Kontakte</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d Gruppe</item>
|
||||
<item quantity="other">%d Gruppen</item>
|
||||
|
@@ -18,7 +18,7 @@
|
||||
<string name="add_to_existing_contact">Προσθήκη σε μια υπάρχουσα Επαφή</string>
|
||||
<string name="dialer_moved">
|
||||
<![CDATA[
|
||||
The part of the app responsible for Call handling had to be moved into a separate new app Simple Dialer, please download it on <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">this link.</a> Thanks!
|
||||
Η ενότητα της εφαρμογής που είναι υπεύθυνη για το χειρισμό κλήσεων έπρεπε να μετακινηθεί σε μια ξεχωριστή νέα εφαρμογή Simple Dialer, κάνετε λήψη από αυτόν <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">τον σύνδεσμο.</a> Ευχαριστώ!
|
||||
]]>
|
||||
</string>
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Εμφάνιση διαλόγου επιβεβαίωσης πριν από την έναρξη μιας κλήσης</string>
|
||||
<string name="show_only_contacts_with_numbers">Προβολή όλων των Επαφών με αριθμούς τηλεφώνου</string>
|
||||
<string name="show_dialpad_letters">Εμφάνιση γραμμάτων στην πληκτρολόγιο</string>
|
||||
<string name="show_private_contacts">Εμφάνιση ιδιωτικών επαφών σε Simple Dialer και Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Οικία</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Η επαφή θα καταργηθεί από όλες τις πηγές επαφών.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d επαφή</item>
|
||||
<item quantity="other">%d επαφές</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d ομάδα</item>
|
||||
<item quantity="other">%d ομάδες</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Mostrar un cuadro de confirmación antes de iniciar una llamada</string>
|
||||
<string name="show_only_contacts_with_numbers">Solo mostrar contactos con números telefónicos</string>
|
||||
<string name="show_dialpad_letters">Mostrar letras en el teclado de marcación</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Casa</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">El contacto será eliminado de todos los orígenes de contactos.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contacto</item>
|
||||
<item quantity="other">%d contactos</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d groupo</item>
|
||||
<item quantity="other">%d groupos</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Erakutsi egiaztatze mezua dei bat hasi baino lehen</string>
|
||||
<string name="show_only_contacts_with_numbers">Show only contacts with phone numbers</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Etxea</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Näytä puhelun vahvistusruutu</string>
|
||||
<string name="show_only_contacts_with_numbers">Näytä ainoastaan numerolliset kontaktit</string>
|
||||
<string name="show_dialpad_letters">Näytä kirjaimet puhelimessa</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Koti</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Afficher une demande de confirmation avant de démarrer un appel</string>
|
||||
<string name="show_only_contacts_with_numbers">Afficher uniquement les contacts avec un numéro de téléphone</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Maison</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Pokažite dijaloški okvir za potvrdu poziva prije pokretanja poziva</string>
|
||||
<string name="show_only_contacts_with_numbers">Prikaži samo kontakte s telefonskim brojevima</string>
|
||||
<string name="show_dialpad_letters">Prikaži slova na telefonskoj tipkovnici</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Kućni</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Jóváhagyás kérése telefonhívás indítása előtt</string>
|
||||
<string name="show_only_contacts_with_numbers">Csak telefonszámot tartalmazó névjegyek kijelzése</string>
|
||||
<string name="show_dialpad_letters">Betűk kijelzése a tárcsázón</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Otthon</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Tampilkan dialog konfirmasi panggilan sebelum melakukan panggilan</string>
|
||||
<string name="show_only_contacts_with_numbers">Hanya tampilkan kontak dengan nomor telepon</string>
|
||||
<string name="show_dialpad_letters">Tampilkan huruf pada tombol dial</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Rumah</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kontak akan dihapus dari semua sumber kontak.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kontak</item>
|
||||
<item quantity="other">%d kontak</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grup</item>
|
||||
<item quantity="other">%d grup</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Tampilkan dialog konfirmasi panggilan sebelum melakukan panggilan</string>
|
||||
<string name="show_only_contacts_with_numbers">Hanya tampilkan kontak dengan nomor telepon</string>
|
||||
<string name="show_dialpad_letters">Tampilkan huruf pada tombol dial</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Rumah</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kontak akan dihapus dari semua sumber kontak.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kontak</item>
|
||||
<item quantity="other">%d kontak</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grup</item>
|
||||
<item quantity="other">%d grup</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Mostra un messaggio di conferma prima di iniziare una chiamata</string>
|
||||
<string name="show_only_contacts_with_numbers">Mostra solamente i contatti con almeno un numero telefonico</string>
|
||||
<string name="show_dialpad_letters">Mostra lettere nel compositore</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Casa</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">発信する前に確認ダイアログを表示する</string>
|
||||
<string name="show_only_contacts_with_numbers">電話番号が登録された連絡先のみ表示する</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">自宅</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Show a call confirmation dialog before initiating a call</string>
|
||||
<string name="show_only_contacts_with_numbers">Show only contacts with phone numbers</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">집</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Show a call confirmation dialog before initiating a call</string>
|
||||
<string name="show_only_contacts_with_numbers">Show only contacts with phone numbers</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Namų</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -18,7 +18,7 @@
|
||||
<string name="add_to_existing_contact">Aan bestaand contact toevoegen</string>
|
||||
<string name="dialer_moved">
|
||||
<![CDATA[
|
||||
The part of the app responsible for Call handling had to be moved into a separate new app Simple Dialer, please download it on <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">this link.</a> Thanks!
|
||||
Het gedeelte om telefoongesprekken te beheren moest worden afgesplitst naar een aparte app genaamd Eenvoudige Telefoon. Download de app via <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">this link.</a> Bedankt!
|
||||
]]>
|
||||
</string>
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Om bevestiging vragen voor het bellen</string>
|
||||
<string name="show_only_contacts_with_numbers">Alleen contacten met telefoonnummers tonen</string>
|
||||
<string name="show_dialpad_letters">Letters op het toetsenblok tonen</string>
|
||||
<string name="show_private_contacts">Privécontacten in Eenvoudige Telefoon en Eenvoudige Berichten tonen</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Thuis</string>
|
||||
@@ -108,16 +109,16 @@
|
||||
|
||||
<!-- Dialer -->
|
||||
<string name="dialer">Bellen</string>
|
||||
<string name="accept">Accept</string>
|
||||
<string name="decline">Decline</string>
|
||||
<string name="unknown_caller">Unknown Caller</string>
|
||||
<string name="is_calling">Is Calling…</string>
|
||||
<string name="dialing">Dialing…</string>
|
||||
<string name="call_ended">Call Ended</string>
|
||||
<string name="call_ending">Call Ending</string>
|
||||
<string name="ongoing_call">Ongoing Call</string>
|
||||
<string name="select_sim">Select a SIM for this call</string>
|
||||
<string name="always_use_this_sim">Always use this SIM for this number</string>
|
||||
<string name="accept">Beantwoorden</string>
|
||||
<string name="decline">Weigeren</string>
|
||||
<string name="unknown_caller">Nummer onbekend</string>
|
||||
<string name="is_calling">Inkomend gesprek…</string>
|
||||
<string name="dialing">Bellen…</string>
|
||||
<string name="call_ended">Gesprek beëindigd</string>
|
||||
<string name="call_ending">Gesprek beëindigen</string>
|
||||
<string name="ongoing_call">Gesprek gaande</string>
|
||||
<string name="select_sim">Selecteer de SIM-kaart voor dit gesprek</string>
|
||||
<string name="always_use_this_sim">Voor dit nummer altijd deze SIM-kaart gebruiken</string>
|
||||
|
||||
<!-- Speed dial -->
|
||||
<string name="speed_dial">Snelkiezer</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">De contactpersoon zal worden verwijderd uit alle accounts.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacten</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d groep</item>
|
||||
<item quantity="other">%d groepen</item>
|
||||
@@ -160,21 +155,21 @@
|
||||
<!-- App title has to have less than 50 characters. If you cannot squeeze it, just remove a part of it -->
|
||||
<string name="app_title">Eenvoudig Adresboek Pro - Snel contacten beheren</string>
|
||||
<!-- Short description has to have less than 80 chars -->
|
||||
<string name="app_short_description">Easy and quick contact management with no ads, handles groups and favorites too.</string>
|
||||
<string name="app_short_description">Eenvoudig en snel contactbeheer met groepen en favorieten, zonder advertenties</string>
|
||||
<string name="app_long_description">
|
||||
A lightweight app for managing your contacts loved by millions of people. The contacts can be stored on your device only, but also synchronized via Google, or other accounts.
|
||||
Een eenvoudige app om contacten aan te maken en te beheren. Contacten kunnen lokaal opgeslagen worden, of gesynchroniseerd via Google en andere accounts.
|
||||
|
||||
You can use it for managing user emails and events too. It has the ability to sort/filter by multiple parameters, optionally display surname as the first name.
|
||||
De app is ook te gebruiken voor het beheren van e-mailadressen en gebeurtenissen gekoppeld aan contacten. Sorteren en filteren is mogelijk op basis van verschillende parameters en zowel voor- als achternaam kan als eerste worden getoond.
|
||||
|
||||
You can display your favorite contacts or groups on a separate list. Groups can be used for sending out batch emails or SMS, to save you some time, you can rename them easily.
|
||||
Favoriete contacten kunnen in een aparte lijst worden getoond. E-mails of sms\'jes kunnen naar hele groepen worden gestuurd om tijd te besparen.
|
||||
|
||||
It contains handy buttons for calling, or texting your contacts. All visible fields can be customized as you wish, you can easily hide the unused ones. The search function will search the given string at every visible contact field, to make you find your desired contact easily.
|
||||
Er zijn knoppen om direct een contacpersoon te bellen of te sms\'en. De zichtbaarheid van de gegevensvelden zijn naar voorkeur aan te passen, zodat ongebruikte velden geen ruimte in beslag nemen. De zoekfunctie zal in alle zichtbare velden speuren naar de opgegeven tekst.
|
||||
|
||||
There is a lightweight dialpad at your service too, with smart contact suggestions.
|
||||
De app bevat ook een lichtgewicht telefoonkiezer met snelle contactsuggesties tijdens het invoeren.
|
||||
|
||||
It supports exporting/importing contacts in vCard format to .vcf files, for easy migrations or backing up your data.
|
||||
Het importeren/exporteren van contacten in vCard-formaat (.vcf) wordt ondersteund voor het gemakkelijk overzetten of backuppen van de gegevens.
|
||||
|
||||
With this modern and stable contacts manager you can protect your contacts by not sharing them with other apps, so you can keep your contacts private.
|
||||
Met deze moderne en stabiele app kunnen contactpersonen worden beschermd door ze niet te delen met andere apps en zo privé te houden.
|
||||
|
||||
Like the contact source, you can also easily change the contact name, email, phone number, address, organization, groups and many other customizable fields. You can use it for storing contact events too, like birthdays, anniversaries, or any other custom ones.
|
||||
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Pokazuj okno potwierdzenia zadzwonienia przed zainicjonowaniem połączenia</string>
|
||||
<string name="show_only_contacts_with_numbers">Pokazuj wyłącznie kontakty z numerami telefonów</string>
|
||||
<string name="show_dialpad_letters">Pokazuj litery na panelu wybierania</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Dom</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Mostrar diálogo para confirmar a chamada antes de ligar</string>
|
||||
<string name="show_only_contacts_with_numbers">Mostar apenas os contatos com número de telefone</string>
|
||||
<string name="show_dialpad_letters">Mostrar letras no discador</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Residencial</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">O contato será removido de todas removido de todas as fontes de contato.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contato</item>
|
||||
<item quantity="other">%d contatos</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grupo</item>
|
||||
<item quantity="other">%d grupos</item>
|
||||
|
@@ -15,10 +15,10 @@
|
||||
<string name="send_email_to_group">Enviar e-mail para o grupo</string>
|
||||
<string name="call_person">Ligar a %s</string>
|
||||
<string name="create_new_contact">Criar novo contacto</string>
|
||||
<string name="add_to_existing_contact">Adicionar a contacto existente</string>
|
||||
<string name="add_to_existing_contact">Adicionar a um contacto existente</string>
|
||||
<string name="dialer_moved">
|
||||
<![CDATA[
|
||||
The part of the app responsible for Call handling had to be moved into a separate new app Simple Dialer, please download it on <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">this link.</a> Thanks!
|
||||
A parte da aplicação responsável pela gestão de chamadas foi movida para uma nova aplicação com o nome Simple Dialer. Pode descarregar a aplicação <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">aqui.</a> Obrigado!
|
||||
]]>
|
||||
</string>
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Mostrar diálogo para confirmar a chamada</string>
|
||||
<string name="show_only_contacts_with_numbers">Mostrar apenas contactos com número de telefone</string>
|
||||
<string name="show_dialpad_letters">Mostrar letras no marcador</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Pessoal</string>
|
||||
@@ -104,20 +105,20 @@
|
||||
|
||||
<!-- Dialpad -->
|
||||
<string name="dialpad">Marcador</string>
|
||||
<string name="add_number_to_contact">Adicionar número a um contacto</string>
|
||||
<string name="add_number_to_contact">Adicionar número a um contacto existente</string>
|
||||
|
||||
<!-- Dialer -->
|
||||
<string name="dialer">Marcador</string>
|
||||
<string name="accept">Accept</string>
|
||||
<string name="decline">Decline</string>
|
||||
<string name="unknown_caller">Unknown Caller</string>
|
||||
<string name="is_calling">Is Calling…</string>
|
||||
<string name="dialing">Dialing…</string>
|
||||
<string name="call_ended">Call Ended</string>
|
||||
<string name="call_ending">Call Ending</string>
|
||||
<string name="ongoing_call">Ongoing Call</string>
|
||||
<string name="select_sim">Select a SIM for this call</string>
|
||||
<string name="always_use_this_sim">Always use this SIM for this number</string>
|
||||
<string name="accept">Aceitar</string>
|
||||
<string name="decline">Recusar</string>
|
||||
<string name="unknown_caller">Desconhecido</string>
|
||||
<string name="is_calling">Está a chamar…</string>
|
||||
<string name="dialing">A ligar…</string>
|
||||
<string name="call_ended">Chamada terminada</string>
|
||||
<string name="call_ending">A terminar chamada</string>
|
||||
<string name="ongoing_call">Chamada em curso</string>
|
||||
<string name="select_sim">Selecione um SIM para esta chamada</string>
|
||||
<string name="always_use_this_sim">Utilizar sempre este SIM para ligar a este número</string>
|
||||
|
||||
<!-- Speed dial -->
|
||||
<string name="speed_dial">Ligação rápida</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">O contacto será apagado de todas as origens.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contacto</item>
|
||||
<item quantity="other">%d contactos</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grupo</item>
|
||||
<item quantity="other">%d grupos</item>
|
||||
@@ -190,10 +185,10 @@
|
||||
|
||||
Não contém anúncios ou permissões desnecessárias. É totalmente open source e permite personalização de cores.
|
||||
|
||||
<b>Check out the full suite of Simple Tools here:</b>
|
||||
<b>Consulte todas as aplicações Simple Tools aqui:</b>
|
||||
https://www.simplemobiletools.com
|
||||
|
||||
<b>Standalone website of Simple Contacts Pro:</b>
|
||||
<b>Site da aplicação Simple Contacts Pro:</b>
|
||||
https://www.simplemobiletools.com/contacts
|
||||
|
||||
<b>Facebook:</b>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Показывать диалог подтверждения вызова</string>
|
||||
<string name="show_only_contacts_with_numbers">Показывать только контакты с номерами телефонов</string>
|
||||
<string name="show_dialpad_letters">Показывать буквы на кнопках набора номера</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Домашний</string>
|
||||
@@ -141,13 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Контакт будет удалён из всех источников контактов.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d контакт</item>
|
||||
<item quantity="few">%d контакта</item>
|
||||
<item quantity="many">%d контактов</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d группу</item>
|
||||
<item quantity="few">%d группы</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Zobraziť pred spustením hovoru okno na jeho potvrdenie</string>
|
||||
<string name="show_only_contacts_with_numbers">Zobraziť iba kontakty s telefónnymi číslami</string>
|
||||
<string name="show_dialpad_letters">Zobraziť na číselníku písmená</string>
|
||||
<string name="show_private_contacts">Zobraziť súkromné kontakty Jednoduchému Telefónu a Jednoduchému Správcovi Súborov</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Domov</string>
|
||||
@@ -141,13 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kontakt bude vymazaný zo všetkých zdrojov kontaktov.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kontakt</item>
|
||||
<item quantity="few">%d kontakty</item>
|
||||
<item quantity="other">%d kontaktov</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d skupinu</item>
|
||||
<item quantity="few">%d skupiny</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Visa en bekräftelsedialogruta före uppringning</string>
|
||||
<string name="show_only_contacts_with_numbers">Visa bara kontakter med telefonnummer</string>
|
||||
<string name="show_dialpad_letters">Visa bokstäver på knappsatsen</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Hem</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kontakten kommer att tas bort från alla kontaktkällor.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kontakt</item>
|
||||
<item quantity="other">%d kontakter</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grupp</item>
|
||||
<item quantity="other">%d grupper</item>
|
||||
|
@@ -18,7 +18,7 @@
|
||||
<string name="add_to_existing_contact">Mevcut bir kişiye ekle</string>
|
||||
<string name="dialer_moved">
|
||||
<![CDATA[
|
||||
The part of the app responsible for Call handling had to be moved into a separate new app Simple Dialer, please download it on <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">this link.</a> Thanks!
|
||||
Uygulamanın Çağrı işlemeden sorumlu kısmı, ayrı Basit Çevirici adlı yeni bir uygulamaya taşındı, lütfen <a href="https://play.google.com/store/apps/details?id=com.simplemobiletools.dialer">bu bağlantıdan</a> indirin. Teşekkürler!
|
||||
]]>
|
||||
</string>
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Arama başlatmadan önce arama onayı penceresi göster</string>
|
||||
<string name="show_only_contacts_with_numbers">Sadece telefon numaralarını içeren kişileri göster</string>
|
||||
<string name="show_dialpad_letters">Tuş takımında harfleri göster</string>
|
||||
<string name="show_private_contacts">Özel kişileri Basit Çevirici ve Basit SMS Messenger\'a göster</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Ev</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">Kişi tüm kişi kaynaklarından kaldırılacak.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d kişi</item>
|
||||
<item quantity="other">%d kişi</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d grup</item>
|
||||
<item quantity="other">%d grup</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Показувати діалог підтвердження виклику</string>
|
||||
<string name="show_only_contacts_with_numbers">Показувати лише контакти з телефонними номерами</string>
|
||||
<string name="show_dialpad_letters">Показувати літери на панелі набору</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Домашній</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">开始通话前显示通话确认框</string>
|
||||
<string name="show_only_contacts_with_numbers">只显示含有电话话码的联系人</string>
|
||||
<string name="show_dialpad_letters">在拨号界面上显示字母</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">住家</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">開始通話前顯示通話確認框</string>
|
||||
<string name="show_only_contacts_with_numbers">只顯示含有電話話碼的聯絡人</string>
|
||||
<string name="show_dialpad_letters">在撥號畫面上顯示字母</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">住家</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">這聯絡人將從全部通訊錄來源移除。</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d個聯絡人</item>
|
||||
<item quantity="other">%d個聯絡人</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d個群組</item>
|
||||
<item quantity="other">%d個群組</item>
|
||||
|
@@ -3,7 +3,6 @@
|
||||
<dimen name="contact_photo_size">88dp</dimen>
|
||||
<dimen name="contact_actions_size">48dp</dimen>
|
||||
<dimen name="contact_icons_size">40dp</dimen>
|
||||
<dimen name="min_row_height">60dp</dimen>
|
||||
<dimen name="dialpad_button_size">60dp</dimen>
|
||||
<dimen name="incoming_call_button_size">72dp</dimen>
|
||||
<dimen name="call_notification_button_size">30dp</dimen>
|
||||
|
@@ -66,6 +66,7 @@
|
||||
<string name="show_call_confirmation_dialog">Show a call confirmation dialog before initiating a call</string>
|
||||
<string name="show_only_contacts_with_numbers">Show only contacts with phone numbers</string>
|
||||
<string name="show_dialpad_letters">Show letters on the dialpad</string>
|
||||
<string name="show_private_contacts">Show private contacts to Simple Dialer and Simple SMS Messenger</string>
|
||||
|
||||
<!-- Emails -->
|
||||
<string name="home">Home</string>
|
||||
@@ -141,12 +142,6 @@
|
||||
<!-- Confirmation dialog -->
|
||||
<string name="delete_from_all_sources">The contact will be removed from all contact sources.</string>
|
||||
|
||||
<!-- Are you sure you want to delete 5 contacts? -->
|
||||
<plurals name="delete_contacts">
|
||||
<item quantity="one">%d contact</item>
|
||||
<item quantity="other">%d contacts</item>
|
||||
</plurals>
|
||||
|
||||
<plurals name="delete_groups">
|
||||
<item quantity="one">%d group</item>
|
||||
<item quantity="other">%d groups</item>
|
||||
|
@@ -1,7 +1,39 @@
|
||||
Простое приложение для создания и управления контактами из любого источника. Контакты могут быть сохранены только на вашем устройстве, а также синхронизированы через Google или другие учётные записи. Вы можете отображать свои любимые контакты в отдельном списке.
|
||||
Лёгкое приложение для управления контактами, которое нравится миллионам людей. Контакты могут храниться только на устройстве, но также синхронизироваться через Google или другие аккаунты.
|
||||
|
||||
Вы можете использовать его для управления электронной почтой и событиями контактов. Приложение имеет возможность сортировать/фильтровать по нескольким параметрам, по желанию отображать фамилию в качестве имени.
|
||||
Вы также можете использовать его для управления электронной почтой и событиями контактов. Есть возможность сортировать/фильтровать по нескольким параметрам, при необходимости отображать фамилию в качестве имени.
|
||||
|
||||
Не содержит рекламы или ненужных разрешений, полностью с открытым исходным кодом. Есть возможность настраивать цвета.
|
||||
Избранные контакты или группы можно отобразить в отдельном списке. Группы можно использовать для для экономии времени при множественной отправке электронных писем или SMS. Для удобства группы можно переименовывать.
|
||||
|
||||
Это приложение — всего лишь частица из большой серии приложений. Вы можете найти остальные на https://www.simplemobiletools.com
|
||||
В приложении есть удобные кнопки для вызова или отправки текстовых сообщений вашим контактам. Все отображаемые поля настраиваются по вашему усмотрению, можно скрыть неиспользуемые. Функция поиска будет искать заданную строку в каждом отображаемом поле контакта, чтобы вы могли быстро найти нужный контакт.
|
||||
|
||||
К вашим услугам также имеется функция простого набора номера с умными предложениями по контактам.
|
||||
|
||||
Приложение поддерживает экспорт/импорт контактов в формате vCard в файлы .vcf для облегчения миграции или резервного копирования данных.
|
||||
|
||||
С помощью этого современного и стабильного менеджера вы можете защитить свои контакты, не передавая их другим приложениям, что поможет сохранить свои контакты в тайне.
|
||||
|
||||
Как и в случае с источником контактов, вы также можете легко изменить имя контакта, его электронную почту, номер телефона, адрес, организацию, группы и многие другие настраиваемые поля. Вы также можете использовать приложение для хранения событий контактов, таких как дни рождения, юбилеи или любые другие пользовательские события.
|
||||
|
||||
Этот простой редактор контактов имеет множество удобных настроек, таких как отображение телефонных номеров на главном экране, переключение видимости фотографий контактов, отображение только контактов с телефонными номерами, отображение диалога подтверждения перед началом вызова. Содержит быстрый номеронабиратель, который также использует буквы.
|
||||
|
||||
Чтобы улучшить взаимодействие с пользователем, вы можете настроить, что будет происходить при нажатии на контакт. Можно либо инициировать вызов, либо перейти на экран просмотра сведений, либо отредактировать выбранный контакт.
|
||||
|
||||
Вы можете легко заблокировать телефонные номера, чтобы избежать нежелательных входящих звонков.
|
||||
|
||||
Чтобы избежать отображения потенциально нежелательных контактов, приложение имеет мощную встроенную функцию слияния дубликатов контактов.
|
||||
|
||||
Приложение выпускается с материальным дизайном и тёмной темой по умолчанию, что обеспечивает удобное использование. Отсутствие доступа в интернет обеспечивает вам больше приватности, безопасности и стабильности, чем в других приложениях.
|
||||
|
||||
Не содержит рекламы или ненужных разрешений, полностью с открытым исходным кодом. Есть возможность настраивать цвета интерфейса.
|
||||
|
||||
<b>Ознакомьтесь с полным набором приложений серии Simple здесь:</b>
|
||||
https://www.simplemobiletools.com
|
||||
|
||||
<b>Сайт приложения Simple Contacts Pro:</b>
|
||||
https://www.simplemobiletools.com/contacts
|
||||
|
||||
<b>Facebook:</b>
|
||||
https://www.facebook.com/simplemobiletools
|
||||
|
||||
<b>Reddit:</b>
|
||||
https://www.reddit.com/r/SimpleMobileTools
|
||||
|
Reference in New Issue
Block a user