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

Commit 58e29c06 authored by Adam Powell's avatar Adam Powell Committed by Android Git Automerger
Browse files

am 7c86958d: Merge "Add MediaRouter API." into jb-dev

* commit '7c86958d':
  Add MediaRouter API.
parents dafffc35 7c86958d
Loading
Loading
Loading
Loading
+66 −0
Original line number Diff line number Diff line
@@ -97,6 +97,7 @@ package android {
    field public static final java.lang.String RECORD_AUDIO = "android.permission.RECORD_AUDIO";
    field public static final java.lang.String REORDER_TASKS = "android.permission.REORDER_TASKS";
    field public static final deprecated java.lang.String RESTART_PACKAGES = "android.permission.RESTART_PACKAGES";
    field public static final java.lang.String ROUTE_MEDIA_OUTPUT = "android.permission.ROUTE_MEDIA_OUTPUT";
    field public static final java.lang.String SEND_SMS = "android.permission.SEND_SMS";
    field public static final java.lang.String SET_ACTIVITY_WATCHER = "android.permission.SET_ACTIVITY_WATCHER";
    field public static final java.lang.String SET_ALARM = "com.android.alarm.permission.SET_ALARM";
@@ -11486,6 +11487,71 @@ package android.media {
    field public static final int DEFAULT = 0; // 0x0
  }
  public class MediaRouter {
    method public void addCallback(int, android.media.MediaRouter.Callback);
    method public void addUserRoute(android.media.MediaRouter.UserRouteInfo);
    method public android.media.MediaRouter.RouteCategory createRouteCategory(java.lang.CharSequence, boolean);
    method public android.media.MediaRouter.UserRouteInfo createUserRoute(android.media.MediaRouter.RouteCategory);
    method public static android.media.MediaRouter forApplication(android.content.Context);
    method public android.media.MediaRouter.RouteCategory getCategoryAt(int);
    method public int getCategoryCount();
    method public android.media.MediaRouter.RouteInfo getRouteAt(int);
    method public int getRouteCount();
    method public void removeCallback(android.media.MediaRouter.Callback);
    method public void removeUserRoute(android.media.MediaRouter.UserRouteInfo);
    method public void selectRoute(int, android.media.MediaRouter.RouteInfo);
    method public void setRouteVolume(int, float);
    field public static final int ROUTE_TYPE_LIVE_AUDIO = 1; // 0x1
    field public static final int ROUTE_TYPE_USER = 8388608; // 0x800000
  }
  public static abstract interface MediaRouter.Callback {
    method public abstract void onRouteAdded(int, android.media.MediaRouter.RouteInfo);
    method public abstract void onRouteChanged(android.media.MediaRouter.RouteInfo);
    method public abstract void onRouteRemoved(int, android.media.MediaRouter.RouteInfo);
    method public abstract void onRouteSelected(int, android.media.MediaRouter.RouteInfo);
    method public abstract void onRouteUnselected(int, android.media.MediaRouter.RouteInfo);
    method public abstract void onVolumeChanged(int, float);
  }
  public class MediaRouter.RouteCategory {
    method public java.lang.CharSequence getName();
    method public android.media.MediaRouter.RouteInfo getRouteAt(int);
    method public int getRouteCount();
    method public int getSupportedTypes();
    method public boolean isGroupable();
  }
  public class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo {
    method public void addRoute(android.media.MediaRouter.RouteInfo);
    method public void addRoute(android.media.MediaRouter.RouteInfo, int);
    method public void removeRoute(android.media.MediaRouter.RouteInfo);
    method public void removeRoute(int);
  }
  public class MediaRouter.RouteInfo {
    method public android.media.MediaRouter.RouteCategory getCategory();
    method public android.media.MediaRouter.RouteGroup getGroup();
    method public java.lang.CharSequence getName();
    method public java.lang.CharSequence getStatus();
    method public int getSupportedTypes();
  }
  public static class MediaRouter.SimpleCallback implements android.media.MediaRouter.Callback {
    ctor public MediaRouter.SimpleCallback();
    method public void onRouteAdded(int, android.media.MediaRouter.RouteInfo);
    method public void onRouteChanged(android.media.MediaRouter.RouteInfo);
    method public void onRouteRemoved(int, android.media.MediaRouter.RouteInfo);
    method public void onRouteSelected(int, android.media.MediaRouter.RouteInfo);
    method public void onRouteUnselected(int, android.media.MediaRouter.RouteInfo);
    method public void onVolumeChanged(int, float);
  }
  public class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo {
    method public void setName(java.lang.CharSequence);
    method public void setStatus(java.lang.CharSequence);
  }
  public class MediaScannerConnection implements android.content.ServiceConnection {
    ctor public MediaScannerConnection(android.content.Context, android.media.MediaScannerConnection.MediaScannerConnectionClient);
    method public void connect();
+14 −17
Original line number Diff line number Diff line
@@ -19,28 +19,25 @@ package android.view;
import android.content.Context;

/**
 * This class is a mediator for accomplishing a given task, for example sharing a file.
 * It is responsible for creating a view that performs an action that accomplishes the task.
 * This class also implements other functions such a performing a default action.
 * <p>
 * An ActionProvider can be optionally specified for a {@link MenuItem} and in such a
 * case it will be responsible for creating the action view that appears in the
 * {@link android.app.ActionBar} as a substitute for the menu item when the item is
 * displayed as an action item. Also the provider is responsible for performing a
 * default action if a menu item placed on the overflow menu of the ActionBar is
 * selected and none of the menu item callbacks has handled the selection. For this
 * case the provider can also optionally provide a sub-menu for accomplishing the
 * task at hand.
 * </p>
 * <p>
 * There are two ways for using an action provider for creating and handling of action views:
 * An ActionProvider defines rich menu interaction in a single component.
 * ActionProvider can generate action views for use in the action bar,
 * dynamically populate submenus of a MenuItem, and handle default menu
 * item invocations.
 *
 * <p>An ActionProvider can be optionally specified for a {@link MenuItem} and will be
 * responsible for creating the action view that appears in the {@link android.app.ActionBar}
 * in place of a simple button in the bar. When the menu item is presented in a way that
 * does not allow custom action views, (e.g. in an overflow menu,) the ActionProvider
 * can perform a default action.</p>
 *
 * <p>There are two ways to use an action provider:
 * <ul>
 * <li>
 * Setting the action provider on a {@link MenuItem} directly by calling
 * Set the action provider on a {@link MenuItem} directly by calling
 * {@link MenuItem#setActionProvider(ActionProvider)}.
 * </li>
 * <li>
 * Declaring the action provider in the menu XML resource. For example:
 * Declare the action provider in an XML menu resource. For example:
 * <pre>
 * <code>
 *   &lt;item android:id="@+id/my_menu_item"
+6 −0
Original line number Diff line number Diff line
@@ -636,6 +636,12 @@
        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
        android:protectionLevel="signature" />

    <!-- Allows an application to route media output to other devices. -->
    <permission android:name="android.permission.ROUTE_MEDIA_OUTPUT"
                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
                android:label="@string/permlab_route_media_output"
                android:description="@string/permdesc_route_media_output" />

    <!-- =========================================== -->
    <!-- Permissions associated with telephony state -->
    <!-- =========================================== -->
+5 −0
Original line number Diff line number Diff line
@@ -881,6 +881,11 @@
  <java-symbol type="string" name="granularity_label_word" />
  <java-symbol type="string" name="granularity_label_link" />
  <java-symbol type="string" name="granularity_label_line" />
  <java-symbol type="string" name="default_audio_route_name" />
  <java-symbol type="string" name="default_audio_route_name_headphones" />
  <java-symbol type="string" name="default_audio_route_name_dock_speakers" />
  <java-symbol type="string" name="default_audio_route_name_hdmi" />
  <java-symbol type="string" name="default_audio_route_category_name" />

  <java-symbol type="plurals" name="abbrev_in_num_days" />
  <java-symbol type="plurals" name="abbrev_in_num_hours" />
+26 −0
Original line number Diff line number Diff line
@@ -3149,6 +3149,11 @@
    <!-- Description of an application permission,  used to invoke default container service to copy content. -->
    <string name="permdesc_copyProtectedData">Allows the app to invoke default container service to copy content. Not for use by normal apps.</string>

    <!-- Title of an application permission that lets an application route media output. -->
    <string name="permlab_route_media_output">Route media output</string>
    <!-- Description of an application permission that lets an application route media output. -->
    <string name="permdesc_route_media_output">Allows an application to route media output to other external devices.</string>

    <!-- Shown in the tutorial for tap twice for zoom control. -->
    <string name="tutorial_double_tap_to_zoom_message_short">Touch twice for zoom control</string>

@@ -3563,4 +3568,25 @@
         from the activity resolver to use just this once. [CHAR LIMIT=25] -->
    <string name="activity_resolver_use_once">Just once</string>

    <!-- Name of the default audio route when nothing is connected to
         a headphone or other wired audio output jack. [CHAR LIMIT=25] -->
    <string name="default_audio_route_name">Phone speaker</string>

    <!-- Name of the default audio route for tablets when nothing
         is connected to a headphone or other wired audio output jack. [CHAR LIMIT=25] -->
    <string name="default_audio_route_name" product="tablet">Tablet speakers</string>

    <!-- Name of the default audio route when wired headphones are
         connected. [CHAR LIMIT=25] -->
    <string name="default_audio_route_name_headphones">Headphones</string>

    <!-- Name of the default audio route when an audio dock is connected. [CHAR LIMIT=25] -->
    <string name="default_audio_route_name_dock_speakers">Dock speakers</string>

    <!-- Name of the default audio route when HDMI is connected. [CHAR LIMIT=25] -->
    <string name="default_audio_route_name_hdmi">HDMI audio</string>

    <!-- Name of the default audio route category. [CHAR LIMIT=25] -->
    <string name="default_audio_route_category_name">System</string>

</resources>
Loading