Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/bitfireAT/vcard4android.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt')
-rw-r--r--src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt20
1 files changed, 6 insertions, 14 deletions
diff --git a/src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt b/src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt
index 82992fc..c593bce 100644
--- a/src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt
+++ b/src/main/java/at/bitfire/vcard4android/contactrow/StructuredPostalBuilder.kt
@@ -14,20 +14,6 @@ import java.util.*
/**
* Data row builder for structured addresses.
- *
- * Android requires a formatted address. If the contact data doesn't contain a
- * formatted address, it's built like this:
- *
- * | field | example |
- * |-------------------|------------------------------|
- * | street | Sample Street 123 |
- * | poBox | P/O Box 45 |
- * | extended | Near the park |
- * | postalCode city | 12345 Sampletown |
- * | country (region) | Samplecountry (Sampleregion) |
- *
- * TODO: should be localized (there are many different international formats)
- *
*/
class StructuredPostalBuilder(dataRowUri: Uri, rawContactId: Long?, contact: Contact)
: DataRowBuilder(Factory.mimeType(), dataRowUri, rawContactId, contact) {
@@ -37,6 +23,12 @@ class StructuredPostalBuilder(dataRowUri: Uri, rawContactId: Long?, contact: Con
for (labeledAddress in contact.addresses) {
val address = labeledAddress.property
+ /* Generate the formatted address (the one contacts app show in the preview) in European format.
+ *
+ * If we wouldn't do that, the content provider would format it US-EN or JP style:
+ * https://android.googlesource.com/platform/packages/providers/ContactsProvider.git/+/refs/heads/android13-release/src/com/android/providers/contacts/PostalSplitter.java#84
+ *
+ * Could be localized here (but it's still only for viewing the contact on Android and won't be put into a vCard). */
var formattedAddress = address.label
if (formattedAddress.isNullOrBlank()) {
val lines = LinkedList<String>()