mirror of
https://github.com/KokaKiwi/BarInsta
synced 2026-03-14 08:21:35 +00:00
Add search fragment with recent searches
This commit is contained in:
parent
99431fd077
commit
c859669ac1
39 changed files with 2455 additions and 386 deletions
|
|
@ -32,7 +32,29 @@
|
|||
android:background="?attr/colorSurface"
|
||||
app:layout_collapseMode="pin"
|
||||
app:title="@string/app_name"
|
||||
tools:menu="@menu/main_menu" />
|
||||
tools:menu="@menu/main_menu">
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:id="@+id/search_input_layout"
|
||||
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
app:boxStrokeColor="@null"
|
||||
app:boxStrokeWidth="0dp"
|
||||
app:boxStrokeWidthFocused="0dp"
|
||||
app:endIconContentDescription="@string/clear"
|
||||
app:endIconDrawable="@drawable/ic_close_24"
|
||||
app:endIconMode="custom"
|
||||
app:hintEnabled="false"
|
||||
tools:visibility="visible">
|
||||
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/search" />
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
</com.google.android.material.appbar.MaterialToolbar>
|
||||
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
|
|
|
|||
|
|
@ -4,4 +4,4 @@
|
|||
android:id="@+id/favorite_list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:listitem="@layout/item_suggestion" />
|
||||
tools:listitem="@layout/item_search_result" />
|
||||
18
app/src/main/res/layout/fragment_search.xml
Normal file
18
app/src/main/res/layout/fragment_search.xml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<com.google.android.material.tabs.TabLayout
|
||||
android:id="@+id/tab_layout"
|
||||
style="@style/Widget.MaterialComponents.TabLayout.RegularCaps"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<androidx.viewpager2.widget.ViewPager2
|
||||
android:id="@+id/pager"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_weight="1" />
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
41
app/src/main/res/layout/item_suggestion.xml → app/src/main/res/layout/item_search_result.xml
Executable file → Normal file
41
app/src/main/res/layout/item_suggestion.xml → app/src/main/res/layout/item_search_result.xml
Executable file → Normal file
|
|
@ -13,7 +13,7 @@
|
|||
android:paddingBottom="8dp">
|
||||
|
||||
<com.facebook.drawee.view.SimpleDraweeView
|
||||
android:id="@+id/ivProfilePic"
|
||||
android:id="@+id/profile_pic"
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
app:actualImageScaleType="centerCrop"
|
||||
|
|
@ -23,46 +23,61 @@
|
|||
tools:background="@mipmap/ic_launcher" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tvUsername"
|
||||
android:id="@+id/title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="0dp"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="16dp"
|
||||
android:paddingEnd="4dp"
|
||||
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
|
||||
app:layout_constraintBottom_toTopOf="@id/tvFullName"
|
||||
app:layout_constraintEnd_toStartOf="@id/isVerified"
|
||||
app:layout_constraintStart_toEndOf="@id/ivProfilePic"
|
||||
app:layout_constraintBottom_toTopOf="@id/subtitle"
|
||||
app:layout_constraintEnd_toStartOf="@id/verified"
|
||||
app:layout_constraintStart_toEndOf="@id/profile_pic"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:text="username" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tvFullName"
|
||||
android:id="@+id/subtitle"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:paddingStart="16dp"
|
||||
android:paddingEnd="0dp"
|
||||
android:textAppearance="@style/TextAppearance.AppCompat.Body2"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@id/ivProfilePic"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvUsername"
|
||||
app:layout_constraintEnd_toStartOf="@id/delete"
|
||||
app:layout_constraintStart_toEndOf="@id/profile_pic"
|
||||
app:layout_constraintTop_toBottomOf="@id/title"
|
||||
tools:text="full name"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/isVerified"
|
||||
android:id="@+id/verified"
|
||||
android:layout_width="20dp"
|
||||
android:layout_height="20dp"
|
||||
android:layout_gravity="end"
|
||||
android:adjustViewBounds="true"
|
||||
android:scaleType="fitCenter"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/tvUsername"
|
||||
app:layout_constraintBottom_toTopOf="@id/tvFullName"
|
||||
app:layout_constraintStart_toEndOf="@id/tvUsername"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/title"
|
||||
app:layout_constraintBottom_toTopOf="@id/subtitle"
|
||||
app:layout_constraintStart_toEndOf="@id/title"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/verified"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageButton
|
||||
android:id="@+id/delete"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="0dp"
|
||||
android:background="?selectableItemBackgroundBorderless"
|
||||
android:padding="8dp"
|
||||
android:src="@drawable/ic_close_24"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:visibility="visible" />
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
|
@ -1,25 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
<!--<item-->
|
||||
<!-- android:id="@+id/favourites"-->
|
||||
<!-- android:enabled="true"-->
|
||||
<!-- android:icon="@drawable/ic_star_24"-->
|
||||
<!-- android:title="@string/title_favorites"-->
|
||||
<!-- app:showAsAction="ifRoom" />-->
|
||||
|
||||
<!--<item-->
|
||||
<!-- android:id="@+id/direct_messages"-->
|
||||
<!-- android:enabled="true"-->
|
||||
<!-- android:icon="@drawable/ic_send_24"-->
|
||||
<!-- android:title="@string/action_dms"-->
|
||||
<!-- app:showAsAction="always" />-->
|
||||
|
||||
<item
|
||||
android:id="@+id/search"
|
||||
android:enabled="true"
|
||||
android:icon="@drawable/ic_search_24"
|
||||
android:title="@string/action_search"
|
||||
app:actionViewClass="androidx.appcompat.widget.SearchView"
|
||||
app:showAsAction="always|collapseActionView" />
|
||||
android:title="@string/search"
|
||||
app:showAsAction="always" />
|
||||
</menu>
|
||||
|
|
@ -96,6 +96,10 @@
|
|||
android:id="@+id/action_global_user_search"
|
||||
app:destination="@id/user_search_nav_graph" />
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/directMessagesInboxFragment"
|
||||
android:name="awais.instagrabber.fragments.directmessages.DirectMessageInboxFragment"
|
||||
|
|
@ -187,4 +191,10 @@
|
|||
android:id="@+id/action_pending_inbox_to_thread"
|
||||
app:destination="@id/directMessagesThreadFragment" />
|
||||
</fragment>
|
||||
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -95,6 +95,10 @@
|
|||
app:argType="long" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/discoverFragment"
|
||||
android:name="awais.instagrabber.fragments.main.DiscoverFragment"
|
||||
|
|
@ -120,4 +124,9 @@
|
|||
android:name="backgroundColor"
|
||||
app:argType="integer" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
<?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"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/favorites_nav_graph"
|
||||
app:startDestination="@id/favoritesFragment">
|
||||
|
||||
|
|
@ -36,8 +37,18 @@
|
|||
app:argType="long" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/favoritesFragment"
|
||||
android:name="awais.instagrabber.fragments.FavoritesFragment"
|
||||
android:label="@string/title_favorites" />
|
||||
android:label="@string/title_favorites"
|
||||
tools:layout="@layout/fragment_favorites" />
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -106,6 +106,10 @@
|
|||
app:nullable="false" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/feedFragment"
|
||||
android:name="awais.instagrabber.fragments.main.FeedFragment"
|
||||
|
|
@ -115,7 +119,6 @@
|
|||
android:id="@+id/action_feedFragment_to_storyViewerFragment"
|
||||
app:destination="@id/storyViewerFragment" />
|
||||
</fragment>
|
||||
|
||||
<fragment
|
||||
android:id="@+id/storyViewerFragment"
|
||||
android:name="awais.instagrabber.fragments.StoryViewerFragment"
|
||||
|
|
@ -125,4 +128,9 @@
|
|||
android:name="options"
|
||||
app:argType="awais.instagrabber.repositories.requests.StoryViewerOptions" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -65,6 +65,10 @@
|
|||
app:argType="long" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/hashTagFragment"
|
||||
android:name="awais.instagrabber.fragments.HashTagFragment"
|
||||
|
|
@ -87,6 +91,11 @@
|
|||
android:name="options"
|
||||
app:argType="awais.instagrabber.repositories.requests.StoryViewerOptions" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
<action
|
||||
android:id="@+id/action_global_hashTagFragment"
|
||||
app:destination="@id/hashTagFragment">
|
||||
|
|
|
|||
|
|
@ -66,6 +66,10 @@
|
|||
app:nullable="false" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/locationFragment"
|
||||
android:name="awais.instagrabber.fragments.LocationFragment"
|
||||
|
|
@ -94,4 +98,9 @@
|
|||
android:name="options"
|
||||
app:argType="awais.instagrabber.repositories.requests.StoryViewerOptions" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -112,6 +112,10 @@
|
|||
app:argType="boolean" />
|
||||
</action>
|
||||
|
||||
<action
|
||||
android:id="@+id/action_global_search"
|
||||
app:destination="@id/searchFragment" />
|
||||
|
||||
<fragment
|
||||
android:id="@+id/profileFragment"
|
||||
android:name="awais.instagrabber.fragments.main.ProfileFragment"
|
||||
|
|
@ -188,32 +192,9 @@
|
|||
android:name="options"
|
||||
app:argType="awais.instagrabber.repositories.requests.StoryViewerOptions" />
|
||||
</fragment>
|
||||
<!--<fragment-->
|
||||
<!-- android:id="@+id/directMessagesThreadFragment"-->
|
||||
<!-- android:name="awais.instagrabber.fragments.directmessages.DirectMessageThreadFragment"-->
|
||||
<!-- android:label="DirectMessagesThreadFragment"-->
|
||||
<!-- tools:layout="@layout/fragment_direct_messages_thread">-->
|
||||
<!-- <argument-->
|
||||
<!-- android:name="threadId"-->
|
||||
<!-- app:argType="string" />-->
|
||||
<!-- <argument-->
|
||||
<!-- android:name="title"-->
|
||||
<!-- app:argType="string" />-->
|
||||
<!-- <action-->
|
||||
<!-- android:id="@+id/action_dMThreadFragment_to_dMSettingsFragment"-->
|
||||
<!-- app:destination="@id/directMessagesSettingsFragment" />-->
|
||||
<!--</fragment>-->
|
||||
<!--<fragment-->
|
||||
<!-- android:id="@+id/directMessagesSettingsFragment"-->
|
||||
<!-- android:name="awais.instagrabber.fragments.directmessages.DirectMessageSettingsFragment"-->
|
||||
<!-- android:label="@string/details"-->
|
||||
<!-- tools:layout="@layout/fragment_direct_messages_settings">-->
|
||||
<!-- <argument-->
|
||||
<!-- android:name="threadId"-->
|
||||
<!-- app:argType="string"-->
|
||||
<!-- app:nullable="false"/>-->
|
||||
<!-- <argument-->
|
||||
<!-- android:name="title"-->
|
||||
<!-- app:argType="string" />-->
|
||||
<!--</fragment>-->
|
||||
<fragment
|
||||
android:id="@+id/searchFragment"
|
||||
android:name="awais.instagrabber.fragments.search.SearchFragment"
|
||||
android:label="@string/search"
|
||||
tools:layout="@layout/fragment_search" />
|
||||
</navigation>
|
||||
|
|
@ -493,4 +493,7 @@
|
|||
<string name="dm_remove_warning">If saved, all DM related features will be disabled on next launch</string>
|
||||
<string name="copy_caption">Copy caption</string>
|
||||
<string name="copy_reply">Copy reply</string>
|
||||
<string name="top">Top</string>
|
||||
<string name="recent">Recent</string>
|
||||
<string name="clear">Clear</string>
|
||||
</resources>
|
||||
|
|
|
|||
|
|
@ -225,4 +225,13 @@
|
|||
<item name="android:paddingEnd">0dp</item>
|
||||
<item name="iconPadding">0dp</item>
|
||||
</style>
|
||||
|
||||
<style name="TextAppearance.Design.Tab.RegularCaps" parent="TextAppearance.Design.Tab">
|
||||
<item name="textAllCaps">false</item>
|
||||
<item name="android:textAllCaps">false</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.MaterialComponents.TabLayout.RegularCaps" parent="Widget.MaterialComponents.TabLayout">
|
||||
<item name="tabTextAppearance">@style/TextAppearance.Design.Tab.RegularCaps</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue