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

Commit 52260400 authored by Beth Thibodeau's avatar Beth Thibodeau Committed by Android (Google) Code Review
Browse files

Merge "Remove delete action from notification"

parents 89ecbea1 1700fdca
Loading
Loading
Loading
Loading
+0 −4
Original line number Diff line number Diff line
@@ -278,14 +278,10 @@
    <string name="screenrecord_cancel_label">Cancel</string>
    <!-- Label for notification action to share screen recording [CHAR LIMIT=35] -->
    <string name="screenrecord_share_label">Share</string>
    <!-- Label for notification action to delete a screen recording file [CHAR LIMIT=35] -->
    <string name="screenrecord_delete_label">Delete</string>
    <!-- A toast message shown after successfully canceling a screen recording [CHAR LIMIT=NONE] -->
    <string name="screenrecord_cancel_success">Screen recording canceled</string>
    <!-- Notification text shown after saving a screen recording to prompt the user to view it [CHAR LIMIT=100] -->
    <string name="screenrecord_save_message">Screen recording saved, tap to view</string>
    <!-- A toast message shown after successfully deleting a screen recording [CHAR LIMIT=NONE] -->
    <string name="screenrecord_delete_description">Screen recording deleted</string>
    <!-- A toast message shown when there is an error deleting a screen recording [CHAR LIMIT=NONE] -->
    <string name="screenrecord_delete_error">Error deleting screen recording</string>
    <!-- A toast message shown when the screen recording cannot be started due to insufficient permissions [CHAR LIMIT=NONE] -->
+0 −37
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@ import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.res.Resources;
@@ -70,7 +69,6 @@ public class RecordingService extends Service implements MediaRecorder.OnInfoLis
    private static final String ACTION_STOP_NOTIF =
            "com.android.systemui.screenrecord.STOP_FROM_NOTIF";
    private static final String ACTION_SHARE = "com.android.systemui.screenrecord.SHARE";
    private static final String ACTION_DELETE = "com.android.systemui.screenrecord.DELETE";

    private final RecordingController mController;
    private final KeyguardDismissUtil mKeyguardDismissUtil;
@@ -184,25 +182,6 @@ public class RecordingService extends Service implements MediaRecorder.OnInfoLis
                // Close quick shade
                sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
                break;
            case ACTION_DELETE:
                mKeyguardDismissUtil.executeWhenUnlocked(() -> {
                    // Close quick shade
                    sendBroadcast(new Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
                    ContentResolver resolver = getContentResolver();
                    Uri uri = Uri.parse(intent.getStringExtra(EXTRA_PATH));
                    resolver.delete(uri, null, null);

                    Toast.makeText(
                            this,
                            R.string.screenrecord_delete_description,
                            Toast.LENGTH_LONG).show();
                    Log.d(TAG, "Deleted recording " + uri);

                    // Remove notification
                    mNotificationManager.cancelAsUser(null, NOTIFICATION_VIEW_ID, currentUser);
                    return false;
                }, false);
                break;
        }
        return Service.START_STICKY;
    }
@@ -312,16 +291,6 @@ public class RecordingService extends Service implements MediaRecorder.OnInfoLis
                        PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE))
                .build();

        Notification.Action deleteAction = new Notification.Action.Builder(
                Icon.createWithResource(this, R.drawable.ic_screenrecord),
                getResources().getString(R.string.screenrecord_delete_label),
                PendingIntent.getService(
                        this,
                        REQUEST_CODE,
                        getDeleteIntent(this, uri.toString()),
                        PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE))
                .build();

        Bundle extras = new Bundle();
        extras.putString(Notification.EXTRA_SUBSTITUTE_APP_NAME,
                getResources().getString(R.string.screenrecord_name));
@@ -335,7 +304,6 @@ public class RecordingService extends Service implements MediaRecorder.OnInfoLis
                        viewIntent,
                        PendingIntent.FLAG_IMMUTABLE))
                .addAction(shareAction)
                .addAction(deleteAction)
                .setAutoCancel(true)
                .addExtras(extras);

@@ -414,11 +382,6 @@ public class RecordingService extends Service implements MediaRecorder.OnInfoLis
                .putExtra(EXTRA_PATH, path);
    }

    private static Intent getDeleteIntent(Context context, String path) {
        return new Intent(context, RecordingService.class).setAction(ACTION_DELETE)
                .putExtra(EXTRA_PATH, path);
    }

    @Override
    public void onInfo(MediaRecorder mr, int what, int extra) {
        Log.d(TAG, "Media recorder info: " + what);