<?xml version="1.0" encoding="utf-8"?><!--
    Copyright 2021 Thomas Schneider

    This file is a part of Fedilab

    This program is free software; you can redistribute it and/or modify it under the terms of the
    GNU General Public License as published by the Free Software Foundation; either version 3 of the
    License, or (at your option) any later version.

    Fedilab is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
    the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
    Public License for more details.

    You should have received a copy of the GNU General Public License along with Fedilab; if not,
    see <http://www.gnu.org/licenses>
-->
<com.google.android.material.card.MaterialCardView 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"
    android:id="@+id/cardview_container"
    style="@style/Widget.Material3.CardView.Elevated"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginHorizontal="6dp"
    android:layout_marginTop="6dp"
    android:clipChildren="false"
    android:clipToPadding="false">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:clipToPadding="false"
        android:orientation="vertical">

        <androidx.core.widget.NestedScrollView
            android:id="@+id/laTexView_container"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:visibility="gone"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent">

        </androidx.core.widget.NestedScrollView>


        <com.google.android.material.textfield.MaterialAutoCompleteTextView
            android:id="@+id/content_spoiler"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="6dp"
            android:layout_marginTop="6dp"
            android:hint="@string/eg_sensitive_content"
            android:inputType="textMultiLine|textCapSentences"
            android:singleLine="true"
            android:visibility="gone"
            app:layout_constraintEnd_toStartOf="@id/button_emoji"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/laTexView_container"
            tools:visibility="visible" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/add_remove_status"
            style="@style/Fedilab.SmallIconButton"
            android:layout_marginTop="6dp"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/add_status"
            app:icon="@drawable/ic_compose_thread_add_status"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/laTexView_container" />

        <app.fedilab.android.mastodon.helper.FedilabAutoCompleteTextView
            android:id="@+id/content"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="6dp"
            android:focusable="true"
            android:gravity="top|start"
            android:inputType="textMultiLine|textCapSentences"
            android:minLines="10"
            app:layout_constraintEnd_toStartOf="@id/button_emoji"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@id/content_spoiler" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_emoji"
            style="@style/Fedilab.SmallIconButton"
            app:layout_goneMarginTop="48dp"
            android:layout_marginTop="6dp"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/emoji_picker"
            app:icon="@drawable/ic_compose_emoji"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/add_remove_status" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_emoji_one"
            style="@style/Fedilab.SmallIconButton"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/emoji_picker"
            android:visibility="gone"
            app:icon="@drawable/ic_baseline_insert_emoticon_24"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/button_emoji"
            tools:visibility="visible" />


        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_text_format"
            style="@style/Fedilab.SmallIconButton"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/post_format"
            android:visibility="gone"
            app:icon="@drawable/ic_baseline_format_size_24"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/button_emoji_one"
            tools:visibility="visible" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_maths_composer"
            style="@style/Fedilab.SmallIconButton"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/maths_format"
            android:visibility="gone"
            app:icon="@drawable/ic_baseline_functions_24"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/button_text_format"
            tools:visibility="visible" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_local_only"
            style="@style/Fedilab.SmallIconButton"
            android:layout_marginEnd="6dp"
            android:contentDescription="@string/local_only"
            android:visibility="gone"
            app:icon="@drawable/ic_baseline_remove_red_eye_24"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/button_maths_composer"
            tools:visibility="visible" />

        <com.google.android.material.checkbox.MaterialCheckBox
            android:id="@+id/sensitive_media"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginHorizontal="6dp"
            android:layout_marginTop="6dp"
            android:minHeight="36dp"
            android:text="@string/toot_sensitive"
            android:visibility="gone"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintHorizontal_bias="0"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@id/content"
            app:layout_constraintWidth_default="wrap" />

        <HorizontalScrollView
            android:id="@+id/attachments_list_container"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginHorizontal="6dp"
            app:layout_constraintTop_toBottomOf="@id/sensitive_media">

            <androidx.appcompat.widget.LinearLayoutCompat
                android:id="@+id/attachments_list"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:clipToPadding="false"
                android:paddingEnd="6dp"
                tools:ignore="RtlSymmetry" />

        </HorizontalScrollView>

        <com.google.android.material.divider.MaterialDivider
            android:id="@+id/text_area_divider"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginHorizontal="6dp"
            app:layout_constraintTop_toBottomOf="@id/attachments_list_container" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_attach"
            style="@style/Widget.Material3.Button.IconButton.Outlined"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginVertical="6dp"
            android:layout_marginStart="6dp"
            app:icon="@drawable/ic_compose_attach"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_sensitive"
            style="@style/Widget.Material3.Button.IconButton.Outlined"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginVertical="6dp"
            android:checkable="true"
            app:icon="@drawable/ic_compose_sensitive"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintStart_toEndOf="@id/button_attach"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider"
            app:toggleCheckedStateOnClick="true" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_visibility"
            style="@style/Widget.Material3.Button.IconButton.Outlined"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginVertical="6dp"
            app:icon="@drawable/ic_compose_visibility_public"
            app:iconGravity="textStart"
            app:iconPadding="0dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintStart_toEndOf="@id/button_sensitive"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_language"
            style="@style/Widget.Material3.Button.TextButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginVertical="6dp"
            android:fontFamily="monospace"
            android:minWidth="72dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintStart_toEndOf="@id/button_visibility"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider"
            tools:text="EN" />

        <com.google.android.material.textview.MaterialTextView
            android:id="@+id/character_count"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="6dp"
            android:text="0"
            app:layout_constraintBottom_toTopOf="@id/character_progress"
            app:layout_constraintEnd_toStartOf="@id/button_post"
            app:layout_constraintStart_toEndOf="@id/button_language"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider"
            app:layout_constraintVertical_chainStyle="packed"
            tools:ignore="HardcodedText" />

        <ProgressBar
            android:id="@+id/character_progress"
            style="@style/Widget.AppCompat.ProgressBar.Horizontal"
            android:layout_width="48dp"
            android:layout_height="12dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@id/button_post"
            app:layout_constraintStart_toEndOf="@id/button_language"
            app:layout_constraintTop_toBottomOf="@id/character_count" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_post"
            style="@style/Widget.Material3.Button.IconButton.Filled"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginVertical="6dp"
            android:layout_marginEnd="6dp"
            app:icon="@drawable/ic_compose_post"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toBottomOf="@id/text_area_divider" />

        <androidx.constraintlayout.helper.widget.Flow
            android:id="@+id/attachment_choices_panel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/bg_compose_panels"
            android:padding="6dp"
            android:visibility="gone"
            app:constraint_referenced_ids="button_attach_image,button_attach_audio,button_attach_video,button_close_attachment_panel,button_poll,button_attach_manual"
            app:flow_maxElementsWrap="3"
            app:flow_wrapMode="aligned"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintStart_toStartOf="parent" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_attach_image"
            style="@style/Widget.Material3.Button.IconButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_compose_attach_image" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_attach_audio"
            style="@style/Widget.Material3.Button.IconButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_compose_attach_audio" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_attach_video"
            style="@style/Widget.Material3.Button.IconButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_compose_attach_video" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_close_attachment_panel"
            style="@style/Widget.Material3.Button.IconButton.Outlined"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_baseline_close_24" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_poll"
            style="@style/Widget.Material3.Button.IconButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_compose_poll" />

        <com.google.android.material.button.MaterialButton
            android:id="@+id/button_attach_manual"
            style="@style/Widget.Material3.Button.IconButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:icon="@drawable/ic_compose_attach_more" />

        <androidx.appcompat.widget.LinearLayoutCompat
            android:id="@+id/visibility_panel"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/bg_compose_panels"
            android:gravity="bottom"
            android:orientation="vertical"
            android:padding="6dp"
            android:visibility="gone"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintVertical_bias="1">

            <com.google.android.material.button.MaterialButtonToggleGroup
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:id="@+id/visibility_group"
                android:padding="6dp"
                app:singleSelection="true">

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/button_visibility_direct"
                    style="@style/Widget.Material3.Button.OutlinedButton"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:insetTop="0dp"
                    android:insetBottom="0dp"
                    android:minHeight="36dp"
                    android:text="@string/v_direct"
                    android:textAlignment="textStart"
                    app:icon="@drawable/ic_compose_visibility_direct" />

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/button_visibility_private"
                    style="@style/Widget.Material3.Button.OutlinedButton"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:insetTop="0dp"
                    android:insetBottom="0dp"
                    android:minHeight="36dp"
                    android:text="@string/followers_only"
                    android:textAlignment="textStart"
                    app:icon="@drawable/ic_compose_visibility_private" />

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/button_visibility_unlisted"
                    style="@style/Widget.Material3.Button.OutlinedButton"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:insetTop="0dp"
                    android:insetBottom="0dp"
                    android:minHeight="36dp"
                    android:text="@string/v_unlisted"
                    android:textAlignment="textStart"
                    app:icon="@drawable/ic_compose_visibility_unlisted" />

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/button_visibility_public"
                    style="@style/Widget.Material3.Button.OutlinedButton"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:insetTop="0dp"
                    android:insetBottom="0dp"
                    android:minHeight="36dp"
                    android:text="@string/v_public"
                    android:textAlignment="textStart"
                    app:icon="@drawable/ic_compose_visibility_public" />

            </com.google.android.material.button.MaterialButtonToggleGroup>

            <com.google.android.material.button.MaterialButton
                android:id="@+id/button_close_visibility_panel"
                style="@style/Widget.Material3.Button.IconButton.Outlined"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="96dp"
                app:icon="@drawable/ic_baseline_close_24" />

        </androidx.appcompat.widget.LinearLayoutCompat>

    </androidx.constraintlayout.widget.ConstraintLayout>

</com.google.android.material.card.MaterialCardView>
