Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2219aae authored by Tomasz Mikolajewski's avatar Tomasz Mikolajewski Committed by Android (Google) Code Review
Browse files

Merge "Add progress dialog for transfer operations." into arc-apps

parents 38c53405 0d83d32b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@
    <bool name="feature_content_refresh">true</bool>
    <bool name="feature_folders_in_search_results">true</bool>
    <bool name="feature_gesture_scale">true</bool>
    <bool name="feature_job_progress_dialog">false</bool>
    <bool name="feature_launch_to_document">true</bool>
    <bool name="feature_remote_actions">true</bool>
    <bool name="feature_system_keyboard_navigation">true</bool>
+7 −0
Original line number Diff line number Diff line
@@ -163,6 +163,8 @@
    <string name="copy_notification_title">Copying files</string>
    <!-- Title of the compress notification [CHAR LIMIT=24] -->
    <string name="compress_notification_title">Compressing files</string>
    <!-- Title of the extract notification [CHAR LIMIT=24] -->
    <string name="extract_notification_title">Extracting files</string>
    <!-- Title of the move notification [CHAR LIMIT=24] -->
    <string name="move_notification_title">Moving files</string>
    <!-- Title of the move notification [CHAR LIMIT=24] -->
@@ -200,6 +202,8 @@
    <string name="copy_preparing">Preparing for copy\u2026</string>
    <!-- Text shown on the notification while DocumentsUI performs setup in preparation for compressing files [CHAR LIMIT=32] -->
    <string name="compress_preparing">Preparing for compress\u2026</string>
    <!-- Text shown on the notification while DocumentsUI performs setup in preparation for extracting files [CHAR LIMIT=32] -->
    <string name="extract_preparing">Preparing for extract\u2026</string>
    <!-- Text shown on the notification while DocumentsUI performs setup in preparation for moving files [CHAR LIMIT=32] -->
    <string name="move_preparing">Preparing for move\u2026</string>
    <!-- Text shown on the notification while DocumentsUI performs setup in preparation for deleting files [CHAR LIMIT=32] -->
@@ -346,4 +350,7 @@

    <!-- Dialog text shown when confirming if they want to overwrite a file -->
    <string name="overwrite_file_confirmation_message">Overwrite <xliff:g id="name" example="foobar.txt">%1$s</xliff:g>?</string>

    <!-- Button for continuing a file operation in background, eg. copying, moving or extracting. [CHAR LIMIT=48] -->
    <string name="continue_in_background">Continue in background</string>
</resources>
+6 −0
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ public interface Features {
    boolean isContentRefreshEnabled();
    boolean isFoldersInSearchResultsEnabled();
    boolean isGestureScaleEnabled();
    boolean isJobProgressDialogEnabled();
    boolean isLaunchToDocumentEnabled();
    boolean isRemoteActionsEnabled();
    boolean isSystemKeyboardNavigationEnabled();
@@ -102,6 +103,11 @@ public interface Features {
            return isEnabled(R.bool.feature_gesture_scale);
        }

        @Override
        public boolean isJobProgressDialogEnabled() {
            return isEnabled(R.bool.feature_job_progress_dialog);
        }

        @Override
        public boolean isLaunchToDocumentEnabled() {
            return isEnabled(R.bool.feature_launch_to_document);
+2 −2
Original line number Diff line number Diff line
@@ -282,7 +282,7 @@ final class RuntimeDocumentClipper implements DocumentClipper {
                    .withSrcs(uris)
                    .build();

            FileOperations.start(mContext, operation, callback);
            FileOperations.start(mContext, operation, callback, FileOperations.createJobId());
        } catch (IOException e) {
            Log.e(TAG, "Cannot create uris supplier.", e);
            callback.onOperationResult(FileOperations.Callback.STATUS_REJECTED, opType, 0);
+12 −4
Original line number Diff line number Diff line
@@ -41,6 +41,8 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.os.Messenger;
import android.os.Parcelable;
import android.provider.DocumentsContract;
import android.provider.DocumentsContract.Document;
@@ -459,7 +461,7 @@ public class DirectoryFragment extends Fragment
        return handleMenuItemClick(item);
    }

    private void handleCopyResult(int resultCode, Intent data) {
    private void onCopyDestinationPicked(int resultCode, Intent data) {

        FileOperation operation = mLocalState.claimPendingOperation();

@@ -471,10 +473,13 @@ public class DirectoryFragment extends Fragment
        }

        operation.setDestination(data.getParcelableExtra(Shared.EXTRA_STACK));
        final String jobId = FileOperations.createJobId();
        mInjector.dialogs.showProgressDialog(jobId, operation);
        FileOperations.start(
                mActivity,
                operation,
                mInjector.dialogs::showFileOperationStatus);
                mInjector.dialogs::showFileOperationStatus,
                jobId);
    }

    protected boolean onContextMenuClick(InputEvent e) {
@@ -767,10 +772,13 @@ public class DirectoryFragment extends Fragment

        if (destination != null) {
            operation.setDestination(destination);
            final String jobId = FileOperations.createJobId();
            mInjector.dialogs.showProgressDialog(jobId, operation);
            FileOperations.start(
                    mActivity,
                    operation,
                    mInjector.dialogs::showFileOperationStatus);
                    mInjector.dialogs::showFileOperationStatus,
                    jobId);
            return;
        }

@@ -825,7 +833,7 @@ public class DirectoryFragment extends Fragment
    public void onActivityResult(@RequestCode int requestCode, int resultCode, Intent data) {
        switch (requestCode) {
            case REQUEST_COPY_DESTINATION:
                handleCopyResult(resultCode, data);
                onCopyDestinationPicked(resultCode, data);
                break;
            default:
                throw new UnsupportedOperationException("Unknown request code: " + requestCode);
Loading