Search in sources :

Example 6 with State

use of com.android.documentsui.State in project android_frameworks_base by DirtyUnicorns.

the class DirectoryFragment method updateDisplayState.

private void updateDisplayState() {
    State state = getDisplayState();
    updateLayout(state.derivedMode);
    mRecView.setAdapter(mAdapter);
}
Also used : State(com.android.documentsui.State)

Example 7 with State

use of com.android.documentsui.State in project android_frameworks_base by DirtyUnicorns.

the class DirectoryFragment method onLoadFinished.

@Override
public void onLoadFinished(Loader<DirectoryResult> loader, DirectoryResult result) {
    if (!isAdded())
        return;
    if (mSearchMode) {
        Metrics.logUserAction(getContext(), Metrics.USER_ACTION_SEARCH);
    }
    State state = getDisplayState();
    mAdapter.notifyDataSetChanged();
    mModel.update(result);
    state.derivedSortOrder = result.sortOrder;
    updateLayout(state.derivedMode);
    if (mSelection != null) {
        mSelectionManager.setItemsSelected(mSelection.toList(), true);
        mSelection.clear();
    }
    // Restore any previous instance state
    final SparseArray<Parcelable> container = state.dirState.remove(mStateKey);
    if (container != null && !getArguments().getBoolean(Shared.EXTRA_IGNORE_STATE, false)) {
        getView().restoreHierarchyState(container);
    } else if (mLastSortOrder != state.derivedSortOrder) {
        // The derived sort order takes the user sort order into account, but applies
        // directory-specific defaults when the user doesn't explicitly set the sort
        // order. Scroll to the top if the sort order actually changed.
        mRecView.smoothScrollToPosition(0);
    }
    mLastSortOrder = state.derivedSortOrder;
    mTuner.onModelLoaded(mModel, mType, mSearchMode);
}
Also used : State(com.android.documentsui.State) Parcelable(android.os.Parcelable)

Example 8 with State

use of com.android.documentsui.State in project android_frameworks_base by crdroidandroid.

the class DirectoryFragment method onStop.

@Override
public void onStop() {
    super.onStop();
    // Remember last scroll location
    final SparseArray<Parcelable> container = new SparseArray<Parcelable>();
    getView().saveHierarchyState(container);
    final State state = getDisplayState();
    state.dirState.put(mStateKey, container);
}
Also used : SparseArray(android.util.SparseArray) State(com.android.documentsui.State) Parcelable(android.os.Parcelable)

Example 9 with State

use of com.android.documentsui.State in project android_frameworks_base by AOSPA.

the class ModelBackedDocumentsAdapter method onCreateViewHolder.

@Override
public DocumentHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    DocumentHolder holder = null;
    final State state = mEnv.getDisplayState();
    switch(state.derivedMode) {
        case MODE_GRID:
            switch(viewType) {
                case ITEM_TYPE_DIRECTORY:
                    holder = new GridDirectoryHolder(mEnv.getContext(), parent);
                    break;
                case ITEM_TYPE_DOCUMENT:
                    holder = new GridDocumentHolder(mEnv.getContext(), parent, mIconHelper);
                    break;
                default:
                    throw new IllegalStateException("Unsupported layout type.");
            }
            break;
        case MODE_LIST:
            holder = new ListDocumentHolder(mEnv.getContext(), parent, mIconHelper);
            break;
        default:
            throw new IllegalStateException("Unsupported layout mode.");
    }
    mEnv.initDocumentHolder(holder);
    return holder;
}
Also used : State(com.android.documentsui.State)

Example 10 with State

use of com.android.documentsui.State in project android_frameworks_base by AOSPA.

the class DirectoryFragment method onStop.

@Override
public void onStop() {
    super.onStop();
    // Remember last scroll location
    final SparseArray<Parcelable> container = new SparseArray<Parcelable>();
    getView().saveHierarchyState(container);
    final State state = getDisplayState();
    state.dirState.put(mStateKey, container);
}
Also used : SparseArray(android.util.SparseArray) State(com.android.documentsui.State) Parcelable(android.os.Parcelable)

Aggregations

State (com.android.documentsui.State)35 Context (android.content.Context)15 Parcelable (android.os.Parcelable)10 ActivityManager (android.app.ActivityManager)5 Cursor (android.database.Cursor)5 Point (android.graphics.Point)5 Uri (android.net.Uri)5 Bundle (android.os.Bundle)5 AccessibilityNodeInfoCompat (android.support.v4.view.accessibility.AccessibilityNodeInfoCompat)5 GridLayoutManager (android.support.v7.widget.GridLayoutManager)5 SpanSizeLookup (android.support.v7.widget.GridLayoutManager.SpanSizeLookup)5 RecyclerView (android.support.v7.widget.RecyclerView)5 Recycler (android.support.v7.widget.RecyclerView.Recycler)5 ViewHolder (android.support.v7.widget.RecyclerView.ViewHolder)5 SparseArray (android.util.SparseArray)5 LayoutInflater (android.view.LayoutInflater)5 View (android.view.View)5 ImageView (android.widget.ImageView)5 TextView (android.widget.TextView)5 DirectoryLoader (com.android.documentsui.DirectoryLoader)5