History log of /frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e49860b0f76d8336c1d41831ed370b0ff94278ef 04-Dec-2014 RoboErik <epastern@google.com> Make MediaSessionCompat/MediaControllerCompat work pre 21

This adds support for cross-process communication between MediaSessionCompat
and MediaControllerCompat. This is to support apps that split their playback
service and ui into different processes and to work with the MediaRouter
support lib.

bug:18186638
Change-Id: Ib554108fd4db5a9855d482cf3d61ce3d8d9c8850
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
92badabc6a274e3bf8ea2a0072e8a6371f252722 26-Nov-2014 RoboErik <epastern@google.com> Update MediaRouter dialog icons

This updates all the icons used in MediaRouter dialogs and the dark
icons for the button. We don't have assets yet for the light action bar
button.

bug:17879842
Change-Id: I1a66339c56d30c6bf63b6bd84a34a19eb893c25e
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
94be6100218126ce6a08bf1f56209578500b361f 28-Oct-2014 RoboErik <epastern@google.com> Update the support lib MediaRouter dialogs

This updates the UI for MediaRouter dialogs to use the new material
designs for MediaRouter. This doesn't update everything and new
icons are still needed.

Change-Id: I87c7c63c10ac60448251a8fc1fc4740a12f1603c
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
d59166433cee5a854f60321a469e225effac480f 10-Nov-2013 Jeff Brown <jeffbrown@google.com> Remove dead code.

Bug: 11257292
Change-Id: Ifb88f3fe03a8a3bc3cdf372d902f4b63c1ed454b
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
ce8cbd614a64f94e54b936d66ecd14b6c1282ddf 24-Sep-2013 Jeff Brown <jeffbrown@google.com> Fix volume handling for fixed volume routes.

The route controller dialog should handle volume keys even for
fixed volume routes. It's safe to pass them through to the
route as usual although there will be no effect.

Bug: 10260186
Change-Id: Ibca29459fe245c74db5e0d4036f1b68f125e2130
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
d6748a7926ebb2450337f9f0ff4d445c980344e5 14-Sep-2013 Jeff Brown <jeffbrown@google.com> Work around volume change jank.

Allow the media route provider a little time to finish propagating
volume changes before updating the UI.

Change-Id: I8364ebd77a93f1daf6b32a37e752ca240209d5d0
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
697ff1cbd5efee431fb10c74b31071cf95341203 17-Jul-2013 Prameet Shah <phshah@google.com> Adding the overridden control view to the layout instead of the control
frame in MediaRouterControllerDialog.

Change-Id: Id22db360b8c840a1c17980cea339ea35b1bb9bb1
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
eff7719415542ba819054863b0995f07742a7a8a 10-Jul-2013 Jeff Brown <jeffbrown@google.com> Media router API updates.

Added a MediaRouteDialogFactory to make it easier for applications
to customize the dialog fragments such as adding custom views
into the media route controller dialog.

Added an API to disable volume control in the media route
controller dialog.

Added a method that the application can override to change how
routes are filtered in the chooser dialog.

Changed the remote playback protocol to isolate the queuing
feature and @hide it. This required a few semantic changes
to the protocol so that the non-queuing subset is able to
stand on its own and be coherent. Most of these changes are
simple renames and incremental changes of existing concepts
but the documentation had to be substantially updated to keep
it clear.

The protocol changes are roughly as follows.

- QUEUE_ID renamed to SESSION_ID. Sessions are created
implicitly by ACTION_PLAY just like queues but the concept is
somewhat more generic. The session is documented conceptually
as having a queue that can only contain at most one item which
makes it easier to explain certain behaviors. However, we
now deemphasize the concept of the queue in the documentation and
focus more on the session. Since the word "queue" no longer
appears in the API, we could go either way in the future and choose
to expand on or abandon the queue concept just by changing
the documentation.

- ACTION_STOP renamed to ACTION_REMOVE and now @hide. The action
removes one specific item from the queue.

- ACTION_CLEAR_QUEUE renamed to ACTION_STOP. Now documented to
have the side-effect of both clearing and unpausing the queue
like hitting a reset switch on the session. The choice of name
creates good symmetry with ACTION_PLAY in the single item case.

- ACTION_ENQUEUE (@hide) added to represent the previous
queuing behavior so that we can continue to experiment with it.
Support for this action might be optional in the future.

- ACTION_PLAY is documented in a way that makes it equivalent
to ACTION_STOP followed by ACTION_ENQUEUE. This way we enforce
the constraint that the queue can have at most one item in it
while still leaving the door open to exposing more features later.

- ACTION_PAUSE_QUEUE renamed to ACTION_PAUSE. We still refer to
it as conceptually pausing a queue but this now fits in better with
the one at a time nature of ACTION_PLAY.

- ACTION_RESUME_QUEUE renamed to ACTION_RESUME.

- PLAYBACK_STATE_QUEUED renamed to PLAYBACK_STATE_PENDING.

- PLAYBACK_STATE_STOPPED renamed to PLAYBACK_STATE_FINISHED to make
it clear that this state means the media item finished playing
normally.

- PLAYBACK_STATE_CANCELED now only means that the media item was
canceled by the app by way of ACTION_PLAY or ACTION_STOP
(or ACTION_REMOVE) which caused the item to be removed from the
queue before it had a chance to finish normally.

- PLAYBACK_STATE_INVALIDATED added to specifically refer to the
case where another application takes control of the route and
stomps on the session and its media items. The documentation now
consistently uses the word invalidate rather than cancel when
referring to sessions or media items that have been involuntarily
aborted by an external cause.

- @hide HTTP request headers, response headers and status code.

Bug: 9743462
Change-Id: I3bdb4cd8947112ab409983a74fa4bc062465149a
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
9942d40d0d952b03b583fe66f434676793697aa2 24-May-2013 Jeff Brown <jeffbrown@google.com> MediaRouter UI tweaks.

Fix an issue where the MediaRouteButton would cause the currently
selected route to be deselected when switching activities.
The button now no longer has any side-effects.

Added code to handle the case where the dialog may be empty
by showing a progress bar and placeholder text.

Make the route chooser and controller dialogs dark to match
the system volume dialog.

Fixed the dividers in the route controller dialog.

Fixed some incorrect assumptions in the MediaRouteActionProvider
related to whether the MediaRouteButton has been attached to
the window. Sometimes we would fail to add the necessary
route callbacks. This was intended to workaround a framework
limitation but it caused other problems.

Fixed the padding of the media route button.

Cleaned up some documentation.

Bug: 9102538
Change-Id: I226e33c3017e8e4a9d877d023a8f158184861343
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
3d4c9459ed77f732dd3ba602713af6ebf9280c8c 21-May-2013 Jeff Brown <jeffbrown@google.com> Streamline media router API.

Merge progress and status and remove ACTION_GET_PROGRESS.

Add a new MediaItemStatus object to ensure that apps package the
status information correctly into the Bundle and to remove
possible ambiguity about the interpretation of each field.

Add EXTRA_ITEM_STATUS as a standard output result from
most requests include ACTION_PLAY, ACTION_PAUSE, etc.

Add a timestamp to the status object.

Add a mechanism for returning an error string from failed
media control requests.

Add a unique prefix to all mediarouter library resources
to make conflicts with application resources less likely.

Bug: 8175766
Change-Id: Ifca759424125ca62e8a72d35068dd3cc045d21ad
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
2ef36d857302c5cd738c7c8bdec53d31feebebba 16-May-2013 Jeff Brown <jeffbrown@google.com> MediaRouter UI tweaks.

Fix a couple of styling issues.
Fix an NPE when a provider is removed.

Bug: 8175766
Change-Id: I109bc93e94d4a05924ae01189911d2418660d0f3
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java
11417b1cfde8f1749905f2d735623af9214148af 27-Apr-2013 Jeff Brown <jeffbrown@google.com> Add media router picker UI.

Introduced the concept of a MediaRouteSelector which is the means
by which an application states the route capabilities of routes
that it would like to discover.

Added selectors to the addCallback method along with several
other methods to assist with discovery. Callbacks can specify
flags to perform active scans of routes or to disable filtering
of route events.

Added a workaround to scan for wifi displays on JB MR1.

Refactored the route descriptor objects to use the builder pattern
instead of simply documenting that they should be immutable
since several developers have already tripped over this.

The UI is feature complete but not final.

Bug: 8175766
Change-Id: I54ebb7488222746b0c07292e65b9ded1b9d720fa
/frameworks/support/v7/mediarouter/src/android/support/v7/app/MediaRouteControllerDialog.java