<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingHorizontal="@dimen/bubble_horizontal_padding"
        android:paddingVertical="@dimen/bubble_vertical_padding">

        <com.google.android.material.imageview.ShapeableImageView
            android:id="@+id/message_photo"
            android:layout_width="@dimen/bubble_avatar_size"
            android:layout_height="@dimen/bubble_avatar_size"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@id/message_box"
            android:layout_marginEnd="0dp"
            android:scaleType="centerCrop"
            app:shapeAppearance="@style/ShapeAppearanceOverlay.Photo" />

        <!-- TODO port app:layout_constraintWidth_max="@dimen/message_bubble_max_width" from c3 -->
        <LinearLayout
            android:id="@+id/message_box"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="6dp"
            android:background="@drawable/message_bubble_received"
            android:backgroundTint="?colorTertiaryContainer"
            android:longClickable="true"
            android:minHeight="@dimen/bubble_avatar_size"
            app:layout_constrainedWidth="true"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toEndOf="@id/message_photo"
            app:layout_constraintTop_toTopOf="parent">

            <LinearLayout
                android:id="@+id/message_box_inner"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:gravity="center_vertical"
                android:orientation="vertical">

                <include
                    android:id="@+id/message_content"
                    layout="@layout/item_message_content" />

                <com.wefika.flowlayout.FlowLayout
                    android:id="@+id/status_line"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="start"
                    android:layout_marginHorizontal="10dp"
                    android:layout_marginVertical="4dp"
                    android:orientation="horizontal">

                    <TextView
                        android:id="@+id/message_subject"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginRight="4sp"
                        android:accessibilityTraversalAfter="@id/message_photo"
                        android:accessibilityTraversalBefore="@id/message_time"
                        android:gravity="center_vertical"
                        android:textAppearance="?textAppearanceLabelSmall"
                        android:textColor="?colorOnTertiaryContainer"
                        android:visibility="gone" />

                    <TextView
                        android:id="@+id/message_encryption"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:layout_marginEnd="4sp"
                        android:gravity="center_vertical"
                        android:textAppearance="?textAppearanceBodySmall"
                        android:textColor="?colorOnTertiaryContainer"
                        tools:text="@string/not_trusted" />

                    <ImageView
                        android:id="@+id/security_indicator"
                        android:layout_width="12sp"
                        android:layout_height="12sp"
                        android:layout_gravity="center_vertical"
                        android:layout_marginEnd="4sp"
                        android:gravity="center_vertical"
                        android:src="@drawable/ic_lock_24dp"
                        app:tint="?colorOnTertiaryContainer" />

                    <ImageView
                        android:id="@+id/edit_indicator"
                        android:layout_width="12sp"
                        android:layout_height="12sp"
                        android:layout_gravity="center_vertical"
                        android:layout_marginEnd="4sp"
                        android:gravity="center_vertical"
                        android:src="@drawable/ic_edit_24dp"
                        app:tint="?colorOnTertiaryContainer" />

                    <ImageView
                        android:id="@+id/indicator_received"
                        android:layout_width="16sp"
                        android:layout_height="16sp"
                        android:layout_gravity="center_vertical"
                        android:layout_marginEnd="4sp"
                        android:gravity="center_vertical"
                        android:src="@drawable/ic_done_24dp"
                        app:tint="?colorOnTertiaryContainer" />

                    <com.lelloman.identicon.view.GithubIdenticonView
                        android:id="@+id/thread_identicon"
                        android:background="@drawable/ic_thread"
                        android:visibility="gone"
                        android:layout_width="9dp"
                        android:layout_height="9dp"
                        android:layout_gravity="center_vertical"
                        android:layout_marginEnd="4sp"
                        android:layout_marginBottom="-1dp" />

                    <TextView
                        android:id="@+id/message_time"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:accessibilityTraversalAfter="@id/message_photo"
                        android:accessibilityTraversalBefore="@id/message_content"
                        android:gravity="center_vertical"
                        android:textAppearance="?textAppearanceBodySmall"
                        android:textColor="?colorOnTertiaryContainer"
                        tools:text="10:42" />
                </com.wefika.flowlayout.FlowLayout>
            </LinearLayout>
        </LinearLayout>

        <Space
            android:id="@+id/reactions_anchor"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginBottom="12dp"
            app:layout_constraintBottom_toBottomOf="@+id/message_box"
            app:layout_constraintStart_toStartOf="@+id/message_box" />

        <com.google.android.material.chip.ChipGroup
            android:id="@+id/reactions"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="7dp"
            android:orientation="horizontal"
            android:visibility="visible"
            app:chipSpacingHorizontal="2dp"
            app:chipSpacingVertical="4dp"
            app:layout_constrainedWidth="true"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="@+id/message_box"
            app:layout_constraintTop_toBottomOf="@+id/reactions_anchor" />
    </androidx.constraintlayout.widget.ConstraintLayout>
</layout>
