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

Commit ae843cda authored by Iván Budnik's avatar Iván Budnik
Browse files

Make RouteListingPreference getter and callbacks public

This change exposes getRouteListingPreference(),
onRouteListingPreferenceChanged(), and other callback-related
methods.

This is a non-functional change.

Test: Presubmit.
Bug: 192657812
Bug: 281067101
Change-Id: Iea44d9eef42bfb0add775b7514430739bfe39c62
API-Coverage-Bug: 294073926
parent 19853673
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ java_defaults {
        ":android.companion.virtual.flags-aconfig-java{.generated_srcjars}",
        ":android.view.inputmethod.flags-aconfig-java{.generated_srcjars}",
        ":android.widget.flags-aconfig-java{.generated_srcjars}",
        ":com.android.media.flags.bettertogether-aconfig-java{.generated_srcjars}",
    ],
    // Add aconfig-annotations-lib as a dependency for the optimization
    libs: ["aconfig-annotations-lib"],
@@ -214,3 +215,15 @@ java_aconfig_library {
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}

// Media BetterTogether
aconfig_declarations {
    name: "com.android.media.flags.bettertogether-aconfig",
    package: "com.android.media.flags",
    srcs: ["media/java/android/media/flags/media_better_together.aconfig"],
}

java_aconfig_library {
    name: "com.android.media.flags.bettertogether-aconfig-java",
    aconfig_declarations: "com.android.media.flags.bettertogether-aconfig",
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}
+8 −0
Original line number Diff line number Diff line
@@ -23946,10 +23946,12 @@ package android.media {
    method @Nullable public android.media.MediaRouter2.RoutingController getController(@NonNull String);
    method @NonNull public java.util.List<android.media.MediaRouter2.RoutingController> getControllers();
    method @NonNull public static android.media.MediaRouter2 getInstance(@NonNull android.content.Context);
    method @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) @Nullable public android.media.RouteListingPreference getRouteListingPreference();
    method @NonNull public java.util.List<android.media.MediaRoute2Info> getRoutes();
    method @NonNull public android.media.MediaRouter2.RoutingController getSystemController();
    method public void registerControllerCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.ControllerCallback);
    method public void registerRouteCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.RouteCallback, @NonNull android.media.RouteDiscoveryPreference);
    method @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) public void registerRouteListingPreferenceCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.RouteListingPreferenceCallback);
    method public void registerTransferCallback(@NonNull java.util.concurrent.Executor, @NonNull android.media.MediaRouter2.TransferCallback);
    method public void setOnGetControllerHintsListener(@Nullable android.media.MediaRouter2.OnGetControllerHintsListener);
    method public void setRouteListingPreference(@Nullable android.media.RouteListingPreference);
@@ -23958,6 +23960,7 @@ package android.media {
    method public void transferTo(@NonNull android.media.MediaRoute2Info);
    method public void unregisterControllerCallback(@NonNull android.media.MediaRouter2.ControllerCallback);
    method public void unregisterRouteCallback(@NonNull android.media.MediaRouter2.RouteCallback);
    method @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) public void unregisterRouteListingPreferenceCallback(@NonNull android.media.MediaRouter2.RouteListingPreferenceCallback);
    method public void unregisterTransferCallback(@NonNull android.media.MediaRouter2.TransferCallback);
  }
@@ -23978,6 +23981,11 @@ package android.media {
    method public void onRoutesUpdated(@NonNull java.util.List<android.media.MediaRoute2Info>);
  }
  @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) public abstract static class MediaRouter2.RouteListingPreferenceCallback {
    ctor @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) public MediaRouter2.RouteListingPreferenceCallback();
    method @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2) public void onRouteListingPreferenceChanged(@Nullable android.media.RouteListingPreference);
  }
  public class MediaRouter2.RoutingController {
    method public void deselectRoute(@NonNull android.media.MediaRoute2Info);
    method @Nullable public android.os.Bundle getControlHints();
+23 −9
Original line number Diff line number Diff line
@@ -17,9 +17,11 @@
package android.media;

import static com.android.internal.util.function.pooled.PooledLambda.obtainMessage;
import static com.android.media.flags.Flags.FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2;

import android.Manifest;
import android.annotation.CallbackExecutor;
import android.annotation.FlaggedApi;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
@@ -370,14 +372,14 @@ public final class MediaRouter2 {
    }

    /**
     * Registers callback to be invoked when the {@link RouteListingPreference} of the target
     * router changes.
     * Registers the given callback to be invoked when the {@link RouteListingPreference} of the
     * target router changes.
     *
     * <p>Calls using a previously registered callback will overwrite the callback record.
     * <p>Calls using a previously registered callback will overwrite the previous executor.
     *
     * @see #setRouteListingPreference(RouteListingPreference)
     * @hide
     */
    @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
    public void registerRouteListingPreferenceCallback(
            @NonNull @CallbackExecutor Executor executor,
            @NonNull RouteListingPreferenceCallback routeListingPreferenceCallback) {
@@ -393,9 +395,8 @@ public final class MediaRouter2 {

    /**
     * Unregisters the given callback to not receive {@link RouteListingPreference} change events.
     *
     * @hide
     */
    @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
    public void unregisterRouteListingPreferenceCallback(
            @NonNull RouteListingPreferenceCallback callback) {
        Objects.requireNonNull(callback, "callback must not be null");
@@ -462,9 +463,12 @@ public final class MediaRouter2 {
    /**
     * Returns the current {@link RouteListingPreference} of the target router.
     *
     * <p>If this instance was created using {@link #getInstance(Context, String)}, then it returns
     * the last {@link RouteListingPreference} set by the process this router was created for.
     *
     * @see #setRouteListingPreference(RouteListingPreference)
     * @hide
     */
    @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
    @Nullable
    public RouteListingPreference getRouteListingPreference() {
        synchronized (mLock) {
@@ -1201,9 +1205,19 @@ public final class MediaRouter2 {
        public void onPreferredFeaturesChanged(@NonNull List<String> preferredFeatures) {}
    }

    /** @hide */
    /** Callback for receiving events related to {@link RouteListingPreference}. */
    @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
    public abstract static class RouteListingPreferenceCallback {
        /** @hide */

        @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
        public RouteListingPreferenceCallback() {}

        /**
         * Called when the {@link RouteListingPreference} changes.
         *
         * @see #getRouteListingPreference
         */
        @FlaggedApi(FLAG_ENABLE_RLP_CALLBACKS_IN_MEDIA_ROUTER2)
        public void onRouteListingPreferenceChanged(@Nullable RouteListingPreference preference) {}
    }

+8 −0
Original line number Diff line number Diff line
package: "com.android.media.flags"

flag {
     namespace: "media_solutions"
     name: "enable_rlp_callbacks_in_media_router2"
     description: "Make RouteListingPreference getter and callbacks public in MediaRouter2."
     bug: "281067101"
}