diff options
4 files changed, 8 insertions, 3 deletions
diff --git a/packages/DocumentsUI/res/layout/fragment_directory.xml b/packages/DocumentsUI/res/layout/fragment_directory.xml index 0fb74e5eca34..0d336f91ee3a 100644 --- a/packages/DocumentsUI/res/layout/fragment_directory.xml +++ b/packages/DocumentsUI/res/layout/fragment_directory.xml @@ -46,6 +46,8 @@ android:layout_height="match_parent" android:orientation="vertical" android:background="@color/window_background" + android:focusable="true" + android:focusableInTouchMode="true" android:visibility="gone"> <LinearLayout diff --git a/packages/DocumentsUI/src/com/android/documentsui/State.java b/packages/DocumentsUI/src/com/android/documentsui/State.java index 139fb454c856..7dca8a775699 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/State.java +++ b/packages/DocumentsUI/src/com/android/documentsui/State.java @@ -153,7 +153,7 @@ public class State implements android.os.Parcelable { return mStackTouched; } - public boolean initialiLocationHasChanged() { + public boolean initialLocationHasChanged() { return mInitialRootChanged || mInitialDocChanged; } diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java index f8735b2f99a1..4233b367fd68 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/DirectoryFragment.java @@ -889,12 +889,14 @@ public class DirectoryFragment extends Fragment implements DocumentsAdapter.Envi imageView.setImageResource(drawable); mEmptyView.setVisibility(View.VISIBLE); + mEmptyView.requestFocus(); mRecView.setVisibility(View.GONE); } private void showDirectory() { mEmptyView.setVisibility(View.GONE); mRecView.setVisibility(View.VISIBLE); + mRecView.requestFocus(); } private String findCommonMimeType(List<String> mimeTypes) { diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java index 3f51e538a263..a9b0fd181d8b 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java +++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FragmentTuner.java @@ -249,9 +249,10 @@ public abstract class FragmentTuner { @Override void onModelLoaded(Model model, @ResultType int resultType) { - if (DEBUG) Log.d(TAG, "Handling model loaded. Has Location shcnage: " + mState.initialiLocationHasChanged()); + if (DEBUG) Log.d(TAG, "Handling model loaded. Has Location shcnage: " + mState.initialLocationHasChanged()); // When launched into empty root, open drawer. - if (model.isEmpty() && !mState.initialiLocationHasChanged()) { + if (model.isEmpty() && !mState.initialLocationHasChanged() + && resultType != DirectoryFragment.TYPE_SEARCH) { if (DEBUG) Log.d(TAG, "Showing roots drawer cuz stuffs empty."); // This noops on layouts without drawer, so no need to guard. |