diff --git a/app/src/main/java/org/thoughtcrime/securesms/preferences/SettingsActivity.kt b/app/src/main/java/org/thoughtcrime/securesms/preferences/SettingsActivity.kt index 6b6497982d..5a03cebc37 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/preferences/SettingsActivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/preferences/SettingsActivity.kt @@ -26,8 +26,10 @@ import nl.komponents.kovenant.all import nl.komponents.kovenant.ui.alwaysUi import nl.komponents.kovenant.ui.successUi import org.session.libsession.avatars.AvatarHelper +import org.session.libsession.avatars.ProfileContactPhoto import org.session.libsession.utilities.* import org.session.libsession.utilities.SSKEnvironment.ProfileManagerProtocol +import org.session.libsession.utilities.recipients.Recipient import org.thoughtcrime.securesms.PassphraseRequiredActionBarActivity import org.thoughtcrime.securesms.avatar.AvatarSelection import org.thoughtcrime.securesms.components.ProfilePictureView @@ -100,10 +102,12 @@ class SettingsActivity : PassphraseRequiredActionBarActivity() { private fun setupProfilePictureView(view: ProfilePictureView) { view.glide = glide - view.publicKey = hexEncodedPublicKey - view.displayName = getDisplayName() - view.isLarge = true - view.update() + view.apply { + publicKey = hexEncodedPublicKey + displayName = getDisplayName() + isLarge = true + update() + } } override fun onSaveInstanceState(outState: Bundle) { @@ -273,7 +277,17 @@ class SettingsActivity : PassphraseRequiredActionBarActivity() { } } .show().apply { - findViewById(R.id.profile_picture_view)?.let(::setupProfilePictureView) + val profilePic = findViewById(R.id.profile_picture_view) + ?.also(::setupProfilePictureView) + + val pictureIcon = findViewById(R.id.ic_pictures) + + val recipient = Recipient.from(context, Address.fromSerialized(hexEncodedPublicKey), false) + + val photoSet = (recipient.contactPhoto as ProfileContactPhoto).avatarObject !in setOf("0", "") + + profilePic?.isVisible = photoSet + pictureIcon?.isVisible = !photoSet } } diff --git a/app/src/main/res/drawable/ic_pictures.xml b/app/src/main/res/drawable/ic_pictures.xml new file mode 100644 index 0000000000..967d0a65b0 --- /dev/null +++ b/app/src/main/res/drawable/ic_pictures.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/app/src/main/res/drawable/profile_picture_view_large_background.xml b/app/src/main/res/drawable/profile_picture_view_large_background.xml index 278d70901f..9b90660803 100644 --- a/app/src/main/res/drawable/profile_picture_view_large_background.xml +++ b/app/src/main/res/drawable/profile_picture_view_large_background.xml @@ -5,5 +5,5 @@ - + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_change_avatar.xml b/app/src/main/res/layout/dialog_change_avatar.xml index afe3672f15..2eb8adeebc 100644 --- a/app/src/main/res/layout/dialog_change_avatar.xml +++ b/app/src/main/res/layout/dialog_change_avatar.xml @@ -2,9 +2,48 @@ + + + + + + + + + + + + android:contentDescription="@string/AccessibilityId_profile_picture" + tools:visibility="gone"/> diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 9305d48801..d8aedf3dea 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -28,6 +28,7 @@ + diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index a28637306b..99e0aa197f 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -18,7 +18,7 @@ 26dp 36dp 46dp - 76dp + 80dp 14dp 1dp 60dp diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 59525f7844..1bcb30afc3 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -54,6 +54,7 @@ @drawable/ic_outline_pin_off_24 @drawable/ic_outline_mark_chat_read_24 @drawable/ic_chevron_up_light + ?colorAccent ?colorAccent @drawable/ic_document_small_dark @drawable/ic_document_large_dark @@ -342,6 +343,7 @@ @null @style/ThemeOverlay.AppCompat.Dark.ActionBar @style/Widget.Session.ActionBar + ?colorAccent ?colorAccent @color/classic_dark_3 @@ -417,6 +419,7 @@ @null @style/ThemeOverlay.AppCompat.ActionBar @style/Widget.Session.ActionBar + ?colorAccent ?android:textColorPrimary @color/classic_light_3 @@ -503,6 +506,7 @@ @null @style/ThemeOverlay.AppCompat.Dark.ActionBar @style/Widget.Session.ActionBar + ?colorAccent ?colorAccent @color/ocean_dark_4 @@ -583,6 +587,7 @@ @null @style/ThemeOverlay.AppCompat.ActionBar @style/Widget.Session.ActionBar + ?colorAccent ?android:textColorPrimary @color/ocean_light_3