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

Commit 64ff2c53 authored by Santiago Seifert's avatar Santiago Seifert Committed by Android (Google) Code Review
Browse files

Merge "Add flag to use the system's ordering for route listing"

parents 7c3628fc 26197fb4
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -24096,9 +24096,10 @@ package android.media {
  }
  }
  public final class RouteListingPreference implements android.os.Parcelable {
  public final class RouteListingPreference implements android.os.Parcelable {
    ctor public RouteListingPreference(@NonNull java.util.List<android.media.RouteListingPreference.Item>);
    ctor public RouteListingPreference(@NonNull java.util.List<android.media.RouteListingPreference.Item>, boolean);
    method public int describeContents();
    method public int describeContents();
    method @NonNull public java.util.List<android.media.RouteListingPreference.Item> getItems();
    method @NonNull public java.util.List<android.media.RouteListingPreference.Item> getItems();
    method public boolean getUseSystemOrdering();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.media.RouteListingPreference> CREATOR;
    field @NonNull public static final android.os.Parcelable.Creator<android.media.RouteListingPreference> CREATOR;
  }
  }
+17 −3
Original line number Original line Diff line number Diff line
@@ -54,20 +54,24 @@ public final class RouteListingPreference implements Parcelable {
            };
            };


    @NonNull private final List<Item> mItems;
    @NonNull private final List<Item> mItems;
    private final boolean mUseSystemOrdering;


    /**
    /**
     * Creates an instance with the given values.
     * Creates an instance with the given values.
     *
     *
     * @param items See {@link #getItems()}.
     * @param items See {@link #getItems()}.
     * @param useSystemOrdering See {@link #getUseSystemOrdering()}
     */
     */
    public RouteListingPreference(@NonNull List<Item> items) {
    public RouteListingPreference(@NonNull List<Item> items, boolean useSystemOrdering) {
        mItems = List.copyOf(Objects.requireNonNull(items));
        mItems = List.copyOf(Objects.requireNonNull(items));
        mUseSystemOrdering = useSystemOrdering;
    }
    }


    private RouteListingPreference(Parcel in) {
    private RouteListingPreference(Parcel in) {
        List<Item> items =
        List<Item> items =
                in.readParcelableList(new ArrayList<>(), Item.class.getClassLoader(), Item.class);
                in.readParcelableList(new ArrayList<>(), Item.class.getClassLoader(), Item.class);
        mItems = List.copyOf(items);
        mItems = List.copyOf(items);
        mUseSystemOrdering = in.readBoolean();
    }
    }


    /**
    /**
@@ -79,6 +83,15 @@ public final class RouteListingPreference implements Parcelable {
        return mItems;
        return mItems;
    }
    }


    /**
     * Returns true if the application would like media route listing to use the system's ordering
     * strategy, or false if the application would like route listing to respect the ordering
     * obtained from {@link #getItems()}.
     */
    public boolean getUseSystemOrdering() {
        return mUseSystemOrdering;
    }

    // RouteListingPreference Parcelable implementation.
    // RouteListingPreference Parcelable implementation.


    @Override
    @Override
@@ -89,6 +102,7 @@ public final class RouteListingPreference implements Parcelable {
    @Override
    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        dest.writeParcelableList(mItems, flags);
        dest.writeParcelableList(mItems, flags);
        dest.writeBoolean(mUseSystemOrdering);
    }
    }


    // Equals and hashCode.
    // Equals and hashCode.
@@ -102,12 +116,12 @@ public final class RouteListingPreference implements Parcelable {
            return false;
            return false;
        }
        }
        RouteListingPreference that = (RouteListingPreference) other;
        RouteListingPreference that = (RouteListingPreference) other;
        return mItems.equals(that.mItems);
        return mItems.equals(that.mItems) && mUseSystemOrdering == that.mUseSystemOrdering;
    }
    }


    @Override
    @Override
    public int hashCode() {
    public int hashCode() {
        return Objects.hash(mItems);
        return Objects.hash(mItems, mUseSystemOrdering);
    }
    }


    /** Holds preference information for a specific route in a {@link RouteListingPreference}. */
    /** Holds preference information for a specific route in a {@link RouteListingPreference}. */