Ver código fonte

Moved logout option to profile screen

Vadik Sirekanyan 7 anos atrás
pai
commit
e441da83a0

+ 6 - 10
app/src/main/java/me/vadik/knigopis/MainActivity.kt

@@ -283,20 +283,16 @@ class MainActivity : AppCompatActivity(), Router {
 
     private fun refreshOptionsMenu() {
         initNavigationView()
-        loginOption.isVisible = true
-        profileOption.isVisible = auth.isAuthorized()
-        if (auth.isAuthorized()) {
-            loginOption.setTitle(R.string.option_logout)
-            loginOption.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER)
-        } else {
-            loginOption.setTitle(R.string.option_login)
-            loginOption.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM)
+        auth.isAuthorized().let { authorized ->
+            loginOption.isVisible = !authorized
+            profileOption.isVisible = authorized
         }
     }
 
     private fun refresh(tab: CurrentTab = currentTab, isForce: Boolean = false) {
-        setCurrentTab(tab, isForce)
-        bottomNavigation.selectedItemId = tab.itemId
+        val t = if (auth.isAuthorized()) tab else NOTES_TAB
+        setCurrentTab(t, isForce)
+        bottomNavigation.selectedItemId = t.itemId
     }
 
     private fun setCurrentTab(tab: CurrentTab, isForce: Boolean = false) {

+ 5 - 0
app/src/main/java/me/vadik/knigopis/profile/ProfileActivity.kt

@@ -92,6 +92,11 @@ class ProfileActivity : AppCompatActivity() {
                     }
                     true
                 }
+                R.id.option_logout_profile -> {
+                    auth.logout()
+                    finish()
+                    true
+                }
                 else -> false
             }
         }

+ 6 - 4
app/src/main/res/menu/options.xml

@@ -2,6 +2,12 @@
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
+    <item
+        android:id="@+id/option_login"
+        android:title="@string/option_login"
+        android:visible="false"
+        app:showAsAction="ifRoom" />
+
     <item
         android:id="@+id/option_profile"
         android:title="@string/option_profile"
@@ -13,8 +19,4 @@
         android:title="@string/option_about"
         app:showAsAction="never" />
 
-    <item
-        android:id="@+id/option_login"
-        android:visible="false" />
-
 </menu>

+ 5 - 0
app/src/main/res/menu/profile_menu.xml

@@ -15,4 +15,9 @@
         android:title="@string/profile_option_share"
         app:showAsAction="never" />
 
+    <item
+        android:id="@+id/option_logout_profile"
+        android:title="@string/option_logout"
+        app:showAsAction="never" />
+
 </menu>