1
0
Fork 0
mirror of https://github.com/KokaKiwi/BarInsta synced 2026-03-05 12:01:35 +00:00

Update DM settings page

This commit is contained in:
Ammar Githam 2021-01-03 18:55:19 +09:00
parent 093ccc9f00
commit e1d8e02630
44 changed files with 2764 additions and 466 deletions

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/blue_400" android:state_selected="true" />
<item android:color="?colorControlNormal" />
</selector>

View file

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="1dp"
android:left="-2dp"
android:right="-2dp"
android:top="-2dp">
<shape android:shape="rectangle">
<stroke
android:width="1dp"
android:color="?colorControlNormal" />
<solid android:color="#00FFFFFF" />
<!--<padding android:left="0dp"-->
<!-- android:right="0dp"-->
<!-- android:top="0dp"-->
<!-- android:bottom="0dp" />-->
</shape>
</item>
</layer-list>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_round_check_circle_24" android:state_selected="true" />
<item android:drawable="@drawable/ic_radio_button_unchecked_24" />
</selector>

View file

@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorControlNormal">
<path
android:fillColor="@android:color/white"
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8z"/>
</vector>

View file

@ -0,0 +1,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorControlNormal">
<path
android:fillColor="@android:color/white"
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM9.29,16.29L5.7,12.7c-0.39,-0.39 -0.39,-1.02 0,-1.41 0.39,-0.39 1.02,-0.39 1.41,0L10,14.17l6.88,-6.88c0.39,-0.39 1.02,-0.39 1.41,0 0.39,0.39 0.39,1.02 0,1.41l-7.59,7.59c-0.38,0.39 -1.02,0.39 -1.41,0z"/>
</vector>

View file

@ -1,94 +1,154 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.coordinatorlayout.widget.CoordinatorLayout 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:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:focusableInTouchMode="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/titleText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="bottom"
android:importantForAutofill="no"
android:inputType="textMultiLine"
android:maxLength="2200"
android:maxLines="10"
android:paddingStart="8dp"
android:paddingLeft="8dp"
android:paddingEnd="4dp"
android:paddingRight="4dp"
android:scrollHorizontally="false" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/titleSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="?selectableItemBackgroundBorderless"
android:clickable="true"
android:focusable="true"
android:paddingStart="4dp"
android:paddingLeft="4dp"
android:paddingTop="4dp"
android:paddingEnd="8dp"
android:paddingRight="8dp"
android:paddingBottom="4dp"
android:visibility="gone"
app:srcCompat="@drawable/ic_submit" />
</LinearLayout>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btnLeave"
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:layout_marginStart="6dp"
android:layout_marginRight="8dp"
android:text="@string/dms_action_leave"
android:textColor="@color/btn_red_text_color"
android:textSize="18sp"
app:backgroundTint="@color/btn_red_background" />
android:background="@null"
android:elevation="0dp"
app:elevation="0dp">
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
android:id="@+id/swipeRefreshLayout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<androidx.core.widget.NestedScrollView
<com.google.android.material.appbar.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/settings_parent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/userList"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:nestedScrollingEnabled="false"/>
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/leftTitle"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/title_edit_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true"
android:hint="@string/title"
android:visibility="gone"
app:boxBackgroundColor="@android:color/transparent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:suffixText="@string/save"
app:suffixTextColor="@color/blue_600"
tools:visibility="visible">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/title_edit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autofillHints="no"
android:inputType="text"
android:maxLength="2200"
android:scrollHorizontally="false"
tools:text="test" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.button.MaterialButton
android:id="@+id/mute_messages_label"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center_vertical"
android:padding="5dp"
android:text="@string/dms_left_users"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:text="@string/mute_messages"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
android:textColor="?android:textColorPrimary"
android:textSize="24sp"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/leftUserList"
app:layout_constraintBottom_toBottomOf="@id/mute_messages"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/mute_messages" />
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/mute_messages"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="0dp"
android:paddingEnd="8dp"
app:layout_constraintBottom_toTopOf="@id/mute_mentions"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/title_edit_input_layout" />
<com.google.android.material.button.MaterialButton
android:id="@+id/mute_mentions_label"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center_vertical"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:text="@string/mute_mentions"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
android:textColor="?android:textColorPrimary"
app:layout_constraintBottom_toBottomOf="@id/mute_mentions"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/mute_mentions" />
<com.google.android.material.switchmaterial.SwitchMaterial
android:id="@+id/mute_mentions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="0dp"
android:paddingEnd="8dp"
app:layout_constraintBottom_toTopOf="@id/leave"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/mute_messages" />
<com.google.android.material.button.MaterialButton
android:id="@+id/leave"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:nestedScrollingEnabled="false"/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
</LinearLayout>
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:text="@string/dms_action_leave"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
android:textColor="@color/red_600"
app:layout_constraintBottom_toTopOf="@id/add_members"
app:layout_constraintTop_toBottomOf="@id/mute_mentions" />
<com.google.android.material.button.MaterialButton
android:id="@+id/add_members"
style="@style/Widget.MaterialComponents.Button.TextButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:text="@string/add_members"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1"
android:textColor="?android:textColorPrimary"
app:icon="@drawable/ic_add"
app:iconTint="?android:textColorPrimary"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/leave" />
<androidx.constraintlayout.widget.Group
android:id="@+id/group_settings"
android:layout_width="0dp"
android:layout_height="0dp"
app:constraint_referenced_ids="title_edit_input_layout, mute_mentions_label, mute_mentions, leave, add_members" />
</androidx.constraintlayout.widget.ConstraintLayout>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/users"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

View file

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent"
android:layout_height="match_parent"
android:focusableInTouchMode="true">
<com.google.android.material.chip.ChipGroup
android:id="@+id/group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_user_search_input"
android:padding="10dp"
app:layout_constraintBottom_toTopOf="@id/results"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/search"
android:layout_width="match_parent"
android:layout_height="48dp"
android:background="@android:color/transparent"
android:gravity="center_vertical"
android:hint="@string/search"
android:importantForAutofill="no"
android:inputType="textNoSuggestions"
android:maxLines="1"
tools:text="test" />
</com.google.android.material.chip.ChipGroup>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/results"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/done"
app:layout_constraintTop_toBottomOf="@id/group" />
<com.google.android.material.button.MaterialButton
android:id="@+id/done"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:text="@string/done"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/results"
tools:visibility="visible" />
</androidx.constraintlayout.widget.ConstraintLayout>

View file

@ -17,7 +17,6 @@
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_marginStart="66dp"
android:layout_marginLeft="66dp"
android:layout_marginEnd="26dp"
android:orientation="vertical">

View file

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent"
android:layout_height="72dp"
android:background="?android:selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingEnd="16dp">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/profile_pic"
android:layout_width="@dimen/dm_inbox_avatar_size"
android:layout_height="@dimen/dm_inbox_avatar_size"
app:actualImageScaleType="centerCrop"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/full_name"
app:layout_constraintHorizontal_chainStyle="spread_inside"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:roundAsCircle="true"
tools:background="@mipmap/ic_launcher" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/full_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:ellipsize="end"
android:gravity="bottom"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Subtitle1"
app:layout_constraintBottom_toTopOf="@id/username"
app:layout_constraintEnd_toStartOf="@id/info"
app:layout_constraintStart_toEndOf="@id/profile_pic"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_chainStyle="packed"
tools:text="Long name......................." />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:gravity="bottom"
android:paddingStart="4dp"
android:paddingEnd="0dp"
android:singleLine="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Caption"
android:textColor="@color/blue_400"
app:layout_constraintBaseline_toBaselineOf="@id/thread_title"
app:layout_constraintBottom_toTopOf="@id/username"
app:layout_constraintEnd_toStartOf="@id/select"
app:layout_constraintStart_toEndOf="@id/full_name"
app:layout_constraintTop_toTopOf="@id/full_name"
tools:text="Admin" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/username"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLines="1"
android:textAppearance="@style/TextAppearance.AppCompat.Caption"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/select"
app:layout_constraintStart_toStartOf="@id/full_name"
app:layout_constraintTop_toBottomOf="@id/full_name"
tools:text="username" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/select"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginStart="4dp"
android:duplicateParentState="true"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/profile_pic"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/info"
app:layout_constraintTop_toTopOf="@id/profile_pic"
app:srcCompat="@drawable/ic_circle_check"
app:tint="@color/ic_circle_check_tint"
tools:visibility="visible" />
<include
layout="@layout/item_pref_divider"
android:layout_width="0dp"
android:layout_height="1dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/thread_title" />
</androidx.constraintlayout.widget.ConstraintLayout>

View file

@ -73,14 +73,38 @@
<action
android:id="@+id/action_global_likesViewerFragment"
app:destination="@id/likes_nav_graph">
<argument
android:name="postId"
app:argType="string"
app:nullable="false" />
<argument
android:name="isComment"
app:argType="boolean"
app:nullable="false" />
<argument
android:name="postId"
app:argType="string"
app:nullable="false" />
<argument
android:name="isComment"
app:argType="boolean"
app:nullable="false" />
</action>
<include app:graph="@navigation/user_search_nav_graph" />
<action
android:id="@+id/action_global_user_search"
app:destination="@id/user_search_nav_graph">
<argument
android:name="multiple"
app:argType="boolean" />
<argument
android:name="title"
app:argType="string"
app:nullable="true" />
<argument
android:name="action_label"
app:argType="string"
app:nullable="true" />
<argument
android:name="hideUserIds"
app:argType="long[]" />
</action>
<fragment
@ -112,20 +136,23 @@
<fragment
android:id="@+id/directMessagesSettingsFragment"
android:name="awais.instagrabber.fragments.directmessages.DirectMessageSettingsFragment"
android:label="@string/action_settings"
android:label="@string/details"
tools:layout="@layout/fragment_direct_messages_settings">
<argument
android:name="threadId"
app:argType="string" />
<argument
android:name="title"
app:argType="string" />
<action
android:id="@+id/action_settings_to_inbox"
app:destination="@id/directMessagesInboxFragment"
app:popUpTo="@+id/directMessagesInboxFragment"
app:popUpToInclusive="true" />
</fragment>
<fragment
android:id="@+id/imageEditFragment"
android:name="awais.instagrabber.fragments.imageedit.ImageEditFragment"
tools:layout="@layout/fragment_image_edit"
android:label="Edit Photo">
android:label="Edit Photo"
tools:layout="@layout/fragment_image_edit">
<argument
android:name="uri"
app:argType="android.net.Uri"

View file

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/user_search_nav_graph"
app:startDestination="@id/user_search">
<fragment
android:id="@+id/user_search"
android:name="awais.instagrabber.fragments.UserSearchFragment"
android:label="@string/search">
<argument
android:name="multiple"
app:argType="boolean" />
<argument
android:name="title"
app:argType="string"
app:nullable="true" />
<argument
android:name="action_label"
app:argType="string"
app:nullable="true" />
<argument
android:name="hideUserIds"
app:argType="long[]" />
</fragment>
<!--<action
android:id="@+id/action_global_user_search"
app:destination="@id/user_search">
<argument
android:name="multiple"
app:argType="boolean" />
<argument
android:name="title"
app:argType="string"
app:nullable="true" />
<argument
android:name="action_label"
app:argType="string"
app:nullable="true" />
</action>-->
</navigation>

View file

@ -176,7 +176,7 @@
<string name="dms_inbox_raven_media_screenshot">Screenshotted</string>
<string name="dms_inbox_raven_media_cant_deliver">Cannot deliver</string>
<string name="dms_action_success">Great success!</string>
<string name="dms_action_leave">Leave</string>
<string name="dms_action_leave">Leave chat</string>
<string name="dms_action_leave_question">Leave this chat?</string>
<string name="dms_action_kick">Kick</string>
<string name="dms_left_users">Left users</string>
@ -378,4 +378,16 @@
<item quantity="other">%s stories</item>
</plurals>
<string name="download_permission">Storage permission not granted!</string>
<string name="details">Details</string>
<string name="title">Title</string>
<string name="members">Members</string>
<string name="admin">Admin</string>
<string name="inviter">Inviter</string>
<string name="mute_messages">Mute messages</string>
<string name="mute_mentions">Mute mentions</string>
<string name="add_members">Add members</string>
<string name="search">Search</string>
<string name="done">Done</string>
<string name="dms_action_make_admin">Make Admin</string>
<string name="dms_action_remove_admin">Remove as Admin</string>
</resources>