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

Commit ee895a6b authored by Daniel Akinola's avatar Daniel Akinola Committed by Android (Google) Code Review
Browse files

Merge "Update ScreenRecorder to handle StopReason" into main

parents bdbd1f52 8f07c2af
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -323,6 +323,19 @@ public final class MediaProjection {
        }
    }

    /**
     * Stops projection.
     * @hide
     */
    public void stop(@StopReason int stopReason) {
        try {
            Log.d(TAG, "Content Recording: stopping projection");
            mImpl.stop(stopReason);
        } catch (RemoteException e) {
            Log.e(TAG, "Unable to stop projection", e);
        }
    }

    /**
     * Get the underlying IMediaProjection.
     * @hide
+3 −2
Original line number Diff line number Diff line
@@ -16,8 +16,9 @@

package com.android.systemui.mediarouter.data.repository

import androidx.test.filters.SmallTest
import android.media.projection.StopReason
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.coroutines.collectLastValue
import com.android.systemui.kosmos.Kosmos
@@ -101,7 +102,7 @@ class MediaRouterRepositoryTest : SysuiTestCase() {
                origin = CastDevice.CastOrigin.MediaRouter,
            )

        underTest.stopCasting(device)
        underTest.stopCasting(device, StopReason.STOP_UNKNOWN)

        assertThat(castController.lastStoppedDevice).isEqualTo(device)
    }
+4 −1
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static junit.framework.Assert.assertTrue;
import static junit.framework.TestCase.assertEquals;

import static org.junit.Assert.assertFalse;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.same;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.mock;
@@ -30,6 +31,7 @@ import static org.mockito.Mockito.when;
import android.media.MediaRouter;
import android.media.MediaRouter.RouteInfo;
import android.media.projection.MediaProjectionInfo;
import android.media.projection.StopReason;
import android.os.Handler;
import android.service.quicksettings.Tile;
import android.testing.TestableLooper;
@@ -336,7 +338,8 @@ public class CastTileTest extends SysuiTestCase {
        mCastTile.handleClick(null /* view */);
        mTestableLooper.processAllMessages();

        verify(mController, times(1)).stopCasting(same(device));
        verify(mController, times(1))
                .stopCasting(same(device), eq(StopReason.STOP_QS_TILE));
    }

    @Test
+3 −1
Original line number Diff line number Diff line
@@ -23,11 +23,13 @@ import static junit.framework.Assert.assertTrue;
import static org.junit.Assert.assertFalse;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.app.Dialog;
import android.media.projection.StopReason;
import android.os.Handler;
import android.service.quicksettings.Tile;
import android.testing.TestableLooper;
@@ -214,7 +216,7 @@ public class ScreenRecordTileTest extends SysuiTestCase {

        mTile.handleClick(null /* view */);

        verify(mController, times(1)).stopRecording();
        verify(mController, times(1)).stopRecording(eq(StopReason.STOP_QS_TILE));
    }

    @Test
+2 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
package com.android.systemui.qs.tiles.impl.screenrecord.domain.interactor

import android.app.Dialog
import android.media.projection.StopReason
import android.os.UserHandle
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
@@ -92,7 +93,7 @@ class ScreenRecordTileUserActionInteractorTest : SysuiTestCase() {

        underTest.handleInput(QSTileInputTestKtx.click(recordingModel))

        verify(recordingController).stopRecording()
        verify(recordingController).stopRecording(eq(StopReason.STOP_QS_TILE))
    }

    @Test
Loading