From 8bb1245a48fd751991e4177351f38e4ce23a95ca Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Tue, 16 Jun 2015 20:54:11 -0700 Subject: [PATCH] Finish when browsed root goes away. If we're browsing a specific root, and that root went away, typically due to formatting. Bug: 21831184 Change-Id: Ie07607a81e32a7d82c88ad382658a471d47b905d --- .../src/com/android/documentsui/BaseActivity.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java b/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java index bba33be68d41..fc46716c4dd7 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java +++ b/packages/DocumentsUI/src/com/android/documentsui/BaseActivity.java @@ -25,7 +25,6 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.concurrent.Executor; @@ -97,6 +96,22 @@ abstract class BaseActivity extends Activity { } @Override + public void onResume() { + super.onResume(); + + final State state = getDisplayState(); + final RootInfo root = getCurrentRoot(); + + // If we're browsing a specific root, and that root went away, then we + // have no reason to hang around + if (state.action == State.ACTION_BROWSE && root != null) { + if (mRoots.getRootBlocking(root.authority, root.rootId) == null) { + finish(); + } + } + } + + @Override public boolean onCreateOptionsMenu(Menu menu) { boolean showMenu = super.onCreateOptionsMenu(menu); -- 2.11.0