diff --git a/app/src/main/java/com/aurora/store/view/custom/layouts/ActionHeaderLayout.kt b/app/src/main/java/com/aurora/store/view/custom/layouts/ActionHeaderLayout.kt index eabd6f2ad..e43045fca 100644 --- a/app/src/main/java/com/aurora/store/view/custom/layouts/ActionHeaderLayout.kt +++ b/app/src/main/java/com/aurora/store/view/custom/layouts/ActionHeaderLayout.kt @@ -79,4 +79,4 @@ class ActionHeaderLayout : RelativeLayout { binding.imgAction.visibility = View.VISIBLE binding.imgAction.setOnClickListener(onclickListener) } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/aurora/store/view/custom/layouts/button/StateButton.kt b/app/src/main/java/com/aurora/store/view/custom/layouts/button/StateButton.kt index ac9e1060b..1fce7497a 100644 --- a/app/src/main/java/com/aurora/store/view/custom/layouts/button/StateButton.kt +++ b/app/src/main/java/com/aurora/store/view/custom/layouts/button/StateButton.kt @@ -64,11 +64,11 @@ class StateButton : RelativeLayout { } fun updateProgress(isVisible: Boolean) { - if (isVisible) + if (isVisible) { binding.progress.visibility = View.VISIBLE - else - + } else { binding.progress.visibility = View.INVISIBLE + } } fun addOnClickListener(onClickListener: OnClickListener) { diff --git a/app/src/main/java/com/aurora/store/view/custom/preference/AuroraListPreference.kt b/app/src/main/java/com/aurora/store/view/custom/preference/AuroraListPreference.kt index 263e32ffa..58b249022 100644 --- a/app/src/main/java/com/aurora/store/view/custom/preference/AuroraListPreference.kt +++ b/app/src/main/java/com/aurora/store/view/custom/preference/AuroraListPreference.kt @@ -42,11 +42,9 @@ class AuroraListPreference : ListPreference { defStyleRes: Int ) : super(context, attrs, defStyleAttr, defStyleRes) - override fun getPersistedString(defaultReturnValue: String?): String { - return getPersistedInt(defaultReturnValue?.toInt() ?: -1).toString() - } + override fun getPersistedString(defaultReturnValue: String?): String = + getPersistedInt(defaultReturnValue?.toInt() ?: -1).toString() - override fun persistString(value: String?): Boolean { - return if (value != null) persistInt(Integer.valueOf(value)) else false - } + override fun persistString(value: String?): Boolean = + if (value != null) persistInt(Integer.valueOf(value)) else false } diff --git a/app/src/main/java/com/aurora/store/view/custom/preference/M3EditTextPreference.kt b/app/src/main/java/com/aurora/store/view/custom/preference/M3EditTextPreference.kt index c9dfcd7a1..0e496b427 100644 --- a/app/src/main/java/com/aurora/store/view/custom/preference/M3EditTextPreference.kt +++ b/app/src/main/java/com/aurora/store/view/custom/preference/M3EditTextPreference.kt @@ -6,7 +6,6 @@ import android.view.WindowManager import androidx.preference.EditTextPreferenceDialogFragmentCompat import com.google.android.material.dialog.MaterialAlertDialogBuilder - class M3EditTextPreference : EditTextPreferenceDialogFragmentCompat() { companion object { @@ -40,7 +39,6 @@ class M3EditTextPreference : EditTextPreferenceDialogFragmentCompat() { return builder.create() } - override fun onResume() { super.onResume() dialog?.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) diff --git a/app/src/main/java/com/aurora/store/view/custom/recycler/EndlessRecyclerOnScrollListener.kt b/app/src/main/java/com/aurora/store/view/custom/recycler/EndlessRecyclerOnScrollListener.kt index 1e20b9ca9..5e0dea093 100644 --- a/app/src/main/java/com/aurora/store/view/custom/recycler/EndlessRecyclerOnScrollListener.kt +++ b/app/src/main/java/com/aurora/store/view/custom/recycler/EndlessRecyclerOnScrollListener.kt @@ -54,16 +54,20 @@ abstract class EndlessRecyclerOnScrollListener : RecyclerView.OnScrollListener { private fun findFirstVisibleItemPosition(recyclerView: RecyclerView): Int { val child = findOneVisibleChild(0, layoutManager.childCount, true, false) - return if (child == null) RecyclerView.NO_POSITION else recyclerView.getChildAdapterPosition( - child - ) + return if (child == null) { + RecyclerView.NO_POSITION + } else { + recyclerView.getChildAdapterPosition(child) + } } private fun findLastVisibleItemPosition(recyclerView: RecyclerView): Int { val child = findOneVisibleChild(recyclerView.childCount - 1, -1, false, true) - return if (child == null) RecyclerView.NO_POSITION else recyclerView.getChildAdapterPosition( - child - ) + return if (child == null) { + RecyclerView.NO_POSITION + } else { + recyclerView.getChildAdapterPosition(child) + } } private fun findOneVisibleChild( @@ -72,12 +76,15 @@ abstract class EndlessRecyclerOnScrollListener : RecyclerView.OnScrollListener { completelyVisible: Boolean, acceptPartiallyVisible: Boolean ): View? { - if (layoutManager.canScrollVertically() != isOrientationHelperVertical || orientationHelper == null) { + if (layoutManager.canScrollVertically() != isOrientationHelperVertical || + orientationHelper == null + ) { isOrientationHelperVertical = layoutManager.canScrollVertically() - orientationHelper = if (isOrientationHelperVertical) + orientationHelper = if (isOrientationHelperVertical) { OrientationHelper.createVerticalHelper(layoutManager) - else + } else { OrientationHelper.createHorizontalHelper(layoutManager) + } } val mOrientationHelper = this.orientationHelper ?: return null @@ -118,12 +125,9 @@ abstract class EndlessRecyclerOnScrollListener : RecyclerView.OnScrollListener { ?: throw RuntimeException("A LayoutManager is required") } - if (visibleThreshold == RecyclerView.NO_POSITION) { - visibleThreshold = - findLastVisibleItemPosition(recyclerView) - findFirstVisibleItemPosition( - recyclerView - ) + visibleThreshold = findLastVisibleItemPosition(recyclerView) - + findFirstVisibleItemPosition(recyclerView) } visibleItemCount = recyclerView.childCount @@ -137,7 +141,9 @@ abstract class EndlessRecyclerOnScrollListener : RecyclerView.OnScrollListener { } } - if (!isLoading && totalItemCount - visibleItemCount <= firstVisibleItem + visibleThreshold) { + if (!isLoading && + totalItemCount - visibleItemCount <= firstVisibleItem + visibleThreshold + ) { currentPage++ onLoadMore(currentPage) isLoading = true @@ -164,4 +170,4 @@ abstract class EndlessRecyclerOnScrollListener : RecyclerView.OnScrollListener { } abstract fun onLoadMore(currentPage: Int) -} \ No newline at end of file +} diff --git a/app/src/main/java/com/aurora/store/view/epoxy/controller/CategoryCarouselController.kt b/app/src/main/java/com/aurora/store/view/epoxy/controller/CategoryCarouselController.kt index 87f8c4bb5..0975afd97 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/controller/CategoryCarouselController.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/controller/CategoryCarouselController.kt @@ -24,6 +24,6 @@ import com.aurora.gplayapi.data.models.StreamCluster class CategoryCarouselController(callbacks: Callbacks) : GenericCarouselController(callbacks) { override fun applyFilter(streamBundle: StreamCluster): Boolean { - return streamBundle.clusterAppList.isNotEmpty() //Filter empty clusters + return streamBundle.clusterAppList.isNotEmpty() // Filter empty clusters } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/aurora/store/view/epoxy/controller/GenericCarouselController.kt b/app/src/main/java/com/aurora/store/view/epoxy/controller/GenericCarouselController.kt index 17e723a8f..12e63e8f4 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/controller/GenericCarouselController.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/controller/GenericCarouselController.kt @@ -41,9 +41,9 @@ open class GenericCarouselController(private val callbacks: Callbacks) : } open fun applyFilter(streamBundle: StreamCluster): Boolean { - return streamBundle.clusterTitle.isNotBlank() //Filter noisy cluster - && streamBundle.clusterAppList.isNotEmpty() //Filter empty clusters - && streamBundle.clusterAppList.count() > 1 //Filter clusters with single apps (mostly promotions) + return streamBundle.clusterTitle.isNotBlank() && // Filter noisy cluster + streamBundle.clusterAppList.isNotEmpty() && // Filter empty clusters + streamBundle.clusterAppList.count() > 1 // Filter clusters with single apps (promotions) } override fun buildModels(streamBundle: StreamBundle?) { @@ -79,7 +79,6 @@ open class GenericCarouselController(private val callbacks: Callbacks) : ) } } - } else { streamBundle .streamClusters @@ -88,13 +87,13 @@ open class GenericCarouselController(private val callbacks: Callbacks) : .forEach { streamCluster -> add(CarouselModelGroup(streamCluster, callbacks)) } - } - if (streamBundle.hasNext()) + if (streamBundle.hasNext()) { add( CarouselShimmerGroup() .id("progress") ) + } } } } diff --git a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselHorizontal.kt b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselHorizontal.kt index bd77894a2..8a57ae393 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselHorizontal.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselHorizontal.kt @@ -28,9 +28,8 @@ import com.airbnb.epoxy.ModelView @ModelView(saveViewState = true, autoLayout = ModelView.Size.MATCH_WIDTH_WRAP_HEIGHT) class CarouselHorizontal(context: Context?) : Carousel(context) { - override fun createLayoutManager(): LayoutManager { - return LinearLayoutManager(context, RecyclerView.HORIZONTAL, false) - } + override fun createLayoutManager(): LayoutManager = + LinearLayoutManager(context, RecyclerView.HORIZONTAL, false) override fun getSnapHelperFactory(): Nothing? = null -} \ No newline at end of file +} diff --git a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselModelGroup.kt b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselModelGroup.kt index 18fcb3c30..ced922487 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselModelGroup.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselModelGroup.kt @@ -34,7 +34,8 @@ class CarouselModelGroup( callbacks: GenericCarouselController.Callbacks ) : EpoxyModelGroup( - R.layout.model_carousel_group, buildModels( + R.layout.model_carousel_group, + buildModels( streamCluster, callbacks ) diff --git a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselShimmerGroup.kt b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselShimmerGroup.kt index 9eb743385..8429a64f1 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselShimmerGroup.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/groups/CarouselShimmerGroup.kt @@ -28,7 +28,8 @@ import java.util.UUID class CarouselShimmerGroup : EpoxyModelGroup( - R.layout.model_carousel_group, buildModels() + R.layout.model_carousel_group, + buildModels() ) { companion object { private fun buildModels(): List> { @@ -50,7 +51,7 @@ class CarouselShimmerGroup : models.add( CarouselHorizontalModel_() - .id("cluster_${idPrefix}") + .id("cluster_$idPrefix") .models(clusterViewModels) ) return models diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/AppProgressView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/AppProgressView.kt index 841fe7565..765baa871 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/AppProgressView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/AppProgressView.kt @@ -29,4 +29,4 @@ class AppProgressView @JvmOverloads constructor( context: Context?, attrs: AttributeSet? = null, defStyleAttr: Int = 0 -) : BaseView(context, attrs, defStyleAttr) \ No newline at end of file +) : BaseView(context, attrs, defStyleAttr) diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/BaseView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/BaseView.kt index 3fc5573e1..8f6b86fd4 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/BaseView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/BaseView.kt @@ -38,8 +38,8 @@ abstract class BaseView : RelativeLayout { @Suppress("UNCHECKED_CAST") private fun inflateViewBinding(inflater: LayoutInflater): ViewBindingType { - val type = - (javaClass.genericSuperclass as ParameterizedType).actualTypeArguments[0] as Class + val type = (javaClass.genericSuperclass as ParameterizedType) + .actualTypeArguments[0] as Class val method = type.getMethod( "inflate", LayoutInflater::class.java, @@ -48,4 +48,4 @@ abstract class BaseView : RelativeLayout { ) return method.invoke(null, inflater, this, false) as ViewBindingType } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/HeaderView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/HeaderView.kt index aa5d23bc4..1d8b097d1 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/HeaderView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/HeaderView.kt @@ -45,8 +45,9 @@ class HeaderView @JvmOverloads constructor( @JvmOverloads @ModelProp fun browseUrl(browseUrl: String? = String()) { - if (browseUrl.isNullOrEmpty()) + if (browseUrl.isNullOrEmpty()) { binding.imgAction.visibility = INVISIBLE + } } @CallbackProp diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/UpdateHeaderView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/UpdateHeaderView.kt index 8faaf1a90..2f9607652 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/UpdateHeaderView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/UpdateHeaderView.kt @@ -27,7 +27,6 @@ import com.airbnb.epoxy.ModelView import com.airbnb.epoxy.OnViewRecycled import com.aurora.store.databinding.ViewHeaderUpdateBinding - @ModelView( autoLayout = ModelView.Size.MATCH_WIDTH_WRAP_HEIGHT, baseModelClass = BaseModel::class diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppListView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppListView.kt index 0664ea50f..105026465 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppListView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppListView.kt @@ -60,17 +60,20 @@ class AppListView @JvmOverloads constructor( extras.add(if (app.size > 0) CommonUtil.addSiPrefix(app.size) else app.downloadString) extras.add("${app.labeledRating}★") extras.add( - if (app.isFree) + if (app.isFree) { ContextCompat.getString(context, R.string.details_free) - else + } else { ContextCompat.getString(context, R.string.details_paid) + } ) - if (app.containsAds) + if (app.containsAds) { extras.add(ContextCompat.getString(context, R.string.details_contains_ads)) + } - if (app.dependencies.dependentPackages.isNotEmpty()) + if (app.dependencies.dependentPackages.isNotEmpty()) { extras.add(ContextCompat.getString(context, R.string.details_gsf_dependent)) + } binding.txtLine3.text = extras.joinToString(separator = " • ") } diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppUpdateView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppUpdateView.kt index 7a7f1a79b..693f67ca4 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppUpdateView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppUpdateView.kt @@ -76,14 +76,15 @@ class AppUpdateView @JvmOverloads constructor( binding.txtLine2.text = developerName binding.txtLine3.text = ("${CommonUtil.addSiPrefix(size)} • $updatedOn") - binding.txtLine4.text = ("$versionName (${versionCode})") - binding.txtChangelog.text = if (changelog.isNotEmpty()) + binding.txtLine4.text = ("$versionName ($versionCode)") + binding.txtChangelog.text = if (changelog.isNotEmpty()) { HtmlCompat.fromHtml( changelog, HtmlCompat.FROM_HTML_OPTION_USE_CSS_COLORS ) - else + } else { context.getString(R.string.details_changelog_unavailable) + } binding.headerIndicator.setOnClickListener { if (binding.cardChangelog.isVisible) { @@ -162,11 +163,13 @@ class AppUpdateView @JvmOverloads constructor( val isDownloadVisible = binding.progressDownload.isShown // Avoids flickering when the download is in progress - if (isDownloadVisible && scaleFactor != 1f) + if (isDownloadVisible && scaleFactor != 1f) { return + } - if (!isDownloadVisible && scaleFactor == 1f) + if (!isDownloadVisible && scaleFactor == 1f) { return + } if (scaleFactor == 1f) { binding.progressDownload.invisible() @@ -190,10 +193,11 @@ class AppUpdateView @JvmOverloads constructor( iconDrawable?.let { binding.imgIcon.load(it) { transformations( - if (scaleFactor == 1f) + if (scaleFactor == 1f) { cornersTransformation - else + } else { CircleCropTransformation() + } ) } } diff --git a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppView.kt b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppView.kt index c78e23492..5ea989447 100644 --- a/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppView.kt +++ b/app/src/main/java/com/aurora/store/view/epoxy/views/app/AppView.kt @@ -53,10 +53,11 @@ class AppView @JvmOverloads constructor( transformations(RoundedCornersTransformation(32F)) } - if (app.size > 0) + if (app.size > 0) { binding.txtSize.text = CommonUtil.addSiPrefix(app.size) - else + } else { binding.txtSize.text = app.downloadString + } } @CallbackProp diff --git a/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt b/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt index 37c028f0d..d88f07fca 100644 --- a/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/apps/AppsContainerFragment.kt @@ -96,7 +96,7 @@ class AppsContainerFragment : BaseFragment() { ) binding.pager.isUserInputEnabled = - false //Disable viewpager scroll to avoid scroll conflicts + false // Disable viewpager scroll to avoid scroll conflicts val tabTitles: MutableList = mutableListOf().apply { if (isForYouEnabled) { @@ -141,12 +141,8 @@ class AppsContainerFragment : BaseFragment() { add(CategoryFragment.newInstance(0)) } - override fun createFragment(position: Int): Fragment { - return tabFragments[position] - } + override fun createFragment(position: Int): Fragment = tabFragments[position] - override fun getItemCount(): Int { - return tabFragments.size - } + override fun getItemCount(): Int = tabFragments.size } } diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/BaseFragment.kt b/app/src/main/java/com/aurora/store/view/ui/commons/BaseFragment.kt index 34ef7f389..50b93760b 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/BaseFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/BaseFragment.kt @@ -42,8 +42,8 @@ abstract class BaseFragment : Fragment() { lateinit var permissionProvider: PermissionProvider - protected open var _binding: ViewBindingType? = null - protected val binding get() = _binding!! + protected open var viewBindingType: ViewBindingType? = null + protected val binding get() = viewBindingType!! override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -52,18 +52,19 @@ abstract class BaseFragment : Fragment() { @Suppress("UNCHECKED_CAST") override fun onCreateView( - inflater: LayoutInflater, container: ViewGroup?, + inflater: LayoutInflater, + container: ViewGroup?, savedInstanceState: Bundle? ): View? { - val type = - (javaClass.genericSuperclass as ParameterizedType).actualTypeArguments[0] as Class + val type = (javaClass.genericSuperclass as ParameterizedType) + .actualTypeArguments[0] as Class val method = type.getMethod( "inflate", LayoutInflater::class.java, ViewGroup::class.java, Boolean::class.java ) - _binding = method.invoke(null, inflater, container, false) as ViewBindingType + viewBindingType = method.invoke(null, inflater, container, false) as ViewBindingType return binding.root } @@ -75,7 +76,7 @@ abstract class BaseFragment : Fragment() { override fun onDestroyView() { cleanupRecyclerViews(findAllRecyclerViews(requireView())) - _binding = null + viewBindingType = null super.onDestroyView() } diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/CategoryBrowseFragment.kt b/app/src/main/java/com/aurora/store/view/ui/commons/CategoryBrowseFragment.kt index 60a998667..319631470 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/CategoryBrowseFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/CategoryBrowseFragment.kt @@ -37,7 +37,8 @@ import com.aurora.store.viewmodel.subcategory.CategoryStreamViewModel import dagger.hilt.android.AndroidEntryPoint @AndroidEntryPoint -class CategoryBrowseFragment : BaseFragment(), +class CategoryBrowseFragment : + BaseFragment(), GenericCarouselController.Callbacks { private val args: CategoryBrowseFragmentArgs by navArgs() private val viewModel: CategoryStreamViewModel by activityViewModels() @@ -95,6 +96,5 @@ class CategoryBrowseFragment : BaseFragment() } override fun onAppLongClick(app: App) { - } } diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/CategoryFragment.kt b/app/src/main/java/com/aurora/store/view/ui/commons/CategoryFragment.kt index 48b694697..a81c6c344 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/CategoryFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/CategoryFragment.kt @@ -39,11 +39,9 @@ class CategoryFragment : BaseFragment() { companion object { @JvmStatic - fun newInstance(pageType: Int): CategoryFragment { - return CategoryFragment().apply { - arguments = Bundle().apply { - putInt(Constants.PAGE_TYPE, pageType) - } + fun newInstance(pageType: Int): CategoryFragment = CategoryFragment().apply { + arguments = Bundle().apply { + putInt(Constants.PAGE_TYPE, pageType) } } } diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/ExpandedStreamBrowseFragment.kt b/app/src/main/java/com/aurora/store/view/ui/commons/ExpandedStreamBrowseFragment.kt index c1dd0f7f5..667cb6da0 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/ExpandedStreamBrowseFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/ExpandedStreamBrowseFragment.kt @@ -63,8 +63,9 @@ class ExpandedStreamBrowseFragment : BaseFragment(), +class ForYouFragment : + BaseFragment(), GenericCarouselController.Callbacks { private val viewModel: StreamViewModel by activityViewModels() @@ -47,11 +48,9 @@ class ForYouFragment : BaseFragment(), companion object { @JvmStatic - fun newInstance(pageType: Int): ForYouFragment { - return ForYouFragment().apply { - arguments = Bundle().apply { - putInt(Constants.PAGE_TYPE, pageType) - } + fun newInstance(pageType: Int): ForYouFragment = ForYouFragment().apply { + arguments = Bundle().apply { + putInt(Constants.PAGE_TYPE, pageType) } } } @@ -110,6 +109,5 @@ class ForYouFragment : BaseFragment(), } override fun onAppLongClick(app: App) { - } } diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/ForceRestartDialog.kt b/app/src/main/java/com/aurora/store/view/ui/commons/ForceRestartDialog.kt index 218cc7201..01aeed464 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/ForceRestartDialog.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/ForceRestartDialog.kt @@ -9,17 +9,16 @@ import com.jakewharton.processphoenix.ProcessPhoenix import dagger.hilt.android.AndroidEntryPoint @AndroidEntryPoint -class ForceRestartDialog: DialogFragment() { +class ForceRestartDialog : DialogFragment() { - override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { - return MaterialAlertDialogBuilder(requireContext()) + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog = + MaterialAlertDialogBuilder(requireContext()) .setTitle(R.string.force_restart_title) .setMessage(R.string.force_restart_summary) .setPositiveButton(getString(R.string.action_restart)) { _, _ -> ProcessPhoenix.triggerRebirth(requireContext()) } .create() - } override fun onResume() { super.onResume() diff --git a/app/src/main/java/com/aurora/store/view/ui/commons/MoreDialogFragment.kt b/app/src/main/java/com/aurora/store/view/ui/commons/MoreDialogFragment.kt index 4668933d3..c6809ffc3 100644 --- a/app/src/main/java/com/aurora/store/view/ui/commons/MoreDialogFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/commons/MoreDialogFragment.kt @@ -80,7 +80,7 @@ class MoreDialogFragment : DialogFragment() { private abstract class Option( @StringRes open val title: Int, - @DrawableRes open val icon: Int, + @DrawableRes open val icon: Int ) private data class ViewOption( @@ -95,76 +95,59 @@ class MoreDialogFragment : DialogFragment() { val screen: Screen ) : Option(title, icon) - override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { - return MaterialAlertDialogBuilder(requireContext()) + override fun onCreateDialog(savedInstanceState: Bundle?): Dialog = + MaterialAlertDialogBuilder(requireContext()) .setView(customDialogView(requireContext())) .create() - } - private fun customDialogView(context: Context): ComposeView { - return ComposeView(context).apply { - setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed) - setContent { - AuroraTheme { - primaryColor = - Color(requireContext().getStyledAttributeColor(MR.colorSurface)) - onPrimaryColor = - Color(requireContext().getStyledAttributeColor(MR.colorOnSurface)) - secondaryColor = - Color(requireContext().getStyledAttributeColor(MR.colorSecondaryContainer)) - onSecondaryColor = - Color(requireContext().getStyledAttributeColor(MR.colorOnSecondaryContainer)) + private fun customDialogView(context: Context): ComposeView = ComposeView(context).apply { + setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed) + setContent { + AuroraTheme { + primaryColor = + Color(requireContext().getStyledAttributeColor(MR.colorSurface)) + onPrimaryColor = + Color(requireContext().getStyledAttributeColor(MR.colorOnSurface)) + secondaryColor = + Color(requireContext().getStyledAttributeColor(MR.colorSecondaryContainer)) + onSecondaryColor = + Color( + requireContext().getStyledAttributeColor(MR.colorOnSecondaryContainer) + ) + Column( + modifier = Modifier + .fillMaxWidth() + .background(color = primaryColor) + .verticalScroll(rememberScrollState()) + .padding(10.dp), + verticalArrangement = Arrangement.spacedBy( + 4.dp, + Alignment.CenterVertically + ) + ) { + AppBar(onBackgroundColor = onPrimaryColor) + AccountHeader( + backgroundColor = secondaryColor, + onBackgroundColor = onSecondaryColor + ) Column( modifier = Modifier - .fillMaxWidth() - .background(color = primaryColor) - .verticalScroll(rememberScrollState()) - .padding(10.dp), - verticalArrangement = Arrangement.spacedBy( - 4.dp, - Alignment.CenterVertically - ) + .clip( + RoundedCornerShape( + topStart = 2.dp, + topEnd = 2.dp, + bottomStart = 25.dp, + bottomEnd = 25.dp + ) + ) + .background(color = secondaryColor) ) { - AppBar(onBackgroundColor = onPrimaryColor) - AccountHeader( - backgroundColor = secondaryColor, - onBackgroundColor = onSecondaryColor - ) - Column( - modifier = Modifier - .clip( - RoundedCornerShape( - topStart = 2.dp, - topEnd = 2.dp, - bottomStart = 25.dp, - bottomEnd = 25.dp - ) - ) - .background(color = secondaryColor) - ) { - getOptions().fastForEach { option -> - OptionItem( - option = option, - tintColor = onPrimaryColor, - textColor = onSecondaryColor, - onClick = { - when (option) { - is ViewOption -> { - findNavController().navigate(option.destinationID) - } - - is ComposeOption -> context.navigate(option.screen) - } - } - ) - } - } - getExtraOptions().fastForEach { option -> + getOptions().fastForEach { option -> OptionItem( option = option, tintColor = onPrimaryColor, - textColor = onPrimaryColor, + textColor = onSecondaryColor, onClick = { when (option) { is ViewOption -> { @@ -176,8 +159,24 @@ class MoreDialogFragment : DialogFragment() { } ) } - Footer(onPrimaryColor) } + getExtraOptions().fastForEach { option -> + OptionItem( + option = option, + tintColor = onPrimaryColor, + textColor = onPrimaryColor, + onClick = { + when (option) { + is ViewOption -> { + findNavController().navigate(option.destinationID) + } + + is ComposeOption -> context.navigate(option.screen) + } + } + ) + } + Footer(onPrimaryColor) } } } @@ -322,7 +321,11 @@ class MoreDialogFragment : DialogFragment() { shape = RoundedCornerShape(12.dp), border = BorderStroke( 1.dp, - Color(requireContext().getStyledAttributeColor(androidx.appcompat.R.attr.colorControlHighlight)) + Color( + requireContext().getStyledAttributeColor( + androidx.appcompat.R.attr.colorControlHighlight + ) + ) ), modifier = Modifier.fillMaxWidth() ) { @@ -331,7 +334,7 @@ class MoreDialogFragment : DialogFragment() { color = onBackgroundColor, fontWeight = FontWeight.Normal, maxLines = 1, - overflow = TextOverflow.Ellipsis, + overflow = TextOverflow.Ellipsis ) } } @@ -372,9 +375,7 @@ class MoreDialogFragment : DialogFragment() { } @Composable - fun ThreeStateIconButton( - tint: Color = Color.White - ) { + fun ThreeStateIconButton(tint: Color = Color.White) { var currentState by remember { mutableStateOf( Preferences.getInteger( @@ -418,46 +419,42 @@ class MoreDialogFragment : DialogFragment() { enum class State(val value: Int) { Auto(0), Light(1), - Dark(2), + Dark(2) } - private fun getOptions(): List