Browse Source

Fix #44 override back button default

isundil 7 years ago
parent
commit
4914cb0fb3

+ 6 - 0
app/src/main/java/info/knacki/pass/ui/MainActivity.java

@@ -284,4 +284,10 @@ public class MainActivity extends AppCompatActivity implements PasswordEditListe
         i.putExtra(EncryptionInformationActivity.FILE_PATH, f.getAbsolutePath());
         startActivity(i);
     }
+
+    @Override
+    public void onBackPressed() {
+        if (!fPasswordListView.ShowParent())
+            super.onBackPressed();
+    }
 }

+ 8 - 0
app/src/main/java/info/knacki/pass/ui/passwordList/PasswordListView.java

@@ -49,6 +49,14 @@ public class PasswordListView<T extends Context & PasswordClickListener> extends
         return this;
     }
 
+    public boolean ShowParent() {
+        File current = new File(fCurrentDir);
+        if (new File(fRootPath).getAbsolutePath().equals(current.getAbsolutePath()))
+            return false;
+        DisplayDir(current.getParentFile());
+        return true;
+    }
+
     protected PasswordView CreateView(final FileIdentity file) {
         PasswordView pv = new PasswordView(getContext(), file.fIsDir ? ((file.isParent() ? PasswordView.TYPE_PARENT : 0) | PasswordView.TYPE_DIR) : PasswordView.TYPE_PASSWORD, file.fName);
         pv.setOnClickListener(view -> {