Fixed bubble UI when scrolling after a voice record has been displayed

This commit is contained in:
Sylvain Berfini 2023-11-27 09:34:33 +01:00
parent 39b8358ef5
commit 9094a167eb
5 changed files with 20 additions and 7 deletions

View file

@ -70,7 +70,7 @@ android {
}
dependencies {
implementation "androidx.activity:activity-ktx:1.8.0"
implementation "androidx.activity:activity-ktx:1.8.1"
implementation "androidx.annotation:annotation:1.7.0"
implementation "androidx.appcompat:appcompat:1.7.0-alpha03"
implementation "androidx.constraintlayout:constraintlayout:2.1.4"
@ -81,7 +81,7 @@ dependencies {
implementation "androidx.fragment:fragment-ktx:1.6.2"
implementation "androidx.recyclerview:recyclerview:1.3.2"
implementation "androidx.slidingpanelayout:slidingpanelayout:1.2.0"
implementation "androidx.window:window:1.1.0"
implementation "androidx.window:window:1.2.0"
def nav_version = "2.7.5"
implementation "androidx.navigation:navigation-fragment-ktx:$nav_version"

View file

@ -173,16 +173,18 @@
android:id="@+id/meeting_info"
android:layout_width="@dimen/chat_bubble_meeting_invite_width"
android:layout_height="wrap_content"
android:visibility="@{model.meetingFound ? View.VISIBLE : View.GONE, default=gone}"
android:layout="@layout/chat_bubble_meeting_invite_content"
android:visibility="@{model.meetingFound ? View.VISIBLE : View.GONE, default=gone}"
bind:inflatedVisibility="@{model.meetingFound ? View.VISIBLE : View.GONE}"
bind:model="@{model}"/>
<ViewStub
android:id="@+id/voice_record"
android:layout_width="@dimen/chat_bubble_voice_record_width"
android:layout_height="wrap_content"
android:visibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE, default=gone}"
android:layout="@layout/chat_bubble_voice_record_content"
android:visibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE, default=gone}"
bind:inflatedVisibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE}"
bind:model="@{model}" />
<org.linphone.ui.main.chat.view.ChatBubbleTextView

View file

@ -7,12 +7,17 @@
<variable
name="model"
type="org.linphone.ui.main.chat.model.ChatMessageModel" />
<variable
name="inflatedVisibility"
type="Integer" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="@dimen/chat_bubble_meeting_invite_width"
android:layout_height="wrap_content"
android:background="@drawable/shape_squircle_white_r10_background">
android:background="@drawable/shape_squircle_white_r10_background"
android:visibility="@{inflatedVisibility == View.VISIBLE ? View.VISIBLE : View.GONE}"
inflatedLifecycleOwner="@{true}">
<View
android:id="@+id/header_background"

View file

@ -135,16 +135,18 @@
android:id="@+id/meeting_info"
android:layout_width="@dimen/chat_bubble_meeting_invite_width"
android:layout_height="wrap_content"
android:visibility="@{model.meetingFound ? View.VISIBLE : View.GONE, default=gone}"
android:layout="@layout/chat_bubble_meeting_invite_content"
android:visibility="@{model.meetingFound ? View.VISIBLE : View.GONE, default=gone}"
bind:inflatedVisibility="@{model.meetingFound ? View.VISIBLE : View.GONE}"
bind:model="@{model}"/>
<ViewStub
android:id="@+id/voice_record"
android:layout_width="@dimen/chat_bubble_voice_record_width"
android:layout_height="wrap_content"
android:visibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE, default=gone}"
android:layout="@layout/chat_bubble_voice_record_content"
android:visibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE, default=gone}"
bind:inflatedVisibility="@{model.isVoiceRecord ? View.VISIBLE : View.GONE}"
bind:model="@{model}" />
<org.linphone.ui.main.chat.view.ChatBubbleTextView

View file

@ -8,11 +8,15 @@
<variable
name="model"
type="org.linphone.ui.main.chat.model.ChatMessageModel" />
<variable
name="inflatedVisibility"
type="Integer" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="@dimen/chat_bubble_voice_record_width"
android:layout_height="wrap_content"
android:visibility="@{inflatedVisibility == View.VISIBLE ? View.VISIBLE : View.GONE}"
inflatedLifecycleOwner="@{true}">
<ProgressBar