mirror of
https://github.com/oxen-io/session-android.git
synced 2024-11-28 20:45:17 +00:00
Fixed up legacy group banner
This commit is contained in:
parent
ea714a60a2
commit
5cc57fc225
@ -92,8 +92,11 @@ import org.session.libsession.utilities.GroupUtil
|
|||||||
import org.session.libsession.utilities.MediaTypes
|
import org.session.libsession.utilities.MediaTypes
|
||||||
import org.session.libsession.utilities.StringSubstitutionConstants.APP_NAME_KEY
|
import org.session.libsession.utilities.StringSubstitutionConstants.APP_NAME_KEY
|
||||||
import org.session.libsession.utilities.StringSubstitutionConstants.CONVERSATION_NAME_KEY
|
import org.session.libsession.utilities.StringSubstitutionConstants.CONVERSATION_NAME_KEY
|
||||||
|
import org.session.libsession.utilities.StringSubstitutionConstants.DATE_KEY
|
||||||
|
import org.session.libsession.utilities.StringSubstitutionConstants.DATE_TIME_KEY
|
||||||
import org.session.libsession.utilities.StringSubstitutionConstants.GROUP_NAME_KEY
|
import org.session.libsession.utilities.StringSubstitutionConstants.GROUP_NAME_KEY
|
||||||
import org.session.libsession.utilities.StringSubstitutionConstants.NAME_KEY
|
import org.session.libsession.utilities.StringSubstitutionConstants.NAME_KEY
|
||||||
|
import org.session.libsession.utilities.StringSubstitutionConstants.URL_KEY
|
||||||
import org.session.libsession.utilities.Stub
|
import org.session.libsession.utilities.Stub
|
||||||
import org.session.libsession.utilities.TextSecurePreferences
|
import org.session.libsession.utilities.TextSecurePreferences
|
||||||
import org.session.libsession.utilities.concurrent.SimpleTask
|
import org.session.libsession.utilities.concurrent.SimpleTask
|
||||||
@ -176,6 +179,7 @@ import org.thoughtcrime.securesms.mms.MediaConstraints
|
|||||||
import org.thoughtcrime.securesms.mms.Slide
|
import org.thoughtcrime.securesms.mms.Slide
|
||||||
import org.thoughtcrime.securesms.mms.SlideDeck
|
import org.thoughtcrime.securesms.mms.SlideDeck
|
||||||
import org.thoughtcrime.securesms.mms.VideoSlide
|
import org.thoughtcrime.securesms.mms.VideoSlide
|
||||||
|
import org.thoughtcrime.securesms.openUrl
|
||||||
import org.thoughtcrime.securesms.permissions.Permissions
|
import org.thoughtcrime.securesms.permissions.Permissions
|
||||||
import org.thoughtcrime.securesms.reactions.ReactionsDialogFragment
|
import org.thoughtcrime.securesms.reactions.ReactionsDialogFragment
|
||||||
import org.thoughtcrime.securesms.reactions.any.ReactWithAnyEmojiDialogFragment
|
import org.thoughtcrime.securesms.reactions.any.ReactWithAnyEmojiDialogFragment
|
||||||
@ -822,25 +826,38 @@ class ConversationActivityV2 : PassphraseRequiredActionBarActivity(), InputBarDe
|
|||||||
binding.outdatedDisappearingBanner.isVisible = shouldShowLegacy
|
binding.outdatedDisappearingBanner.isVisible = shouldShowLegacy
|
||||||
if (shouldShowLegacy) {
|
if (shouldShowLegacy) {
|
||||||
|
|
||||||
val txt = Phrase.from(applicationContext, R.string.disappearingMessagesLegacy)
|
val txt = Phrase.from(this, R.string.disappearingMessagesLegacy)
|
||||||
.put(NAME_KEY, legacyRecipient!!.toShortString())
|
.put(NAME_KEY, legacyRecipient!!.toShortString())
|
||||||
.format()
|
.format()
|
||||||
binding.outdatedBannerTextView.text = txt
|
binding.outdatedDisappearingBannerTextView.text = txt
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setUpLegacyGroupBanner() {
|
private fun setUpLegacyGroupBanner() {
|
||||||
val shouldDisplayBanner = viewModel.recipient?.isLegacyGroupRecipient ?: return
|
val shouldDisplayBanner = viewModel.recipient?.isLegacyGroupRecipient ?: return
|
||||||
|
|
||||||
|
//TODO groupsv2, URL
|
||||||
|
val url = "https://getsession.org"
|
||||||
|
|
||||||
with(binding) {
|
with(binding) {
|
||||||
outdatedGroupBanner.isVisible = shouldDisplayBanner
|
outdatedGroupBanner.isVisible = shouldDisplayBanner
|
||||||
|
outdatedGroupBanner.text = Phrase.from(this@ConversationActivityV2, R.string.groupLegacyBanner)
|
||||||
|
//TODO groupsv2, date
|
||||||
|
.put(DATE_KEY, "")
|
||||||
|
.format()
|
||||||
outdatedGroupBanner.setOnClickListener {
|
outdatedGroupBanner.setOnClickListener {
|
||||||
showSessionDialog {
|
showSessionDialog {
|
||||||
title(R.string.urlOpenBrowser)
|
title(R.string.urlOpenBrowser)
|
||||||
text(R.string.urlOpenDescription)
|
text(Phrase.from(this@ConversationActivityV2, R.string.urlOpenDescription)
|
||||||
|
.put(URL_KEY, url)
|
||||||
|
.format())
|
||||||
cancelButton()
|
cancelButton()
|
||||||
dangerButton(R.string.open) {
|
dangerButton(R.string.open) {
|
||||||
// open the URL (tbc)
|
try {
|
||||||
|
openUrl(url)
|
||||||
|
} catch (e: Exception) {
|
||||||
|
Log.e(TAG, "Error opening URL", e)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
app:layout_constraintTop_toTopOf="parent"
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
app:layout_constraintBottom_toTopOf="@+id/conversationRecyclerView"
|
app:layout_constraintBottom_toTopOf="@+id/conversationRecyclerView"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintVertical_bias="0"
|
||||||
android:theme="@style/Widget.Session.ActionBar.Flat"
|
android:theme="@style/Widget.Session.ActionBar.Flat"
|
||||||
android:background="?colorPrimary"
|
android:background="?colorPrimary"
|
||||||
app:contentInsetStart="0dp">
|
app:contentInsetStart="0dp">
|
||||||
@ -39,7 +40,7 @@
|
|||||||
app:layout_constraintVertical_weight="1"
|
app:layout_constraintVertical_weight="1"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintBottom_toTopOf="@+id/typingIndicatorViewContainer"
|
app:layout_constraintBottom_toTopOf="@+id/typingIndicatorViewContainer"
|
||||||
app:layout_constraintTop_toBottomOf="@id/toolbar" />
|
app:layout_constraintTop_toBottomOf="@id/outdatedGroupBanner" />
|
||||||
|
|
||||||
<org.thoughtcrime.securesms.conversation.v2.components.TypingIndicatorViewContainer
|
<org.thoughtcrime.securesms.conversation.v2.components.TypingIndicatorViewContainer
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
@ -270,38 +271,21 @@
|
|||||||
|
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
<FrameLayout
|
<TextView
|
||||||
android:id="@+id/outdatedGroupBanner"
|
android:id="@+id/outdatedGroupBanner"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/blockedBanner"
|
|
||||||
android:background="@color/outdated_client_banner_background_color"
|
|
||||||
android:paddingHorizontal="2dp"
|
|
||||||
android:contentDescription="@string/AccessibilityId_outdated_group_banner"
|
|
||||||
android:visibility="gone">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/outdatedBannerTextView"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:layout_marginVertical="@dimen/very_small_spacing"
|
app:layout_constraintTop_toBottomOf="@+id/outdatedDisappearingBanner"
|
||||||
|
android:background="@color/outdated_client_banner_background_color"
|
||||||
|
android:paddingVertical="@dimen/very_small_spacing"
|
||||||
android:gravity="center_horizontal"
|
android:gravity="center_horizontal"
|
||||||
android:textColor="@color/black"
|
android:textColor="@color/black"
|
||||||
android:layout_marginHorizontal="@dimen/large_spacing"
|
android:paddingHorizontal="@dimen/medium_spacing"
|
||||||
|
android:contentDescription="@string/AccessibilityId_outdated_group_banner"
|
||||||
android:textSize="@dimen/tiny_font_size"
|
android:textSize="@dimen/tiny_font_size"
|
||||||
android:text="@string/groupLegacyBanner"
|
tools:text="@string/groupLegacyBanner"
|
||||||
/>
|
app:drawableEndCompat="@drawable/ic_link_out" />
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:layout_gravity="end|center_vertical"
|
|
||||||
android:layout_margin="@dimen/small_spacing"
|
|
||||||
android:layout_width="@dimen/medium_spacing"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:src="@drawable/ic_link_out"/>
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:padding="@dimen/medium_spacing"
|
android:padding="@dimen/medium_spacing"
|
||||||
@ -312,7 +296,7 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="@dimen/large_spacing"
|
android:layout_marginHorizontal="@dimen/large_spacing"
|
||||||
app:layout_constraintTop_toBottomOf="@+id/outdatedDisappearingBanner"
|
app:layout_constraintTop_toBottomOf="@+id/outdatedGroupBanner"
|
||||||
android:contentDescription="@string/AccessibilityId_control_message"
|
android:contentDescription="@string/AccessibilityId_control_message"
|
||||||
tools:text="Some Control Message Text"
|
tools:text="Some Control Message Text"
|
||||||
/>
|
/>
|
||||||
@ -383,10 +367,11 @@
|
|||||||
|
|
||||||
<androidx.compose.ui.platform.ComposeView
|
<androidx.compose.ui.platform.ComposeView
|
||||||
android:id="@+id/dialog_open_url"
|
android:id="@+id/dialog_open_url"
|
||||||
|
tools:visibility="gone"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent" />
|
android:layout_height="match_parent" />
|
||||||
|
|
||||||
<RelativeLayout
|
<FrameLayout
|
||||||
android:id="@+id/loader"
|
android:id="@+id/loader"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
@ -399,10 +384,10 @@
|
|||||||
style="@style/SpinKitView.Large.ThreeBounce"
|
style="@style/SpinKitView.Large.ThreeBounce"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_centerInParent="true"
|
android:layout_gravity="center"
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
app:SpinKit_Color="@android:color/white" />
|
app:SpinKit_Color="@android:color/white" />
|
||||||
|
|
||||||
</RelativeLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
@ -11,6 +11,7 @@ object StringSubstitutionConstants {
|
|||||||
const val CONVERSATION_NAME_KEY = "conversation_name"
|
const val CONVERSATION_NAME_KEY = "conversation_name"
|
||||||
const val COUNT_KEY = "count"
|
const val COUNT_KEY = "count"
|
||||||
const val DATE_TIME_KEY = "date_time"
|
const val DATE_TIME_KEY = "date_time"
|
||||||
|
const val DATE_KEY = "date"
|
||||||
const val DISAPPEARING_MESSAGES_TYPE_KEY = "disappearing_messages_type"
|
const val DISAPPEARING_MESSAGES_TYPE_KEY = "disappearing_messages_type"
|
||||||
const val DOWNLOAD_URL_KEY = "session_download_url" // Used to invite people to download Session
|
const val DOWNLOAD_URL_KEY = "session_download_url" // Used to invite people to download Session
|
||||||
const val EMOJI_KEY = "emoji"
|
const val EMOJI_KEY = "emoji"
|
||||||
|
Loading…
Reference in New Issue
Block a user