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

Commit 65ce82ee authored by John Reck's avatar John Reck
Browse files

Adjust where TransactionCommittedListener lives

android.view.TransactionCommittedListener sounds generic
& broad, but this is really very specific to a single
callback in SurfaceControl. So move the listener there.

Test: make
Bug: 217776226
Change-Id: Ib51a525c5b5ca5fd5c08b667ade6742774047131
parent 6ae27a89
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -49216,7 +49216,7 @@ package android.view {
  public static class SurfaceControl.Transaction implements java.io.Closeable android.os.Parcelable {
    ctor public SurfaceControl.Transaction();
    method @NonNull public android.view.SurfaceControl.Transaction addTransactionCommittedListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.TransactionCommittedListener);
    method @NonNull public android.view.SurfaceControl.Transaction addTransactionCommittedListener(@NonNull java.util.concurrent.Executor, @NonNull android.view.SurfaceControl.TransactionCommittedListener);
    method public void apply();
    method public void close();
    method public int describeContents();
@@ -49240,6 +49240,10 @@ package android.view {
    field @NonNull public static final android.os.Parcelable.Creator<android.view.SurfaceControl.Transaction> CREATOR;
  }
  public static interface SurfaceControl.TransactionCommittedListener {
    method public void onTransactionCommitted();
  }
  public class SurfaceControlViewHost {
    ctor public SurfaceControlViewHost(@NonNull android.content.Context, @NonNull android.view.Display, @Nullable android.os.IBinder);
    method @Nullable public android.view.SurfaceControlViewHost.SurfacePackage getSurfacePackage();
@@ -49352,10 +49356,6 @@ package android.view {
    field public static final int TO_RIGHT = 8; // 0x8
  }
  public interface TransactionCommittedListener {
    method public void onTransactionCommitted();
  }
  public final class VelocityTracker {
    method public void addMovement(android.view.MotionEvent);
    method public void clear();
+11 −0
Original line number Diff line number Diff line
@@ -2693,6 +2693,17 @@ public final class SurfaceControl implements Parcelable {
        return nativeGetGPUContextPriority();
    }

    /**
     * Interface to handle request to
     * {@link SurfaceControl.Transaction#addTransactionCommittedListener(Executor, TransactionCommittedListener)}
     */
    public interface TransactionCommittedListener {
        /**
         * Invoked when the transaction has been committed in SurfaceFlinger.
         */
        void onTransactionCommitted();
    }

    /**
     * An atomic set of changes to a set of SurfaceControl.
     */
+0 −30
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.view;

import java.util.concurrent.Executor;

/**
 * Interface to handle request to
 * {@link SurfaceControl.Transaction#addTransactionCommittedListener(Executor, TransactionCommittedListener)}
 */
public interface TransactionCommittedListener {
    /**
     * Invoked when the transaction has been committed in SurfaceFlinger.
     */
    void onTransactionCommitted();
}
+2 −2
Original line number Diff line number Diff line
@@ -2137,7 +2137,7 @@ static const JNINativeMethod sSurfaceControlMethods[] = {
            (void*)nativeGetLayerId },
    {"nativeSetDropInputMode", "(JJI)V",
             (void*)nativeSetDropInputMode },
    {"nativeAddTransactionCommittedListener", "(JLandroid/view/TransactionCommittedListener;)V",
    {"nativeAddTransactionCommittedListener", "(JLandroid/view/SurfaceControl$TransactionCommittedListener;)V",
            (void*) nativeAddTransactionCommittedListener },
    {"nativeSanitize", "(J)V",
            (void*) nativeSanitize }
@@ -2360,7 +2360,7 @@ int register_android_view_SurfaceControl(JNIEnv* env)
                             "([Landroid/view/SurfaceControl$JankData;)V");

    jclass transactionCommittedListenerClazz =
            FindClassOrDie(env, "android/view/TransactionCommittedListener");
            FindClassOrDie(env, "android/view/SurfaceControl$TransactionCommittedListener");
    gTransactionCommittedListenerClassInfo.clazz =
            MakeGlobalRefOrDie(env, transactionCommittedListenerClazz);
    gTransactionCommittedListenerClassInfo.onTransactionCommitted =
+2 −3
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ import android.platform.test.annotations.Presubmit;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.view.SurfaceControl;
import android.view.TransactionCommittedListener;
import android.window.IDisplayAreaOrganizer;
import android.window.ITaskOrganizer;
import android.window.ITransitionPlayer;
@@ -533,8 +532,8 @@ public class TransitionTests extends WindowTestsBase {
        assertTrue(asyncRotationController.isTargetToken(statusBar.mToken));

        final SurfaceControl.Transaction startTransaction = mock(SurfaceControl.Transaction.class);
        final ArgumentCaptor<TransactionCommittedListener> listenerCaptor =
                ArgumentCaptor.forClass(TransactionCommittedListener.class);
        final ArgumentCaptor<SurfaceControl.TransactionCommittedListener> listenerCaptor =
                ArgumentCaptor.forClass(SurfaceControl.TransactionCommittedListener.class);
        player.onTransactionReady(startTransaction);

        verify(startTransaction).addTransactionCommittedListener(any(), listenerCaptor.capture());