Allow exiting the Bookmarks activity from a subfolder. https://redmine.stoutner...
authorSoren Stoutner <soren@stoutner.com>
Wed, 31 Oct 2018 18:08:45 +0000 (11:08 -0700)
committerSoren Stoutner <soren@stoutner.com>
Wed, 31 Oct 2018 18:08:45 +0000 (11:08 -0700)
app/src/main/java/com/stoutner/privacybrowser/activities/BookmarksActivity.java

index d48fe2b..e55b671 100644 (file)
@@ -561,10 +561,10 @@ public class BookmarksActivity extends AppCompatActivity implements CreateBookma
 
                                         // Close the activity if back has been pressed.
                                         if (closeActivityAfterDismissingSnackbar) {
-                                            // Update the bookmarks folder for the bookmarks drawer in `MainWebViewActivity`.
-                                            MainWebViewActivity.currentBookmarksFolder = "";
+                                            // Update the bookmarks folder for the bookmarks drawer in the main WebView activity.
+                                            MainWebViewActivity.currentBookmarksFolder = currentFolder;
 
-                                            // Close the bookmarks drawer and reload the bookmarks `ListView` when returning to `MainWebViewActivity`.
+                                            // Close the bookmarks drawer and reload the bookmarks ListView when returning to the main WebView activity.
                                             MainWebViewActivity.restartFromBookmarksActivity = true;
 
                                             // Return to `MainWebViewActivity`.
@@ -684,30 +684,22 @@ public class BookmarksActivity extends AppCompatActivity implements CreateBookma
 
     @Override
     public void onBackPressed() {
-        if (currentFolder.isEmpty()) {  // Currently in the home folder.
-            // Go home.
-            if ((bookmarksDeletedSnackbar != null) && bookmarksDeletedSnackbar.isShown()) {  // Close the bookmarks delete snackbar before going home.
-                // Set the close flag.
-                closeActivityAfterDismissingSnackbar = true;
-
-                // Dismiss the snackbar.
-                bookmarksDeletedSnackbar.dismiss();
-            } else {  // Go home immediately.
-                // Update the bookmarks folder for the bookmarks drawer in `MainWebViewActivity`.
-                MainWebViewActivity.currentBookmarksFolder = "";
-
-                // Close the bookmarks drawer and reload the bookmarks `ListView` when returning to `MainWebViewActivity`.
-                MainWebViewActivity.restartFromBookmarksActivity = true;
-
-                // Exit `BookmarksActivity`.
-                super.onBackPressed();
-            }
-        } else {  // Currently in a subfolder.
-            // Place the former parent folder in `currentFolder`.
-            currentFolder = bookmarksDatabaseHelper.getParentFolder(currentFolder);
-
-            // Load the new folder.
-            loadFolder();
+        // Check to see if a snackbar is currently displayed.  If so, it must be closed before exiting so that a pending delete is completed before reloading the ListView in the bookmarks drawer.
+        if ((bookmarksDeletedSnackbar != null) && bookmarksDeletedSnackbar.isShown()) {  // Close the bookmarks delete snackbar before going home.
+            // Set the close flag.
+            closeActivityAfterDismissingSnackbar = true;
+
+            // Dismiss the snackbar.
+            bookmarksDeletedSnackbar.dismiss();
+        } else {  // Go home immediately.
+            // Update the bookmarks folder for the bookmarks drawer in the main WebView activity.
+            MainWebViewActivity.currentBookmarksFolder = currentFolder;
+
+            // Close the bookmarks drawer and reload the bookmarks ListView when returning to the main WebView activity.
+            MainWebViewActivity.restartFromBookmarksActivity = true;
+
+            // Exit `BookmarksActivity`.
+            super.onBackPressed();
         }
     }