From a6a47a5eaed2d3e2fa506441c9568f9103d9713f Mon Sep 17 00:00:00 2001 From: Kirill Kamakin Date: Fri, 18 Nov 2022 21:06:42 +0100 Subject: [PATCH] Move login/logout to navigation drawer --- .../kirmanak/mealient/ui/activity/MainActivity.kt | 11 +++++++++-- app/src/main/res/menu/main_toolbar.xml | 12 ------------ app/src/main/res/menu/navigation_menu.xml | 15 ++++++++++++--- app/src/main/res/values-ru/strings.xml | 10 +++++----- app/src/main/res/values/strings.xml | 14 +++++++------- 5 files changed, 33 insertions(+), 29 deletions(-) diff --git a/app/src/main/java/gq/kirmanak/mealient/ui/activity/MainActivity.kt b/app/src/main/java/gq/kirmanak/mealient/ui/activity/MainActivity.kt index 63270ce..44d11c7 100644 --- a/app/src/main/java/gq/kirmanak/mealient/ui/activity/MainActivity.kt +++ b/app/src/main/java/gq/kirmanak/mealient/ui/activity/MainActivity.kt @@ -75,6 +75,12 @@ class MainActivity : AppCompatActivity(R.layout.main_activity) { R.id.add_recipe -> actionGlobalAddRecipeFragment() R.id.recipes_list -> actionGlobalRecipesListFragment() R.id.change_url -> actionGlobalBaseURLFragment() + R.id.login -> actionGlobalAuthenticationFragment() + R.id.logout -> { + viewModel.logout() + binding.drawer.close() + return true + } else -> throw IllegalArgumentException("Unknown menu item id: ${menuItem.itemId}") } navigateTo(directions) @@ -86,6 +92,9 @@ class MainActivity : AppCompatActivity(R.layout.main_activity) { logger.v { "onUiStateChange() called with: uiState = $uiState" } supportActionBar?.title = if (uiState.titleVisible) title else null binding.navigationView.isVisible = uiState.navigationVisible + val menu = binding.navigationView.menu + menu.findItem(R.id.logout).isVisible = uiState.canShowLogout + menu.findItem(R.id.login).isVisible = uiState.canShowLogin invalidateOptionsMenu() } @@ -108,8 +117,6 @@ class MainActivity : AppCompatActivity(R.layout.main_activity) { override fun onCreateOptionsMenu(menu: Menu): Boolean { logger.v { "onCreateOptionsMenu() called with: menu = $menu" } menuInflater.inflate(R.menu.main_toolbar, menu) - menu.findItem(R.id.logout).isVisible = uiState.canShowLogout - menu.findItem(R.id.login).isVisible = uiState.canShowLogin val searchItem = menu.findItem(R.id.search_recipe_action) searchItem.isVisible = uiState.searchVisible setupSearchItem(searchItem) diff --git a/app/src/main/res/menu/main_toolbar.xml b/app/src/main/res/menu/main_toolbar.xml index 242a16e..8e4cf4e 100644 --- a/app/src/main/res/menu/main_toolbar.xml +++ b/app/src/main/res/menu/main_toolbar.xml @@ -2,18 +2,6 @@ - - - - + android:title="@string/menu_navigation_drawer_recipes_list" /> + android:title="@string/menu_navigation_drawer_add_recipe" /> + android:title="@string/menu_navigation_drawer_change_url" /> + + + + + \ No newline at end of file diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index fea499a..f5a69f7 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -5,7 +5,7 @@ URL сервера Войти Изображение готового блюда - Выйти + Выйти Загрузка Ингредиенты Инструкции @@ -21,11 +21,11 @@ Что-то пошло не так, попробуйте еще раз. Проверьте формат URL: %s Продолжить - Войти + Войти Название рецепта Описание - Рецепты - Добавить рецепт + Рецепты + Добавить рецепт Количество порций Сохранить рецепт Добавить шаг @@ -47,6 +47,6 @@ неожиданный ответ нет соединения Ошибка загрузки. - Сменить URL + Сменить URL Найти рецепты \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 457b90e..fe674b5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5,8 +5,8 @@ Server URL Login Picture of the cooked meal - @string/menu_main_toolbar_logout - Logout + @string/menu_navigation_drawer_logout + Logout Loading… @string/content_description_view_holder_recipe_image Ingredients @@ -18,8 +18,8 @@ Check URL format: %s Proceed @string/fragment_authentication_unknown_error - @string/menu_main_toolbar_login - Login + @string/menu_navigation_drawer_login + Login Okay Step: %d E-mail can\'t be empty @@ -28,8 +28,8 @@ Something went wrong, please try again. Recipe name Description - Add recipe - Recipes + Add recipe + Recipes Recipe yield Save recipe New step @@ -51,6 +51,6 @@ unauthorized unexpected response no connection - Change URL + Change URL Search recipes \ No newline at end of file