From ad4c24cedd5c817e44b507bf705cac6d6abee2d2 Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 16:58:49 +0200 Subject: [PATCH 1/9] Adds new Booking list top level fragment --- .../ui/bookings/BookingListFragment.kt | 37 +++++++++++++++++++ .../main/res/navigation/nav_graph_main.xml | 5 +++ 2 files changed, 42 insertions(+) create mode 100644 WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt new file mode 100644 index 000000000000..5860951d655d --- /dev/null +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt @@ -0,0 +1,37 @@ +package com.woocommerce.android.ui.bookings + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.compose.material.Text +import androidx.compose.ui.platform.ComposeView +import androidx.compose.ui.platform.ViewCompositionStrategy +import com.woocommerce.android.R +import com.woocommerce.android.ui.base.TopLevelFragment +import com.woocommerce.android.ui.compose.theme.WooThemeWithBackground +import com.woocommerce.android.ui.main.AppBarStatus +import dagger.hilt.android.AndroidEntryPoint + +@AndroidEntryPoint +class BookingListFragment : TopLevelFragment() { + override val activityAppBarStatus: AppBarStatus + get() = AppBarStatus.Hidden + + override fun getFragmentTitle() = getString(R.string.bookings_tab_title) + override fun shouldExpandToolbar(): Boolean = false + override fun scrollToTop() { + return + } + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { + return ComposeView(requireContext()).apply { + setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed) + setContent { + WooThemeWithBackground { + Text("Empty Bookings screen: WIP") + } + } + } + } +} diff --git a/WooCommerce/src/main/res/navigation/nav_graph_main.xml b/WooCommerce/src/main/res/navigation/nav_graph_main.xml index b29116fdaddb..acd5d1673415 100644 --- a/WooCommerce/src/main/res/navigation/nav_graph_main.xml +++ b/WooCommerce/src/main/res/navigation/nav_graph_main.xml @@ -217,6 +217,11 @@ app:popEnterAnim="@null" app:popExitAnim="@anim/activity_fade_out" /> + Date: Tue, 16 Sep 2025 17:01:26 +0200 Subject: [PATCH 2/9] Add new bookings tab to bottom nav bar --- .../android/analytics/AnalyticsEvent.kt | 2 + .../ui/main/BottomNavigationPosition.kt | 5 +- .../android/ui/main/MainActivity.kt | 3 + .../ui/main/MainBottomNavigationView.kt | 10 +++ .../res/drawable/as_menu_booking_list.xml | 83 +++++++++++++++++++ .../src/main/res/drawable/ic_bookings_tab.xml | 9 ++ .../src/main/res/menu/menu_bottom_bar.xml | 5 ++ WooCommerce/src/main/res/values/strings.xml | 6 ++ 8 files changed, 122 insertions(+), 1 deletion(-) create mode 100644 WooCommerce/src/main/res/drawable/as_menu_booking_list.xml create mode 100644 WooCommerce/src/main/res/drawable/ic_bookings_tab.xml diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsEvent.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsEvent.kt index e2bde9b54aeb..86b9542a8b84 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsEvent.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsEvent.kt @@ -514,6 +514,8 @@ enum class AnalyticsEvent(override val siteless: Boolean = false) : IAnalyticsEv MAIN_TAB_POS_SELECTED, MAIN_TAB_HUB_MENU_SELECTED, MAIN_TAB_HUB_MENU_RESELECTED, + MAIN_TAB_BOOKINGS_SELECTED, + MAIN_TAB_BOOKINGS_RESELECTED, // -- Settings SETTING_CHANGE, diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/BottomNavigationPosition.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/BottomNavigationPosition.kt index 03fec335a95f..36ea5c83835a 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/BottomNavigationPosition.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/BottomNavigationPosition.kt @@ -6,13 +6,15 @@ const val MY_STORE_POSITION = 0 const val ORDERS_POSITION = 1 const val PRODUCTS_POSITION = 2 const val POS_POSITION = 3 -const val MORE_POSITION = 4 +const val BOOKINGS_POSITION = 4 +const val MORE_POSITION = 5 enum class BottomNavigationPosition(val position: Int, val id: Int) { MY_STORE(MY_STORE_POSITION, R.id.dashboard), ORDERS(ORDERS_POSITION, R.id.orders), PRODUCTS(PRODUCTS_POSITION, R.id.products), POS(POS_POSITION, R.id.point_of_sale), + BOOKINGS(BOOKINGS_POSITION, R.id.bookings), MORE(MORE_POSITION, R.id.moreMenu) } @@ -20,6 +22,7 @@ fun findNavigationPositionById(id: Int): BottomNavigationPosition = when (id) { BottomNavigationPosition.MY_STORE.id -> BottomNavigationPosition.MY_STORE BottomNavigationPosition.ORDERS.id -> BottomNavigationPosition.ORDERS BottomNavigationPosition.PRODUCTS.id -> BottomNavigationPosition.PRODUCTS + BottomNavigationPosition.BOOKINGS.id -> BottomNavigationPosition.BOOKINGS BottomNavigationPosition.POS.id -> BottomNavigationPosition.POS BottomNavigationPosition.MORE.id -> BottomNavigationPosition.MORE else -> BottomNavigationPosition.MY_STORE diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt index 26cb400780c9..2bff57005268 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt @@ -65,6 +65,7 @@ import com.woocommerce.android.ui.common.InfoScreenFragment import com.woocommerce.android.ui.compose.theme.WooThemeWithBackground import com.woocommerce.android.ui.feedback.SurveyType import com.woocommerce.android.ui.login.LoginActivity +import com.woocommerce.android.ui.main.BottomNavigationPosition.BOOKINGS import com.woocommerce.android.ui.main.BottomNavigationPosition.MORE import com.woocommerce.android.ui.main.BottomNavigationPosition.MY_STORE import com.woocommerce.android.ui.main.BottomNavigationPosition.ORDERS @@ -756,6 +757,7 @@ class MainActivity : ORDERS -> AnalyticsEvent.MAIN_TAB_ORDERS_SELECTED PRODUCTS -> AnalyticsEvent.MAIN_TAB_PRODUCTS_SELECTED POS -> AnalyticsEvent.MAIN_TAB_POS_SELECTED + BOOKINGS -> AnalyticsEvent.MAIN_TAB_BOOKINGS_SELECTED MORE -> AnalyticsEvent.MAIN_TAB_HUB_MENU_SELECTED } AnalyticsTracker.track(stat, mapOf(KEY_HORIZONTAL_SIZE_CLASS to deviceTypeToAnalyticsString)) @@ -781,6 +783,7 @@ class MainActivity : PRODUCTS -> AnalyticsEvent.MAIN_TAB_PRODUCTS_RESELECTED MORE -> AnalyticsEvent.MAIN_TAB_HUB_MENU_RESELECTED POS -> null + BOOKINGS -> AnalyticsEvent.MAIN_TAB_BOOKINGS_RESELECTED } stat?.let { AnalyticsTracker.track(it, mapOf(KEY_HORIZONTAL_SIZE_CLASS to deviceTypeToAnalyticsString)) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainBottomNavigationView.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainBottomNavigationView.kt index 04cabf2fb97b..728a8893ef01 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainBottomNavigationView.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainBottomNavigationView.kt @@ -157,6 +157,15 @@ class MainBottomNavigationView @JvmOverloads constructor( listener.onNavItemReselected(navPos) } + /** + * Currently BottomNavigationView support a maximum of 5 tabs. We need to override that limit to enable + * adding or removing tabs based on the user's site type/configuration. However, there shouldn't be any + * scenario where we end up displaying more than 5 tabs at once. + */ + override fun getMaxItemCount(): Int { + return OVERRIDEN_MAX_ITEM_COUNT + } + private fun assignNavigationListeners(assign: Boolean) { setOnItemSelectedListener(if (assign) this else null) setOnItemReselectedListener(if (assign) this else null) @@ -167,5 +176,6 @@ class MainBottomNavigationView @JvmOverloads constructor( companion object { private const val MAX_CHARACTERS_IN_BADGE = 4 + private const val OVERRIDEN_MAX_ITEM_COUNT = 6 } } diff --git a/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml b/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml new file mode 100644 index 000000000000..d3566638612f --- /dev/null +++ b/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/WooCommerce/src/main/res/drawable/ic_bookings_tab.xml b/WooCommerce/src/main/res/drawable/ic_bookings_tab.xml new file mode 100644 index 000000000000..6b3377b67b8c --- /dev/null +++ b/WooCommerce/src/main/res/drawable/ic_bookings_tab.xml @@ -0,0 +1,9 @@ + + + diff --git a/WooCommerce/src/main/res/menu/menu_bottom_bar.xml b/WooCommerce/src/main/res/menu/menu_bottom_bar.xml index 4a52292b1905..01da6a7bcbc7 100644 --- a/WooCommerce/src/main/res/menu/menu_bottom_bar.xml +++ b/WooCommerce/src/main/res/menu/menu_bottom_bar.xml @@ -15,6 +15,11 @@ android:icon="@drawable/as_menu_products_list" android:title="@string/products" /> + + WordPress Media Library Media loading failed There is no network available + + + Bookings + From f64a43b6e6c3d83267c9bd7dcf2262bcdbd74bc6 Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 17:28:39 +0200 Subject: [PATCH 3/9] Fix crash when opening bookings fragment --- .../res/drawable/as_menu_booking_list.xml | 60 ------------------- 1 file changed, 60 deletions(-) diff --git a/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml b/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml index d3566638612f..9faf79cf1ab0 100644 --- a/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml +++ b/WooCommerce/src/main/res/drawable/as_menu_booking_list.xml @@ -20,64 +20,4 @@ android:drawable="@drawable/ic_bookings_tab"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 65315dc70acacf4ed552373d204fb3f132d9bf6a Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 18:18:48 +0200 Subject: [PATCH 4/9] Add logic to show hide bookings tab dynamically This also includes a local feature flag to hide bookings tab while we work on the feature --- .../ui/bookings/tab/BookingsTabController.kt | 46 +++++++++++++++++++ .../ui/bookings/tab/ShowBookingsTab.kt | 13 ++++++ .../android/ui/main/MainActivity.kt | 4 ++ .../woocommerce/android/util/FeatureFlag.kt | 6 ++- 4 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt create mode 100644 WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt new file mode 100644 index 000000000000..5acdceab519e --- /dev/null +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt @@ -0,0 +1,46 @@ +package com.woocommerce.android.ui.bookings.tab + +import androidx.lifecycle.DefaultLifecycleObserver +import androidx.lifecycle.LifecycleOwner +import androidx.lifecycle.lifecycleScope +import com.woocommerce.android.R +import com.woocommerce.android.databinding.ActivityMainBinding +import com.woocommerce.android.ui.main.MainActivity +import kotlinx.coroutines.launch +import javax.inject.Inject + +class BookingsTabController @Inject constructor( + private val showBookingsTab: ShowBookingsTab +) : DefaultLifecycleObserver { + private lateinit var activity: MainActivity + private lateinit var binding: ActivityMainBinding + + fun init( + activity: MainActivity, + binding: ActivityMainBinding + ) { + this.activity = activity + this.binding = binding + activity.lifecycle.addObserver(this) + } + + override fun onResume(owner: LifecycleOwner) { + checkBookingsTabVisibility() + } + + override fun onDestroy(owner: LifecycleOwner) { + owner.lifecycle.removeObserver(this) + } + + private fun checkBookingsTabVisibility() { + activity.lifecycleScope.launch { + val shouldShowBookingsTabResult = showBookingsTab() + shouldShowBookingsTabResult.onSuccess { + binding.bottomNav.menu.findItem(R.id.bookings)?.isVisible = it + } + shouldShowBookingsTabResult.onFailure { + // TODO log error or track errors? + } + } + } +} diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt new file mode 100644 index 000000000000..85364eae571f --- /dev/null +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt @@ -0,0 +1,13 @@ +package com.woocommerce.android.ui.bookings.tab + +import com.woocommerce.android.util.FeatureFlag +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext +import javax.inject.Inject + +class ShowBookingsTab @Inject constructor() { + suspend operator fun invoke(): Result = withContext(Dispatchers.IO) { + // TODO CHECK IF THERE ARE ANY BOOKABLE PRODUCTS PUBLISHED FOR THE SITE + return@withContext Result.success(FeatureFlag.BOOKINGS_MVP.isEnabled()) + } +} diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt index 2bff57005268..83b45152bf4c 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt @@ -61,6 +61,7 @@ import com.woocommerce.android.ui.appwidgets.WidgetUpdater import com.woocommerce.android.ui.base.BaseFragment import com.woocommerce.android.ui.base.TopLevelFragment import com.woocommerce.android.ui.base.UIMessageResolver +import com.woocommerce.android.ui.bookings.tab.BookingsTabController import com.woocommerce.android.ui.common.InfoScreenFragment import com.woocommerce.android.ui.compose.theme.WooThemeWithBackground import com.woocommerce.android.ui.feedback.SurveyType @@ -188,6 +189,8 @@ class MainActivity : @Inject lateinit var posTabController: WooPosTabController + @Inject lateinit var bookingsTabController: BookingsTabController + private val viewModel: MainActivityViewModel by viewModels() private var unfilledOrderCount: Int = 0 @@ -333,6 +336,7 @@ class MainActivity : binding.bottomNav.init(navController, this) posTabController.initialize(this, binding, navController) + bookingsTabController.init(this, binding) presenter.takeView(this) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/util/FeatureFlag.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/util/FeatureFlag.kt index d1c8a31aaa32..c066db0aabac 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/util/FeatureFlag.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/util/FeatureFlag.kt @@ -12,7 +12,8 @@ enum class FeatureFlag { ORDER_CREATION_AUTO_TAX_RATE, WOO_POS_HISTORICAL_ORDERS_M1, WOO_POS_LOCAL_CATALOG_M1, - AI_PRODUCT_IMAGE_BACKGROUND_REMOVAL; + AI_PRODUCT_IMAGE_BACKGROUND_REMOVAL, + BOOKINGS_MVP; fun isEnabled(context: Context? = null): Boolean { return when (this) { @@ -25,7 +26,8 @@ enum class FeatureFlag { BETTER_CUSTOMER_SEARCH_M2, ORDER_CREATION_AUTO_TAX_RATE, AI_PRODUCT_IMAGE_BACKGROUND_REMOVAL, - WOO_POS_LOCAL_CATALOG_M1 -> PackageUtils.isDebugBuild() + WOO_POS_LOCAL_CATALOG_M1, + BOOKINGS_MVP -> PackageUtils.isDebugBuild() } } } From 206e20d2f00f4dce27b24f9cb114b96391d5166e Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 20:29:26 +0200 Subject: [PATCH 5/9] Fix warning --- .../com/woocommerce/android/ui/bookings/BookingListFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt index 5860951d655d..412eccf8c550 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt @@ -4,7 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import androidx.compose.material.Text +import androidx.compose.material3.Text import androidx.compose.ui.platform.ComposeView import androidx.compose.ui.platform.ViewCompositionStrategy import com.woocommerce.android.R From a4925cffb1734db5d6504317beca526ec5055f9b Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 20:30:16 +0200 Subject: [PATCH 6/9] Update placeholder text --- .../com/woocommerce/android/ui/bookings/BookingListFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt index 412eccf8c550..3eebdbd5e1f3 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/BookingListFragment.kt @@ -29,7 +29,7 @@ class BookingListFragment : TopLevelFragment() { setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed) setContent { WooThemeWithBackground { - Text("Empty Bookings screen: WIP") + Text("Empty Booking List screen: WIP") } } } From f80a3ed2cc11570c7cf62a91bc1a4589b23bdccb Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Tue, 16 Sep 2025 20:32:01 +0200 Subject: [PATCH 7/9] Update todo text --- .../com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt index 85364eae571f..e7c5c8dde322 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt @@ -7,7 +7,7 @@ import javax.inject.Inject class ShowBookingsTab @Inject constructor() { suspend operator fun invoke(): Result = withContext(Dispatchers.IO) { - // TODO CHECK IF THERE ARE ANY BOOKABLE PRODUCTS PUBLISHED FOR THE SITE + // TODO: Fetch if site has any published bookable product AND if site is CIAB return@withContext Result.success(FeatureFlag.BOOKINGS_MVP.isEnabled()) } } From cbb8166e38c0f4cc0516a17a26fe064fa2eb926a Mon Sep 17 00:00:00 2001 From: jorgemucientesfayos Date: Wed, 17 Sep 2025 11:02:53 +0200 Subject: [PATCH 8/9] Remove TODO to fix detekt failure --- .../com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt index e7c5c8dde322..93628e43ad3f 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/ShowBookingsTab.kt @@ -7,7 +7,7 @@ import javax.inject.Inject class ShowBookingsTab @Inject constructor() { suspend operator fun invoke(): Result = withContext(Dispatchers.IO) { - // TODO: Fetch if site has any published bookable product AND if site is CIAB + // Add here: Fetch if site has any published bookable product AND if site is CIAB return@withContext Result.success(FeatureFlag.BOOKINGS_MVP.isEnabled()) } } From dc49142c5114d7ad7b2d1731f7f1c187a661beff Mon Sep 17 00:00:00 2001 From: Jorge Mucientes Date: Wed, 17 Sep 2025 15:57:45 +0200 Subject: [PATCH 9/9] Remove unnecessary val property Co-authored-by: Adam Grzybkowski --- .../ui/bookings/tab/BookingsTabController.kt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt index 5acdceab519e..e8e938ea9029 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/bookings/tab/BookingsTabController.kt @@ -34,13 +34,13 @@ class BookingsTabController @Inject constructor( private fun checkBookingsTabVisibility() { activity.lifecycleScope.launch { - val shouldShowBookingsTabResult = showBookingsTab() - shouldShowBookingsTabResult.onSuccess { - binding.bottomNav.menu.findItem(R.id.bookings)?.isVisible = it - } - shouldShowBookingsTabResult.onFailure { - // TODO log error or track errors? - } + showBookingsTab() + .onSuccess { + binding.bottomNav.menu.findItem(R.id.bookings)?.isVisible = it + } + .onFailure { + // TODO log error or track errors? + } } } }