From 09dd200655da179289b65924845115539dcf4830 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Mon, 7 Aug 2023 15:23:25 +0800 Subject: [PATCH] Migrate right drawer to side sheet --- .../com/hippo/ehviewer/ui/MainActivity.kt | 36 ++----------- .../com/hippo/ehviewer/ui/scene/BaseScene.kt | 51 +++++++++---------- .../ehviewer/ui/scene/BaseToolbarScene.kt | 17 +++---- .../hippo/ehviewer/ui/scene/DownloadsScene.kt | 36 ++----------- .../hippo/ehviewer/ui/scene/FavoritesScene.kt | 30 ++++------- .../ehviewer/ui/scene/GalleryListScene.kt | 34 +++++-------- .../hippo/ehviewer/ui/scene/SearchBarScene.kt | 20 +++----- .../res/drawable/ic_baseline_label_24.xml | 28 ---------- .../res/drawable/ic_outline_bookmarks_24.xml | 11 ++++ .../drawable/ic_outline_folder_special_24.xml | 11 ++++ .../main/res/drawable/ic_outline_label_24.xml | 12 +++++ app/src/main/res/layout/activity_main.xml | 10 ---- app/src/main/res/menu/scene_download.xml | 12 ++--- app/src/main/res/menu/scene_favorites.xml | 11 ++++ .../scene_gallery_list_searchbar_menu.xml | 6 +++ 15 files changed, 127 insertions(+), 198 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_baseline_label_24.xml create mode 100644 app/src/main/res/drawable/ic_outline_bookmarks_24.xml create mode 100644 app/src/main/res/drawable/ic_outline_folder_special_24.xml create mode 100644 app/src/main/res/drawable/ic_outline_label_24.xml create mode 100644 app/src/main/res/menu/scene_favorites.xml diff --git a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt index 807dca5d8..def405143 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/MainActivity.kt @@ -33,10 +33,8 @@ import androidx.activity.OnBackPressedCallback import androidx.activity.result.contract.ActivityResultContracts import androidx.annotation.RequiresApi import androidx.annotation.StringRes -import androidx.core.view.GravityCompat import androidx.customview.widget.Openable import androidx.drawerlayout.widget.DrawerLayout -import androidx.fragment.app.Fragment import androidx.lifecycle.lifecycleScope import androidx.navigation.NavController import androidx.navigation.fragment.NavHostFragment @@ -372,30 +370,6 @@ class MainActivity : EhActivity() { Settings.clipboardTextHashCode = hashCode } - @SuppressLint("RtlHardcoded") - fun createDrawerView(scene: Fragment?) { - if (scene is BaseScene) { - binding.rightDrawer.removeAllViews() - val drawerView = scene.createDrawerView( - scene.layoutInflater, - binding.rightDrawer, - null, - ) - if (drawerView != null) { - binding.rightDrawer.addView(drawerView) - binding.drawView.setDrawerLockMode( - DrawerLayout.LOCK_MODE_UNLOCKED, - GravityCompat.END, - ) - } else { - binding.drawView.setDrawerLockMode( - DrawerLayout.LOCK_MODE_LOCKED_CLOSED, - GravityCompat.END, - ) - } - } - } - fun addAboveSnackView(view: View) { binding.absnacker.addAboveSnackView(view) } @@ -423,12 +397,10 @@ class MainActivity : EhActivity() { } fun toggleDrawer(drawerGravity: Int) { - binding.drawView.run { - if (isDrawerOpen(drawerGravity)) { - closeDrawer(drawerGravity) - } else { - openDrawer(drawerGravity) - } + if (isDrawerOpen(drawerGravity)) { + closeDrawer(drawerGravity) + } else { + openDrawer(drawerGravity) } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.kt index 730750c24..fa81f4efa 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.kt @@ -15,19 +15,20 @@ */ package com.hippo.ehviewer.ui.scene -import android.annotation.SuppressLint import android.content.res.Resources.Theme import android.os.Bundle import android.os.Parcelable import android.util.SparseArray import android.view.LayoutInflater import android.view.View -import android.view.ViewGroup import androidx.annotation.StringRes import androidx.core.view.GravityCompat import androidx.core.view.SoftwareKeyboardControllerCompat import androidx.drawerlayout.widget.DrawerLayout import androidx.fragment.app.Fragment +import androidx.lifecycle.setViewTreeLifecycleOwner +import androidx.savedstate.setViewTreeSavedStateRegistryOwner +import com.google.android.material.sidesheet.SideSheetDialog import com.hippo.ehviewer.ui.MainActivity import com.hippo.ehviewer.util.getSparseParcelableArrayCompat import rikka.core.res.resolveDrawable @@ -35,6 +36,7 @@ import rikka.core.res.resolveDrawable abstract class BaseScene : Fragment() { private var drawerView: View? = null private var drawerViewState: SparseArray? = null + private var sideSheetDialog: SideSheetDialog? = null fun addAboveSnackView(view: View) { val activity = activity if (activity is MainActivity) { @@ -91,6 +93,9 @@ abstract class BaseScene : Fragment() { } } + fun openSideSheet() = sideSheetDialog!!.show() + fun closeSideSheet() = sideSheetDialog!!.hide() + fun showTip(message: CharSequence?, length: Int) { val activity = activity if (activity is MainActivity) { @@ -107,34 +112,18 @@ abstract class BaseScene : Fragment() { open val showLeftDrawer = true - fun recreateDrawerView() { - val activity = mainActivity - activity?.createDrawerView(this) - } - - fun createDrawerView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle?, - ): View? { - drawerView = onCreateDrawerView(inflater, container, savedInstanceState) + private fun createDrawerView(savedInstanceState: Bundle?): View? { + drawerView = onCreateDrawerView(layoutInflater) if (drawerView != null) { - var saved = drawerViewState - if (saved == null && savedInstanceState != null) { - saved = savedInstanceState.getSparseParcelableArrayCompat(KEY_DRAWER_VIEW_STATE) - } - if (saved != null) { + val saved = drawerViewState ?: savedInstanceState?.getSparseParcelableArrayCompat(KEY_DRAWER_VIEW_STATE) + saved?.let { drawerView!!.restoreHierarchyState(saved) } } return drawerView } - open fun onCreateDrawerView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle?, - ): View? { + open fun onCreateDrawerView(inflater: LayoutInflater): View? { return null } @@ -147,9 +136,11 @@ abstract class BaseScene : Fragment() { drawerView = null } - open fun onDestroyDrawerView() {} + open fun onDestroyDrawerView() { + sideSheetDialog?.dismiss() + sideSheetDialog = null + } - @SuppressLint("RtlHardcoded") override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) view.background = requireActivity().theme.resolveDrawable(android.R.attr.windowBackground) @@ -161,7 +152,15 @@ abstract class BaseScene : Fragment() { setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START) } hideSoftInput() - mainActivity!!.createDrawerView(this) + createDrawerView(savedInstanceState)?.let { + sideSheetDialog = SideSheetDialog(requireContext()).apply { + window?.decorView?.apply { + setViewTreeLifecycleOwner(viewLifecycleOwner) + setViewTreeSavedStateRegistryOwner(this@BaseScene) + } + setContentView(it) + } + } } override fun onDestroyView() { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseToolbarScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseToolbarScene.kt index 3e7d2ddf9..81b277588 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseToolbarScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseToolbarScene.kt @@ -22,7 +22,7 @@ import android.view.View import android.view.ViewGroup import androidx.annotation.DrawableRes import androidx.annotation.StringRes -import androidx.core.view.size +import com.hippo.ehviewer.R import com.hippo.ehviewer.databinding.SceneToolbarBinding abstract class BaseToolbarScene : BaseScene(), ToolBarScene { @@ -56,20 +56,17 @@ abstract class BaseToolbarScene : BaseScene(), ToolBarScene { } } - fun showMenu(menuResId: Int) { - if (binding.toolbar.menu?.size != 0) return - binding.toolbar.apply { - inflateMenu(menuResId) - setOnMenuItemClickListener { item: MenuItem -> onMenuItemClick(item) } - } - } - override fun getMenuResId(): Int { return 0 } override fun onMenuItemClick(item: MenuItem): Boolean { - return false + return if (item.itemId == R.id.action_open_side_sheet) { + openSideSheet() + true + } else { + false + } } override fun onNavigationClick() { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt index 8b47f9a25..9cd427282 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/DownloadsScene.kt @@ -90,7 +90,6 @@ import com.hippo.ehviewer.ui.legacy.CheckBoxDialogBuilder import com.hippo.ehviewer.ui.legacy.EditTextDialogBuilder import com.hippo.ehviewer.ui.legacy.FabLayout import com.hippo.ehviewer.ui.legacy.FabLayout.OnClickFabListener -import com.hippo.ehviewer.ui.legacy.FastScroller.OnDragHandlerListener import com.hippo.ehviewer.ui.legacy.HandlerDrawable import com.hippo.ehviewer.ui.legacy.STRATEGY_MIN_SIZE import com.hippo.ehviewer.ui.legacy.ViewTransition @@ -117,8 +116,7 @@ import com.hippo.ehviewer.download.DownloadManager as downloadManager class DownloadsScene : BaseToolbarScene(), DownloadInfoListener, - OnClickFabListener, - OnDragHandlerListener { + OnClickFabListener { /*--------------- Whole life cycle ---------------*/ @@ -268,12 +266,10 @@ class DownloadsScene : binding.fabLayout.isExpanded = true // Lock drawer setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) }) { binding.fabLayout.isExpanded = false // Unlock drawer setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) } restoreSelection(savedInstanceState) } @@ -347,7 +343,6 @@ class DownloadsScene : val handlerDrawable = HandlerDrawable() handlerDrawable.setColor(theme.resolveColor(com.google.android.material.R.attr.colorPrimary)) fastScroller.setHandlerDrawable(handlerDrawable) - fastScroller.setOnDragHandlerListener(this@DownloadsScene) fabLayout.setExpanded(expanded = false, animation = false) fabLayout.addOnExpandListener { if (!it && tracker.isInCustomChoice) tracker.clearSelection() } fabLayout.setHidePrimaryFab(true) @@ -420,11 +415,6 @@ class DownloadsScene : return true } - R.id.action_open_download_labels -> { - openDrawer(GravityCompat.END) - return true - } - R.id.action_reset_reading_progress -> { BaseDialogBuilder(requireContext()) .setMessage(R.string.reset_reading_progress_message) @@ -453,7 +443,7 @@ class DownloadsScene : return true } - else -> return false + else -> return super.onMenuItemClick(item) } } @@ -468,12 +458,8 @@ class DownloadsScene : updateTitle() } - override fun onCreateDrawerView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle?, - ): View { - val drawerBinding = DrawerListRvBinding.inflate(inflater, container, false) + override fun onCreateDrawerView(inflater: LayoutInflater): View { + val drawerBinding = DrawerListRvBinding.inflate(inflater) drawerBinding.toolbar.setTitle(R.string.download_labels) drawerBinding.toolbar.inflateMenu(R.menu.drawer_download) drawerBinding.toolbar.setOnMenuItemClickListener { item: MenuItem -> @@ -525,18 +511,6 @@ class DownloadsScene : return drawerBinding.root } - override fun onStartDragHandler() { - // Lock right drawer - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) - } - - override fun onEndDragHandler() { - // Restore right drawer - if (!tracker.isInCustomChoice) { - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) - } - } - fun onItemClick(position: Int): Boolean { val context = context ?: return false val list = mList ?: return false @@ -695,7 +669,7 @@ class DownloadsScene : mLabel = label1 updateForLabel() updateView() - closeDrawer(GravityCompat.END) + closeSideSheet() } } holder.binding.edit.setOnClickListener { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/FavoritesScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/FavoritesScene.kt index e60680c33..d573efbd9 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/FavoritesScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/FavoritesScene.kt @@ -161,13 +161,11 @@ class FavoritesScene : SearchBarScene() { } private fun onItemClick(position: Int) { - if (isDrawerOpen(GravityCompat.END)) { - // Skip if in search mode - if (!tracker.isInCustomChoice) { - switchFav(position - 2) - updateJumpFab() - closeDrawer(GravityCompat.END) - } + // Skip if in search mode + if (!tracker.isInCustomChoice) { + switchFav(position - 2) + updateJumpFab() + closeSideSheet() } } @@ -200,6 +198,8 @@ class FavoritesScene : SearchBarScene() { Settings.recentFavCat = urlBuilder.favCat } + override fun getMenuResId() = R.menu.scene_favorites + override fun onSaveInstanceState(outState: Bundle) { super.onSaveInstanceState(outState) mAdapter?.let { tracker.saveSelection(outState) } @@ -294,14 +294,8 @@ class FavoritesScene : SearchBarScene() { addAboveSnackView(this) } binding.fastScroller.setOnDragHandlerListener(object : OnDragHandlerListener { - override fun onStartDragHandler() { - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) - } - + override fun onStartDragHandler() {} override fun onEndDragHandler() { - if (!tracker.isInCustomChoice) { - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) - } showSearchBar() } }) @@ -364,7 +358,6 @@ class FavoritesScene : SearchBarScene() { binding.refreshLayout.isEnabled = false // Lock drawer setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) }) { showNormalFab() binding.fabLayout.setAutoCancel(true) @@ -372,7 +365,6 @@ class FavoritesScene : SearchBarScene() { binding.refreshLayout.isEnabled = true // Unlock drawer setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) } restoreSelection(savedInstanceState) } @@ -403,11 +395,7 @@ class FavoritesScene : SearchBarScene() { _binding = null } - override fun onCreateDrawerView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle?, - ) = ComposeView(inflater.context).apply { + override fun onCreateDrawerView(inflater: LayoutInflater) = ComposeView(inflater.context).apply { setMD3Content { val localFavCount by vm.localFavCount.collectAsState(0) ElevatedCard { diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryListScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryListScene.kt index cdc864991..7e460d1a3 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryListScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryListScene.kt @@ -269,7 +269,6 @@ class GalleryListScene : SearchBarScene() { val isTopList = mode == MODE_TOPLIST if (isTopList != mIsTopList) { mIsTopList = isTopList - recreateDrawerView() } // Update fab visibility @@ -332,11 +331,8 @@ class GalleryListScene : SearchBarScene() { ) mViewTransition = BringOutTransition(binding.contentLayout, binding.searchLayout) binding.fastScroller.setOnDragHandlerListener(object : OnDragHandlerListener { - override fun onStartDragHandler() { - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) - } + override fun onStartDragHandler() {} override fun onEndDragHandler() { - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) showSearchBar() } }) @@ -467,11 +463,9 @@ class GalleryListScene : SearchBarScene() { binding.fabLayout.addOnExpandListener { if (it) { setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) actionFabDrawable.setDelete(ANIMATE_TIME) } else { setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) actionFabDrawable.setAdd(ANIMATE_TIME) } } @@ -592,12 +586,8 @@ class GalleryListScene : SearchBarScene() { } } - override fun onCreateDrawerView( - inflater: LayoutInflater, - container: ViewGroup?, - savedInstanceState: Bundle?, - ): View { - val drawerBinding = DrawerListRvBinding.inflate(inflater, container, false) + override fun onCreateDrawerView(inflater: LayoutInflater): View { + val drawerBinding = DrawerListRvBinding.inflate(inflater) drawerBinding.recyclerViewDrawer.layoutManager = LinearLayoutManager(context) val qsDrawerAdapter = QsDrawerAdapter(inflater) qsDrawerAdapter.setHasStableIds(true) @@ -848,12 +838,16 @@ class GalleryListScene : SearchBarScene() { } override fun onMenuItemClick(item: MenuItem): Boolean { - if (mState == State.NORMAL) { - setState(State.SEARCH) + return if (item.itemId == R.id.action_search_more) { + if (mState == State.NORMAL) { + setState(State.SEARCH) + } else { + setState(State.NORMAL) + } + true } else { - setState(State.NORMAL) + super.onMenuItemClick(item) } - return true } private fun onApplySearch(query: String?) { @@ -886,10 +880,8 @@ class GalleryListScene : SearchBarScene() { stateBackPressedCallback.isEnabled = newState != State.NORMAL if (newState == State.NORMAL || newState == State.SIMPLE_SEARCH) { setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END) } else { setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START) - setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END) } } @@ -906,7 +898,7 @@ class GalleryListScene : SearchBarScene() { onUpdateUrlBuilder() mAdapter?.refresh() setState(State.NORMAL) - closeDrawer(GravityCompat.END) + closeSideSheet() } } else { val keywords = intArrayOf(11, 12, 13, 15) @@ -915,7 +907,7 @@ class GalleryListScene : SearchBarScene() { onUpdateUrlBuilder() mAdapter?.refresh() setState(State.NORMAL) - closeDrawer(GravityCompat.END) + closeSideSheet() } } return holder diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/SearchBarScene.kt b/app/src/main/java/com/hippo/ehviewer/ui/scene/SearchBarScene.kt index eb7d7447e..a6596f367 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/SearchBarScene.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/SearchBarScene.kt @@ -2,7 +2,6 @@ package com.hippo.ehviewer.ui.scene import android.os.Build import android.os.Bundle -import android.view.Gravity import android.view.LayoutInflater import android.view.MenuItem import android.view.View @@ -131,24 +130,16 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene { } private var privLockModeStart: Int? = null - private var privLockModeEnd: Int? = null @CallSuper open fun onSearchViewExpanded() { privLockModeStart = getDrawerLockMode(GravityCompat.START) - privLockModeEnd = getDrawerLockMode(GravityCompat.END) privLockModeStart?.let { setDrawerLockMode( DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.START, ) } - privLockModeEnd?.let { - setDrawerLockMode( - DrawerLayout.LOCK_MODE_LOCKED_CLOSED, - GravityCompat.END, - ) - } updateSuggestions() } @@ -157,8 +148,6 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene { binding.toolbar.setText(binding.searchview.text) privLockModeStart?.let { setDrawerLockMode(it, GravityCompat.START) } privLockModeStart = null - privLockModeEnd?.let { setDrawerLockMode(it, GravityCompat.END) } - privLockModeEnd = null } fun setSearchBarHint(hint: String?) { @@ -175,7 +164,7 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene { } override fun onNavigationClick() { - toggleDrawer(Gravity.START) + toggleDrawer(GravityCompat.START) } override fun getMenuResId(): Int { @@ -183,7 +172,12 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene { } override fun onMenuItemClick(item: MenuItem): Boolean { - return false + return if (item.itemId == R.id.action_open_side_sheet) { + openSideSheet() + true + } else { + false + } } override fun setLiftOnScrollTargetView(view: View?) { diff --git a/app/src/main/res/drawable/ic_baseline_label_24.xml b/app/src/main/res/drawable/ic_baseline_label_24.xml deleted file mode 100644 index df4ed8c9e..000000000 --- a/app/src/main/res/drawable/ic_baseline_label_24.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable/ic_outline_bookmarks_24.xml b/app/src/main/res/drawable/ic_outline_bookmarks_24.xml new file mode 100644 index 000000000..72f804253 --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_bookmarks_24.xml @@ -0,0 +1,11 @@ + + + + diff --git a/app/src/main/res/drawable/ic_outline_folder_special_24.xml b/app/src/main/res/drawable/ic_outline_folder_special_24.xml new file mode 100644 index 000000000..f98730fc7 --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_folder_special_24.xml @@ -0,0 +1,11 @@ + + + + diff --git a/app/src/main/res/drawable/ic_outline_label_24.xml b/app/src/main/res/drawable/ic_outline_label_24.xml new file mode 100644 index 000000000..a91f2ebb7 --- /dev/null +++ b/app/src/main/res/drawable/ic_outline_label_24.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index ea13e8c70..c614dd97d 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -16,7 +16,6 @@ - - diff --git a/app/src/main/res/menu/scene_download.xml b/app/src/main/res/menu/scene_download.xml index 751b40bf8..406b369e2 100644 --- a/app/src/main/res/menu/scene_download.xml +++ b/app/src/main/res/menu/scene_download.xml @@ -23,6 +23,12 @@ android:title="@string/download_filter" app:showAsAction="ifRoom" /> + + - - + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/scene_gallery_list_searchbar_menu.xml b/app/src/main/res/menu/scene_gallery_list_searchbar_menu.xml index 20becdbbb..4dddf8ce0 100644 --- a/app/src/main/res/menu/scene_gallery_list_searchbar_menu.xml +++ b/app/src/main/res/menu/scene_gallery_list_searchbar_menu.xml @@ -2,6 +2,12 @@ + +