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

Commit 2e94d3e9 authored by Conrad Chen's avatar Conrad Chen Committed by Android (Google) Code Review
Browse files

Merge "TIF: Add browsable field to programs"

parents 9138948d e87a7d9e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -24096,6 +24096,7 @@ package android.media.tv {
    field public static final java.lang.String COLUMN_AUTHOR = "author";
    field public static final java.lang.String COLUMN_AVAILABILITY = "availability";
    field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre";
    field public static final java.lang.String COLUMN_BROWSABLE = "browsable";
    field public static final java.lang.String COLUMN_DURATION_MILLIS = "duration_millis";
    field public static final java.lang.String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
    field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number";
@@ -24238,11 +24239,13 @@ package android.media.tv {
    field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
    field public static final java.lang.String ACTION_MAKE_CHANNEL_BROWSABLE = "android.media.tv.action.MAKE_CHANNEL_BROWSABLE";
    field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
    field public static final java.lang.String ACTION_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.PROGRAM_BROWSABLE_DISABLED";
    field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
    field public static final java.lang.String ACTION_SETUP_INPUTS = "android.media.tv.action.SETUP_INPUTS";
    field public static final java.lang.String ACTION_VIEW_RECORDING_SCHEDULES = "android.media.tv.action.VIEW_RECORDING_SCHEDULES";
    field public static final java.lang.String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID";
    field public static final java.lang.String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
    field public static final java.lang.String EXTRA_PROGRAM_ID = "android.media.tv.extra.PROGRAM_ID";
    field public static final int INPUT_STATE_CONNECTED = 0; // 0x0
    field public static final int INPUT_STATE_CONNECTED_STANDBY = 1; // 0x1
    field public static final int INPUT_STATE_DISCONNECTED = 2; // 0x2
+3 −0
Original line number Diff line number Diff line
@@ -25885,6 +25885,7 @@ package android.media.tv {
    field public static final java.lang.String COLUMN_AUTHOR = "author";
    field public static final java.lang.String COLUMN_AVAILABILITY = "availability";
    field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre";
    field public static final java.lang.String COLUMN_BROWSABLE = "browsable";
    field public static final java.lang.String COLUMN_DURATION_MILLIS = "duration_millis";
    field public static final java.lang.String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
    field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number";
@@ -26108,11 +26109,13 @@ package android.media.tv {
    field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
    field public static final java.lang.String ACTION_MAKE_CHANNEL_BROWSABLE = "android.media.tv.action.MAKE_CHANNEL_BROWSABLE";
    field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
    field public static final java.lang.String ACTION_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.PROGRAM_BROWSABLE_DISABLED";
    field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
    field public static final java.lang.String ACTION_SETUP_INPUTS = "android.media.tv.action.SETUP_INPUTS";
    field public static final java.lang.String ACTION_VIEW_RECORDING_SCHEDULES = "android.media.tv.action.VIEW_RECORDING_SCHEDULES";
    field public static final java.lang.String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID";
    field public static final java.lang.String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
    field public static final java.lang.String EXTRA_PROGRAM_ID = "android.media.tv.extra.PROGRAM_ID";
    field public static final int INPUT_STATE_CONNECTED = 0; // 0x0
    field public static final int INPUT_STATE_CONNECTED_STANDBY = 1; // 0x1
    field public static final int INPUT_STATE_DISCONNECTED = 2; // 0x2
+3 −0
Original line number Diff line number Diff line
@@ -24189,6 +24189,7 @@ package android.media.tv {
    field public static final java.lang.String COLUMN_AUTHOR = "author";
    field public static final java.lang.String COLUMN_AVAILABILITY = "availability";
    field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre";
    field public static final java.lang.String COLUMN_BROWSABLE = "browsable";
    field public static final java.lang.String COLUMN_DURATION_MILLIS = "duration_millis";
    field public static final java.lang.String COLUMN_END_TIME_UTC_MILLIS = "end_time_utc_millis";
    field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number";
@@ -24331,11 +24332,13 @@ package android.media.tv {
    field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
    field public static final java.lang.String ACTION_MAKE_CHANNEL_BROWSABLE = "android.media.tv.action.MAKE_CHANNEL_BROWSABLE";
    field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
    field public static final java.lang.String ACTION_PROGRAM_BROWSABLE_DISABLED = "android.media.tv.action.PROGRAM_BROWSABLE_DISABLED";
    field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
    field public static final java.lang.String ACTION_SETUP_INPUTS = "android.media.tv.action.SETUP_INPUTS";
    field public static final java.lang.String ACTION_VIEW_RECORDING_SCHEDULES = "android.media.tv.action.VIEW_RECORDING_SCHEDULES";
    field public static final java.lang.String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID";
    field public static final java.lang.String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";
    field public static final java.lang.String EXTRA_PROGRAM_ID = "android.media.tv.extra.PROGRAM_ID";
    field public static final int INPUT_STATE_CONNECTED = 0; // 0x0
    field public static final int INPUT_STATE_CONNECTED_STANDBY = 1; // 0x1
    field public static final int INPUT_STATE_DISCONNECTED = 2; // 0x2
+18 −0
Original line number Diff line number Diff line
@@ -1976,6 +1976,24 @@ public final class TvContract {
         */
        public static final String COLUMN_RECORDING_PROHIBITED = "recording_prohibited";

        /**
         * The flag indicating whether this TV program is browsable or not.
         *
         * <p>This column can only be set by system apps. For other applications, it is a read-only
         * column. Trying to modify it may cause {@link SecurityException}.
         *
         * <p>A value of 1 indicates that the program is browsable and can be shown to users in
         * the UI. A value of 0 indicates that the program should be hidden from users and the
         * application who changes this value to 0 should send
         * {@link TvInputManager#ACTION_PROGRAM_BROWSABLE_DISABLED} to the owner of the program
         * to notify this change.
         *
         * <p>This value is set to 1 (browsable) by default.
         *
         * <p>Type: INTEGER (boolean)
         */
        public static final String COLUMN_BROWSABLE = "browsable";

        /**
         * The internal ID used by individual TV input services.
         *
+18 −2
Original line number Diff line number Diff line
@@ -324,24 +324,40 @@ public final class TvInputManager {
    public static final String ACTION_VIEW_RECORDING_SCHEDULES =
            "android.media.tv.action.VIEW_RECORDING_SCHEDULES";

    /**
     * Action sent by the system to tell the target TV input that one of its program's browsable
     * state is disabled, i.e., it will no longer be shown to users, which, for example, might
     * be a result of users' interaction with UI.
     *
     * <p>The intent must contain the following bundle parameter:
     * <ul>
     *     <li>{@link #EXTRA_PROGRAM_ID} the program ID as a long integer.
     * </ul>
     */
    public static final String ACTION_PROGRAM_BROWSABLE_DISABLED =
            "android.media.tv.action.PROGRAM_BROWSABLE_DISABLED";

    /**
     * Action sent by an application telling the system to set the given channel as browsable.
     *
     * <p>The intent must contain the following bundle parameters:
     * <ul>
     *     <li>{@link #EXTRA_CHANNEL_ID} then channel ID as an integer.
     *     <li>{@link #EXTRA_CHANNEL_ID} the channel ID as a long integer.
     *     <li>{@link #EXTRA_PACKAGE_NAME} the package name of the requesting application.
     * </ul>
     */
    public static final String ACTION_MAKE_CHANNEL_BROWSABLE
            = "android.media.tv.action.MAKE_CHANNEL_BROWSABLE";

    /** The key for a bundle parameter containing a channel ID as an integer */
    /** The key for a bundle parameter containing a channel ID as a long integer */
    public static final String EXTRA_CHANNEL_ID = "android.media.tv.extra.CHANNEL_ID";

    /** The key for a bundle parameter containing a package name as a string. */
    public static final String EXTRA_PACKAGE_NAME = "android.media.tv.extra.PACKAGE_NAME";

    /** The key for a bundle parameter containing a program ID as a long integer */
    public static final String EXTRA_PROGRAM_ID = "android.media.tv.extra.PROGRAM_ID";

    private final ITvInputManager mService;

    private final Object mLock = new Object();