Loading app/src/main/java/foundation/e/apps/MainActivity.kt +27 −17 Original line number Diff line number Diff line Loading @@ -29,12 +29,14 @@ import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.lifecycleScope import androidx.navigation.NavController import androidx.navigation.NavOptions import androidx.navigation.findNavController import androidx.navigation.fragment.NavHostFragment import androidx.navigation.ui.NavigationUI import androidx.navigation.ui.setupWithNavController import com.aurora.gplayapi.exceptions.ApiException import com.google.android.material.bottomnavigation.BottomNavigationView import com.google.android.material.snackbar.Snackbar import dagger.hilt.android.AndroidEntryPoint import foundation.e.apps.application.subFrags.ApplicationDialogFragment Loading Loading @@ -75,23 +77,7 @@ class MainActivity : AppCompatActivity() { supportFragmentManager.findFragmentById(R.id.fragment) as NavHostFragment val navController = navHostFragment.navController bottomNavigationView.setupWithNavController(navController) bottomNavigationView.setOnItemSelectedListener { val fragment = navHostFragment.childFragmentManager.fragments.find { fragment -> fragment is SettingsFragment } if (bottomNavigationView.selectedItemId == R.id.settingsFragment && fragment is SettingsFragment && !fragment.isAnyAppSourceSelected()) { ApplicationDialogFragment( title = "", message = getString(R.string.select_one_source_of_applications), positiveButtonText = getString(R.string.ok) ).show(supportFragmentManager, TAG) return@setOnItemSelectedListener false } return@setOnItemSelectedListener NavigationUI.onNavDestinationSelected( it, navController ) } setupBottomNavItemSelectedListener(bottomNavigationView, navHostFragment, navController) var hasInternet = true Loading Loading @@ -241,6 +227,30 @@ class MainActivity : AppCompatActivity() { } } private fun setupBottomNavItemSelectedListener( bottomNavigationView: BottomNavigationView, navHostFragment: NavHostFragment, navController: NavController ) { bottomNavigationView.setOnItemSelectedListener { val fragment = navHostFragment.childFragmentManager.fragments.find { fragment -> fragment is SettingsFragment } if (bottomNavigationView.selectedItemId == R.id.settingsFragment && fragment is SettingsFragment && !fragment.isAnyAppSourceSelected()) { ApplicationDialogFragment( title = "", message = getString(R.string.select_one_source_of_applications), positiveButtonText = getString(R.string.ok) ).show(supportFragmentManager, TAG) return@setOnItemSelectedListener false } return@setOnItemSelectedListener NavigationUI.onNavDestinationSelected( it, navController ) } } private fun handleFusedDownloadQueued( it: FusedDownload, viewModel: MainActivityViewModel Loading app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +1 −1 Original line number Diff line number Diff line Loading @@ -1224,7 +1224,7 @@ class FusedAPIImpl @Inject constructor( mapOf( "popular_apps" to context.getString(R.string.popular_apps), "popular_games" to context.getString(R.string.popular_games), "discover" to context.getString(R.string.discover) "discover" to context.getString(R.string.discover_pwa) ) } headings.forEach { (key, value) -> Loading app/src/main/java/foundation/e/apps/home/model/HomeParentRVAdapter.kt +0 −16 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package foundation.e.apps.home.model import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.lifecycle.LifecycleOwner import androidx.recyclerview.widget.LinearLayoutManager Loading @@ -27,8 +26,6 @@ import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView import foundation.e.apps.AppInfoFetchViewModel import foundation.e.apps.MainActivityViewModel import foundation.e.apps.R import foundation.e.apps.api.fused.FusedAPIImpl import foundation.e.apps.api.fused.FusedAPIInterface import foundation.e.apps.api.fused.data.FusedApp import foundation.e.apps.api.fused.data.FusedHome Loading Loading @@ -74,19 +71,6 @@ class HomeParentRVAdapter( holder.binding.titleTV.text = fusedHome.title when (fusedHome.source) { FusedAPIImpl.APP_TYPE_OPEN -> { holder.binding.categoryTag.visibility = View.VISIBLE holder.binding.categoryTag.text = holder.binding.root.context.getString(R.string.open_source) } FusedAPIImpl.APP_TYPE_PWA -> { holder.binding.categoryTag.visibility = View.VISIBLE holder.binding.categoryTag.text = holder.binding.root.context.getString(R.string.pwa) } else -> { holder.binding.categoryTag.visibility = View.GONE } } holder.binding.childRV.apply { recycledViewPool.setMaxRecycledViews(0, 0) adapter = homeChildRVAdapter Loading app/src/main/res/layout/home_parent_list_item.xml +1 −21 Original line number Diff line number Diff line Loading @@ -36,27 +36,7 @@ android:paddingEnd="10dp" android:textColor="?android:textColorPrimary" android:textSize="18sp" android:textStyle="bold" android:ellipsize="end" android:lines="1" android:layout_toStartOf="@id/categoryTag"/> <TextView android:id="@+id/categoryTag" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_marginEnd="14dp" android:background="@drawable/bg_tag_rounded" android:paddingStart="6dp" android:paddingTop="2dp" android:paddingEnd="6dp" android:paddingBottom="2dp" android:textAllCaps="false" android:textColor="#626262" android:textSize="15sp" android:visibility="gone" tools:text="Open Source" /> android:textStyle="bold" /> </RelativeLayout> Loading app/src/main/res/values/strings.xml +9 −8 Original line number Diff line number Diff line Loading @@ -62,8 +62,8 @@ <string name="preference_update_notify_available_description">Show a notification when app updates are available</string> <string name="Show_applications">Show applications:</string> <string name="Show_commercial_apps">Show commercial apps</string> <string name="show_only_open_source_apps">Show only open-source apps</string> <string name="show_only_pwa_apps">Show only PWAs</string> <string name="show_only_open_source_apps">Show open source apps</string> <string name="show_only_pwa_apps">Show PWAs</string> <string name="about">About</string> <string name="app_version_label">App Lounge version</string> <string name="os_version">/e/ OS version</string> Loading Loading @@ -127,12 +127,13 @@ <!-- Home Fragment --> <string name="discover">Discover</string> <string name="top_updated_apps">Top Updated Apps</string> <string name="top_updated_games">Top Updated Games</string> <string name="popular_apps_in_last_24_hours">Popular Apps In Last 24 Hours</string> <string name="popular_games_in_last_24_hours">Popular Games In Last 24 Hours</string> <string name="popular_apps">Popular Apps</string> <string name="popular_games">Popular Games</string> <string name="discover_pwa">Discover PWA</string> <string name="top_updated_apps">Open Source Top Updated Apps</string> <string name="top_updated_games">Open Source Top Updated Games</string> <string name="popular_apps_in_last_24_hours">Open Source Popular Apps In Last 24 Hours</string> <string name="popular_games_in_last_24_hours">Open Source Popular Games In Last 24 Hours</string> <string name="popular_apps">PWA Popular Apps</string> <string name="popular_games">PWA Popular Games</string> <string name="topselling_free_apps">Top Free Apps</string> <string name="topselling_free_games">Top Free Games</string> Loading Loading
app/src/main/java/foundation/e/apps/MainActivity.kt +27 −17 Original line number Diff line number Diff line Loading @@ -29,12 +29,14 @@ import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AppCompatActivity import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.lifecycleScope import androidx.navigation.NavController import androidx.navigation.NavOptions import androidx.navigation.findNavController import androidx.navigation.fragment.NavHostFragment import androidx.navigation.ui.NavigationUI import androidx.navigation.ui.setupWithNavController import com.aurora.gplayapi.exceptions.ApiException import com.google.android.material.bottomnavigation.BottomNavigationView import com.google.android.material.snackbar.Snackbar import dagger.hilt.android.AndroidEntryPoint import foundation.e.apps.application.subFrags.ApplicationDialogFragment Loading Loading @@ -75,23 +77,7 @@ class MainActivity : AppCompatActivity() { supportFragmentManager.findFragmentById(R.id.fragment) as NavHostFragment val navController = navHostFragment.navController bottomNavigationView.setupWithNavController(navController) bottomNavigationView.setOnItemSelectedListener { val fragment = navHostFragment.childFragmentManager.fragments.find { fragment -> fragment is SettingsFragment } if (bottomNavigationView.selectedItemId == R.id.settingsFragment && fragment is SettingsFragment && !fragment.isAnyAppSourceSelected()) { ApplicationDialogFragment( title = "", message = getString(R.string.select_one_source_of_applications), positiveButtonText = getString(R.string.ok) ).show(supportFragmentManager, TAG) return@setOnItemSelectedListener false } return@setOnItemSelectedListener NavigationUI.onNavDestinationSelected( it, navController ) } setupBottomNavItemSelectedListener(bottomNavigationView, navHostFragment, navController) var hasInternet = true Loading Loading @@ -241,6 +227,30 @@ class MainActivity : AppCompatActivity() { } } private fun setupBottomNavItemSelectedListener( bottomNavigationView: BottomNavigationView, navHostFragment: NavHostFragment, navController: NavController ) { bottomNavigationView.setOnItemSelectedListener { val fragment = navHostFragment.childFragmentManager.fragments.find { fragment -> fragment is SettingsFragment } if (bottomNavigationView.selectedItemId == R.id.settingsFragment && fragment is SettingsFragment && !fragment.isAnyAppSourceSelected()) { ApplicationDialogFragment( title = "", message = getString(R.string.select_one_source_of_applications), positiveButtonText = getString(R.string.ok) ).show(supportFragmentManager, TAG) return@setOnItemSelectedListener false } return@setOnItemSelectedListener NavigationUI.onNavDestinationSelected( it, navController ) } } private fun handleFusedDownloadQueued( it: FusedDownload, viewModel: MainActivityViewModel Loading
app/src/main/java/foundation/e/apps/api/fused/FusedAPIImpl.kt +1 −1 Original line number Diff line number Diff line Loading @@ -1224,7 +1224,7 @@ class FusedAPIImpl @Inject constructor( mapOf( "popular_apps" to context.getString(R.string.popular_apps), "popular_games" to context.getString(R.string.popular_games), "discover" to context.getString(R.string.discover) "discover" to context.getString(R.string.discover_pwa) ) } headings.forEach { (key, value) -> Loading
app/src/main/java/foundation/e/apps/home/model/HomeParentRVAdapter.kt +0 −16 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package foundation.e.apps.home.model import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.lifecycle.LifecycleOwner import androidx.recyclerview.widget.LinearLayoutManager Loading @@ -27,8 +26,6 @@ import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView import foundation.e.apps.AppInfoFetchViewModel import foundation.e.apps.MainActivityViewModel import foundation.e.apps.R import foundation.e.apps.api.fused.FusedAPIImpl import foundation.e.apps.api.fused.FusedAPIInterface import foundation.e.apps.api.fused.data.FusedApp import foundation.e.apps.api.fused.data.FusedHome Loading Loading @@ -74,19 +71,6 @@ class HomeParentRVAdapter( holder.binding.titleTV.text = fusedHome.title when (fusedHome.source) { FusedAPIImpl.APP_TYPE_OPEN -> { holder.binding.categoryTag.visibility = View.VISIBLE holder.binding.categoryTag.text = holder.binding.root.context.getString(R.string.open_source) } FusedAPIImpl.APP_TYPE_PWA -> { holder.binding.categoryTag.visibility = View.VISIBLE holder.binding.categoryTag.text = holder.binding.root.context.getString(R.string.pwa) } else -> { holder.binding.categoryTag.visibility = View.GONE } } holder.binding.childRV.apply { recycledViewPool.setMaxRecycledViews(0, 0) adapter = homeChildRVAdapter Loading
app/src/main/res/layout/home_parent_list_item.xml +1 −21 Original line number Diff line number Diff line Loading @@ -36,27 +36,7 @@ android:paddingEnd="10dp" android:textColor="?android:textColorPrimary" android:textSize="18sp" android:textStyle="bold" android:ellipsize="end" android:lines="1" android:layout_toStartOf="@id/categoryTag"/> <TextView android:id="@+id/categoryTag" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_marginEnd="14dp" android:background="@drawable/bg_tag_rounded" android:paddingStart="6dp" android:paddingTop="2dp" android:paddingEnd="6dp" android:paddingBottom="2dp" android:textAllCaps="false" android:textColor="#626262" android:textSize="15sp" android:visibility="gone" tools:text="Open Source" /> android:textStyle="bold" /> </RelativeLayout> Loading
app/src/main/res/values/strings.xml +9 −8 Original line number Diff line number Diff line Loading @@ -62,8 +62,8 @@ <string name="preference_update_notify_available_description">Show a notification when app updates are available</string> <string name="Show_applications">Show applications:</string> <string name="Show_commercial_apps">Show commercial apps</string> <string name="show_only_open_source_apps">Show only open-source apps</string> <string name="show_only_pwa_apps">Show only PWAs</string> <string name="show_only_open_source_apps">Show open source apps</string> <string name="show_only_pwa_apps">Show PWAs</string> <string name="about">About</string> <string name="app_version_label">App Lounge version</string> <string name="os_version">/e/ OS version</string> Loading Loading @@ -127,12 +127,13 @@ <!-- Home Fragment --> <string name="discover">Discover</string> <string name="top_updated_apps">Top Updated Apps</string> <string name="top_updated_games">Top Updated Games</string> <string name="popular_apps_in_last_24_hours">Popular Apps In Last 24 Hours</string> <string name="popular_games_in_last_24_hours">Popular Games In Last 24 Hours</string> <string name="popular_apps">Popular Apps</string> <string name="popular_games">Popular Games</string> <string name="discover_pwa">Discover PWA</string> <string name="top_updated_apps">Open Source Top Updated Apps</string> <string name="top_updated_games">Open Source Top Updated Games</string> <string name="popular_apps_in_last_24_hours">Open Source Popular Apps In Last 24 Hours</string> <string name="popular_games_in_last_24_hours">Open Source Popular Games In Last 24 Hours</string> <string name="popular_apps">PWA Popular Apps</string> <string name="popular_games">PWA Popular Games</string> <string name="topselling_free_apps">Top Free Apps</string> <string name="topselling_free_games">Top Free Games</string> Loading