Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
ee71c838
authored
Oct 06, 2021
by
ibaker
Committed by
Oliver Woodman
Oct 06, 2021
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Migrate usages of deprecated Player COMMAND_ constants
PiperOrigin-RevId: 401292817
parent
d5f71a5d
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
93 additions
and
81 deletions
extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java
extensions/cast/src/test/java/com/google/android/exoplayer2/ext/cast/CastPlayerTest.java
extensions/media2/src/main/java/com/google/android/exoplayer2/ext/media2/PlayerWrapper.java
extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java
extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/TimelineQueueNavigator.java
library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java
library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java
library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java
View file @
ee71c838
...
@@ -96,7 +96,7 @@ public final class CastPlayer extends BasePlayer {
...
@@ -96,7 +96,7 @@ public final class CastPlayer extends BasePlayer {
COMMAND_PLAY_PAUSE
,
COMMAND_PLAY_PAUSE
,
COMMAND_PREPARE_STOP
,
COMMAND_PREPARE_STOP
,
COMMAND_SEEK_TO_DEFAULT_POSITION
,
COMMAND_SEEK_TO_DEFAULT_POSITION
,
COMMAND_SEEK_TO_
WINDOW
,
COMMAND_SEEK_TO_
MEDIA_ITEM
,
COMMAND_SET_REPEAT_MODE
,
COMMAND_SET_REPEAT_MODE
,
COMMAND_SET_SPEED_AND_PITCH
,
COMMAND_SET_SPEED_AND_PITCH
,
COMMAND_GET_CURRENT_MEDIA_ITEM
,
COMMAND_GET_CURRENT_MEDIA_ITEM
,
...
...
extensions/cast/src/test/java/com/google/android/exoplayer2/ext/cast/CastPlayerTest.java
View file @
ee71c838
...
@@ -28,13 +28,13 @@ import static com.google.android.exoplayer2.Player.COMMAND_PLAY_PAUSE;
...
@@ -28,13 +28,13 @@ import static com.google.android.exoplayer2.Player.COMMAND_PLAY_PAUSE;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PREPARE_STOP
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PREPARE_STOP
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_DEFAULT_POSITION
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_DEFAULT_POSITION
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_DEVICE_VOLUME
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_DEVICE_VOLUME
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_MEDIA_ITEMS_METADATA
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_MEDIA_ITEMS_METADATA
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
...
@@ -1317,12 +1317,12 @@ public class CastPlayerTest {
...
@@ -1317,12 +1317,12 @@ public class CastPlayerTest {
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_PLAY_PAUSE
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_PLAY_PAUSE
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_PREPARE_STOP
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_PREPARE_STOP
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
WINDOW
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_
WINDOW
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_TO_
MEDIA_ITEM
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SET_SPEED_AND_PITCH
)).
isTrue
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SET_SPEED_AND_PITCH
)).
isTrue
();
...
@@ -1360,7 +1360,7 @@ public class CastPlayerTest {
...
@@ -1360,7 +1360,7 @@ public class CastPlayerTest {
durationsMs
,
durationsMs
,
/* positionMs= */
C
.
TIME_UNSET
);
/* positionMs= */
C
.
TIME_UNSET
);
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
assertThat
(
castPlayer
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
}
}
...
@@ -1430,12 +1430,14 @@ public class CastPlayerTest {
...
@@ -1430,12 +1430,14 @@ public class CastPlayerTest {
when
(
mockRemoteMediaClient
.
queueJumpToItem
(
anyInt
(),
anyLong
(),
eq
(
null
)))
when
(
mockRemoteMediaClient
.
queueJumpToItem
(
anyInt
(),
anyLong
(),
eq
(
null
)))
.
thenReturn
(
mockPendingResult
);
.
thenReturn
(
mockPendingResult
);
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
,
2
,
3
,
4
};
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
,
2
,
3
,
4
};
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
...
@@ -1462,12 +1464,14 @@ public class CastPlayerTest {
...
@@ -1462,12 +1464,14 @@ public class CastPlayerTest {
when
(
mockRemoteMediaClient
.
queueJumpToItem
(
anyInt
(),
anyLong
(),
eq
(
null
)))
when
(
mockRemoteMediaClient
.
queueJumpToItem
(
anyInt
(),
anyLong
(),
eq
(
null
)))
.
thenReturn
(
mockPendingResult
);
.
thenReturn
(
mockPendingResult
);
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
,
2
,
3
,
4
};
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
,
2
,
3
,
4
};
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
...
@@ -1511,7 +1515,7 @@ public class CastPlayerTest {
...
@@ -1511,7 +1515,7 @@ public class CastPlayerTest {
public
void
addMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
public
void
addMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem3
=
createMediaItem
(
/* mediaQueueItemId= */
3
);
MediaItem
mediaItem3
=
createMediaItem
(
/* mediaQueueItemId= */
3
);
...
@@ -1545,7 +1549,7 @@ public class CastPlayerTest {
...
@@ -1545,7 +1549,7 @@ public class CastPlayerTest {
public
void
addMediaItem_atTheStart_notifiesAvailableCommandsChanged
()
{
public
void
addMediaItem_atTheStart_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem3
=
createMediaItem
(
/* mediaQueueItemId= */
3
);
MediaItem
mediaItem3
=
createMediaItem
(
/* mediaQueueItemId= */
3
);
...
@@ -1579,7 +1583,7 @@ public class CastPlayerTest {
...
@@ -1579,7 +1583,7 @@ public class CastPlayerTest {
public
void
removeMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
public
void
removeMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty= */
true
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty= */
true
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
...
@@ -1624,7 +1628,7 @@ public class CastPlayerTest {
...
@@ -1624,7 +1628,7 @@ public class CastPlayerTest {
.
thenReturn
(
mockPendingResult
);
.
thenReturn
(
mockPendingResult
);
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty= */
true
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty= */
true
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
...
@@ -1667,7 +1671,7 @@ public class CastPlayerTest {
...
@@ -1667,7 +1671,7 @@ public class CastPlayerTest {
public
void
removeMediaItem_current_notifiesAvailableCommandsChanged
()
{
public
void
removeMediaItem_current_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem1
=
createMediaItem
(
/* mediaQueueItemId= */
1
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
MediaItem
mediaItem2
=
createMediaItem
(
/* mediaQueueItemId= */
2
);
...
@@ -1696,7 +1700,9 @@ public class CastPlayerTest {
...
@@ -1696,7 +1700,9 @@ public class CastPlayerTest {
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
};
int
[]
mediaQueueItemIds
=
new
int
[]
{
1
};
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
List
<
MediaItem
>
mediaItems
=
createMediaItems
(
mediaQueueItemIds
);
...
@@ -1821,7 +1827,7 @@ public class CastPlayerTest {
...
@@ -1821,7 +1827,7 @@ public class CastPlayerTest {
Player
.
Commands
.
Builder
builder
=
new
Player
.
Commands
.
Builder
();
Player
.
Commands
.
Builder
builder
=
new
Player
.
Commands
.
Builder
();
builder
.
addAll
(
CastPlayer
.
PERMANENT_AVAILABLE_COMMANDS
);
builder
.
addAll
(
CastPlayer
.
PERMANENT_AVAILABLE_COMMANDS
);
if
(!
isTimelineEmpty
)
{
if
(!
isTimelineEmpty
)
{
builder
.
add
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
);
builder
.
add
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
);
builder
.
add
(
COMMAND_SEEK_TO_PREVIOUS
);
builder
.
add
(
COMMAND_SEEK_TO_PREVIOUS
);
builder
.
add
(
COMMAND_SEEK_BACK
);
builder
.
add
(
COMMAND_SEEK_BACK
);
builder
.
add
(
COMMAND_SEEK_FORWARD
);
builder
.
add
(
COMMAND_SEEK_FORWARD
);
...
...
extensions/media2/src/main/java/com/google/android/exoplayer2/ext/media2/PlayerWrapper.java
View file @
ee71c838
...
@@ -17,10 +17,10 @@ package com.google.android.exoplayer2.ext.media2;
...
@@ -17,10 +17,10 @@ package com.google.android.exoplayer2.ext.media2;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_GET_AUDIO_ATTRIBUTES
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_GET_AUDIO_ATTRIBUTES
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PLAY_PAUSE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PLAY_PAUSE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_SHUFFLE_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_SHUFFLE_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
util
.
Util
.
postOrRun
;
import
static
com
.
google
.
android
.
exoplayer2
.
util
.
Util
.
postOrRun
;
...
@@ -264,7 +264,7 @@ import java.util.List;
...
@@ -264,7 +264,7 @@ import java.util.List;
Assertions
.
checkState
(
0
<=
index
&&
index
<
timeline
.
getWindowCount
());
Assertions
.
checkState
(
0
<=
index
&&
index
<
timeline
.
getWindowCount
());
int
windowIndex
=
player
.
getCurrentWindowIndex
();
int
windowIndex
=
player
.
getCurrentWindowIndex
();
if
(
windowIndex
!=
index
)
{
if
(
windowIndex
!=
index
)
{
return
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
WINDOW
)
return
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
MEDIA_ITEM
)
&&
controlDispatcher
.
dispatchSeekTo
(
player
,
index
,
C
.
TIME_UNSET
);
&&
controlDispatcher
.
dispatchSeekTo
(
player
,
index
,
C
.
TIME_UNSET
);
}
}
return
false
;
return
false
;
...
@@ -334,7 +334,7 @@ import java.util.List;
...
@@ -334,7 +334,7 @@ import java.util.List;
public
boolean
play
()
{
public
boolean
play
()
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
boolean
seekHandled
=
boolean
seekHandled
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)
&&
controlDispatcher
.
dispatchSeekTo
(
&&
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
/* positionMs= */
0
);
player
,
player
.
getCurrentWindowIndex
(),
/* positionMs= */
0
);
if
(!
seekHandled
)
{
if
(!
seekHandled
)
{
...
@@ -361,7 +361,7 @@ import java.util.List;
...
@@ -361,7 +361,7 @@ import java.util.List;
}
}
public
boolean
seekTo
(
long
position
)
{
public
boolean
seekTo
(
long
position
)
{
return
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)
return
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)
&&
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
position
);
&&
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
position
);
}
}
...
...
extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.java
View file @
ee71c838
...
@@ -18,7 +18,7 @@ package com.google.android.exoplayer2.ext.mediasession;
...
@@ -18,7 +18,7 @@ package com.google.android.exoplayer2.ext.mediasession;
import
static
androidx
.
media
.
utils
.
MediaConstants
.
PLAYBACK_STATE_EXTRAS_KEY_MEDIA_ID
;
import
static
androidx
.
media
.
utils
.
MediaConstants
.
PLAYBACK_STATE_EXTRAS_KEY_MEDIA_ID
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_IS_PLAYING_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_IS_PLAYING_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_PLAYBACK_PARAMETERS_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_PLAYBACK_PARAMETERS_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_PLAYBACK_STATE_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_PLAYBACK_STATE_CHANGED
;
...
@@ -931,7 +931,7 @@ public final class MediaSessionConnector {
...
@@ -931,7 +931,7 @@ public final class MediaSessionConnector {
}
}
private
long
buildPlaybackActions
(
Player
player
)
{
private
long
buildPlaybackActions
(
Player
player
)
{
boolean
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
);
boolean
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
);
boolean
enableRewind
=
boolean
enableRewind
=
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
boolean
enableFastForward
=
boolean
enableFastForward
=
...
...
extensions/mediasession/src/main/java/com/google/android/exoplayer2/ext/mediasession/TimelineQueueNavigator.java
View file @
ee71c838
...
@@ -15,9 +15,9 @@
...
@@ -15,9 +15,9 @@
*/
*/
package
com
.
google
.
android
.
exoplayer2
.
ext
.
mediasession
;
package
com
.
google
.
android
.
exoplayer2
.
ext
.
mediasession
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
;
import
static
java
.
lang
.
Math
.
min
;
import
static
java
.
lang
.
Math
.
min
;
import
android.os.Bundle
;
import
android.os.Bundle
;
...
@@ -102,12 +102,12 @@ public abstract class TimelineQueueNavigator implements MediaSessionConnector.Qu
...
@@ -102,12 +102,12 @@ public abstract class TimelineQueueNavigator implements MediaSessionConnector.Qu
timeline
.
getWindow
(
player
.
getCurrentWindowIndex
(),
window
);
timeline
.
getWindow
(
player
.
getCurrentWindowIndex
(),
window
);
enableSkipTo
=
timeline
.
getWindowCount
()
>
1
;
enableSkipTo
=
timeline
.
getWindowCount
()
>
1
;
enablePrevious
=
enablePrevious
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)
||
!
window
.
isLive
()
||
!
window
.
isLive
()
||
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
||
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
enableNext
=
enableNext
=
(
window
.
isLive
()
&&
window
.
isDynamic
)
(
window
.
isLive
()
&&
window
.
isDynamic
)
||
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
WINDOW
);
||
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
);
}
}
long
actions
=
0
;
long
actions
=
0
;
...
...
library/common/src/main/java/com/google/android/exoplayer2/BasePlayer.java
View file @
ee71c838
...
@@ -389,20 +389,20 @@ public abstract class BasePlayer implements Player {
...
@@ -389,20 +389,20 @@ public abstract class BasePlayer implements Player {
return
new
Commands
.
Builder
()
return
new
Commands
.
Builder
()
.
addAll
(
permanentAvailableCommands
)
.
addAll
(
permanentAvailableCommands
)
.
addIf
(
COMMAND_SEEK_TO_DEFAULT_POSITION
,
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_DEFAULT_POSITION
,
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
,
hasPreviousWindow
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
,
hasPreviousWindow
()
&&
!
isPlayingAd
())
.
addIf
(
.
addIf
(
COMMAND_SEEK_TO_PREVIOUS
,
COMMAND_SEEK_TO_PREVIOUS
,
!
getCurrentTimeline
().
isEmpty
()
!
getCurrentTimeline
().
isEmpty
()
&&
(
hasPreviousWindow
()
||
!
isCurrentWindowLive
()
||
isCurrentWindowSeekable
())
&&
(
hasPreviousWindow
()
||
!
isCurrentWindowLive
()
||
isCurrentWindowSeekable
())
&&
!
isPlayingAd
())
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
hasNextWindow
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
hasNextWindow
()
&&
!
isPlayingAd
())
.
addIf
(
.
addIf
(
COMMAND_SEEK_TO_NEXT
,
COMMAND_SEEK_TO_NEXT
,
!
getCurrentTimeline
().
isEmpty
()
!
getCurrentTimeline
().
isEmpty
()
&&
(
hasNextWindow
()
||
(
isCurrentWindowLive
()
&&
isCurrentWindowDynamic
()))
&&
(
hasNextWindow
()
||
(
isCurrentWindowLive
()
&&
isCurrentWindowDynamic
()))
&&
!
isPlayingAd
())
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_
WINDOW
,
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_TO_
MEDIA_ITEM
,
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_BACK
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_BACK
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_FORWARD
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
addIf
(
COMMAND_SEEK_FORWARD
,
isCurrentWindowSeekable
()
&&
!
isPlayingAd
())
.
build
();
.
build
();
...
...
library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java
View file @
ee71c838
...
@@ -220,7 +220,7 @@ import java.util.concurrent.CopyOnWriteArraySet;
...
@@ -220,7 +220,7 @@ import java.util.concurrent.CopyOnWriteArraySet;
new
Commands
.
Builder
()
new
Commands
.
Builder
()
.
addAll
(
permanentAvailableCommands
)
.
addAll
(
permanentAvailableCommands
)
.
add
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)
.
add
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)
.
add
(
COMMAND_SEEK_TO_
WINDOW
)
.
add
(
COMMAND_SEEK_TO_
MEDIA_ITEM
)
.
build
();
.
build
();
mediaMetadata
=
MediaMetadata
.
EMPTY
;
mediaMetadata
=
MediaMetadata
.
EMPTY
;
playlistMetadata
=
MediaMetadata
.
EMPTY
;
playlistMetadata
=
MediaMetadata
.
EMPTY
;
...
...
library/core/src/test/java/com/google/android/exoplayer2/ExoPlayerTest.java
View file @
ee71c838
...
@@ -29,13 +29,13 @@ import static com.google.android.exoplayer2.Player.COMMAND_PLAY_PAUSE;
...
@@ -29,13 +29,13 @@ import static com.google.android.exoplayer2.Player.COMMAND_PLAY_PAUSE;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PREPARE_STOP
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_PREPARE_STOP
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_DEFAULT_POSITION
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_DEFAULT_POSITION
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_DEVICE_VOLUME
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_DEVICE_VOLUME
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_MEDIA_ITEMS_METADATA
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_MEDIA_ITEMS_METADATA
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SET_REPEAT_MODE
;
...
@@ -8320,12 +8320,12 @@ public final class ExoPlayerTest {
...
@@ -8320,12 +8320,12 @@ public final class ExoPlayerTest {
assertThat
(
player
.
isCommandAvailable
(
COMMAND_PLAY_PAUSE
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_PLAY_PAUSE
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_PREPARE_STOP
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_PREPARE_STOP
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_DEFAULT_POSITION
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
WINDOW
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
WINDOW
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
MEDIA_ITEM
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SET_SPEED_AND_PITCH
)).
isTrue
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SET_SPEED_AND_PITCH
)).
isTrue
();
...
@@ -8373,12 +8373,12 @@ public final class ExoPlayerTest {
...
@@ -8373,12 +8373,12 @@ public final class ExoPlayerTest {
player
.
prepare
();
player
.
prepare
();
runUntilPlaybackState
(
player
,
Player
.
STATE_READY
);
runUntilPlaybackState
(
player
,
Player
.
STATE_READY
);
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_NEXT
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
}
}
...
@@ -8398,7 +8398,7 @@ public final class ExoPlayerTest {
...
@@ -8398,7 +8398,7 @@ public final class ExoPlayerTest {
player
.
prepare
();
player
.
prepare
();
runUntilPlaybackState
(
player
,
Player
.
STATE_READY
);
runUntilPlaybackState
(
player
,
Player
.
STATE_READY
);
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
assertThat
(
player
.
isCommandAvailable
(
COMMAND_SEEK_FORWARD
)).
isFalse
();
}
}
...
@@ -8483,12 +8483,14 @@ public final class ExoPlayerTest {
...
@@ -8483,12 +8483,14 @@ public final class ExoPlayerTest {
@Test
@Test
public
void
seekTo_nextWindow_notifiesAvailableCommandsChanged
()
{
public
void
seekTo_nextWindow_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8518,12 +8520,14 @@ public final class ExoPlayerTest {
...
@@ -8518,12 +8520,14 @@ public final class ExoPlayerTest {
@Test
@Test
public
void
seekTo_previousWindow_notifiesAvailableCommandsChanged
()
{
public
void
seekTo_previousWindow_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8570,25 +8574,25 @@ public final class ExoPlayerTest {
...
@@ -8570,25 +8574,25 @@ public final class ExoPlayerTest {
@Test
@Test
public
void
automaticWindowTransition_notifiesAvailableCommandsChanged
()
throws
Exception
{
public
void
automaticWindowTransition_notifiesAvailableCommandsChanged
()
throws
Exception
{
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
commandsWithSeekInCurrentAndToNextWindow
=
Player
.
Commands
commandsWithSeekInCurrentAndToNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
,
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
,
COMMAND_SEEK_TO_NEXT
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_FORWARD
);
COMMAND_SEEK_FORWARD
);
Player
.
Commands
commandsWithSeekInCurrentAndToPreviousWindow
=
Player
.
Commands
commandsWithSeekInCurrentAndToPreviousWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
,
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
,
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_FORWARD
);
COMMAND_SEEK_FORWARD
);
Player
.
Commands
commandsWithSeekAnywhere
=
Player
.
Commands
commandsWithSeekAnywhere
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
,
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
,
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
,
COMMAND_SEEK_TO_NEXT
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_BACK
,
COMMAND_SEEK_FORWARD
);
COMMAND_SEEK_FORWARD
);
...
@@ -8630,7 +8634,7 @@ public final class ExoPlayerTest {
...
@@ -8630,7 +8634,7 @@ public final class ExoPlayerTest {
public
void
addMediaSource_atTheEnd_notifiesAvailableCommandsChanged
()
{
public
void
addMediaSource_atTheEnd_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8652,7 +8656,7 @@ public final class ExoPlayerTest {
...
@@ -8652,7 +8656,7 @@ public final class ExoPlayerTest {
public
void
addMediaSource_atTheStart_notifiesAvailableCommandsChanged
()
{
public
void
addMediaSource_atTheStart_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8674,7 +8678,7 @@ public final class ExoPlayerTest {
...
@@ -8674,7 +8678,7 @@ public final class ExoPlayerTest {
public
void
removeMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
public
void
removeMediaItem_atTheEnd_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty */
true
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty */
true
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
...
@@ -8702,7 +8706,7 @@ public final class ExoPlayerTest {
...
@@ -8702,7 +8706,7 @@ public final class ExoPlayerTest {
public
void
removeMediaItem_atTheStart_notifiesAvailableCommandsChanged
()
{
public
void
removeMediaItem_atTheStart_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty */
true
);
Player
.
Commands
emptyTimelineCommands
=
createWithDefaultCommands
(
/* isTimelineEmpty */
true
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
...
@@ -8731,7 +8735,7 @@ public final class ExoPlayerTest {
...
@@ -8731,7 +8735,7 @@ public final class ExoPlayerTest {
public
void
removeMediaItem_current_notifiesAvailableCommandsChanged
()
{
public
void
removeMediaItem_current_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8751,7 +8755,9 @@ public final class ExoPlayerTest {
...
@@ -8751,7 +8755,9 @@ public final class ExoPlayerTest {
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
defaultCommands
=
createWithDefaultCommands
();
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
Player
.
Commands
commandsWithSeekToPreviousAndNextWindow
=
createWithDefaultCommands
(
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_WINDOW
,
COMMAND_SEEK_TO_NEXT_WINDOW
,
COMMAND_SEEK_TO_NEXT
);
COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT_MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -8783,9 +8789,9 @@ public final class ExoPlayerTest {
...
@@ -8783,9 +8789,9 @@ public final class ExoPlayerTest {
@Test
@Test
public
void
setShuffleModeEnabled_notifiesAvailableCommandsChanged
()
{
public
void
setShuffleModeEnabled_notifiesAvailableCommandsChanged
()
{
Player
.
Commands
commandsWithSeekToPreviousWindow
=
Player
.
Commands
commandsWithSeekToPreviousWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
WINDOW
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_PREVIOUS_
MEDIA_ITEM
);
Player
.
Commands
commandsWithSeekToNextWindow
=
Player
.
Commands
commandsWithSeekToNextWindow
=
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
WINDOW
,
COMMAND_SEEK_TO_NEXT
);
createWithDefaultCommands
(
COMMAND_SEEK_TO_NEXT_
MEDIA_ITEM
,
COMMAND_SEEK_TO_NEXT
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
Player
.
Listener
mockListener
=
mock
(
Player
.
Listener
.
class
);
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
ExoPlayer
player
=
new
TestExoPlayerBuilder
(
context
).
build
();
player
.
addListener
(
mockListener
);
player
.
addListener
(
mockListener
);
...
@@ -11223,7 +11229,7 @@ public final class ExoPlayerTest {
...
@@ -11223,7 +11229,7 @@ public final class ExoPlayerTest {
COMMAND_PLAY_PAUSE
,
COMMAND_PLAY_PAUSE
,
COMMAND_PREPARE_STOP
,
COMMAND_PREPARE_STOP
,
COMMAND_SEEK_TO_DEFAULT_POSITION
,
COMMAND_SEEK_TO_DEFAULT_POSITION
,
COMMAND_SEEK_TO_
WINDOW
,
COMMAND_SEEK_TO_
MEDIA_ITEM
,
COMMAND_SET_SPEED_AND_PITCH
,
COMMAND_SET_SPEED_AND_PITCH
,
COMMAND_SET_SHUFFLE_MODE
,
COMMAND_SET_SHUFFLE_MODE
,
COMMAND_SET_REPEAT_MODE
,
COMMAND_SET_REPEAT_MODE
,
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
View file @
ee71c838
...
@@ -17,7 +17,7 @@ package com.google.android.exoplayer2.ui;
...
@@ -17,7 +17,7 @@ package com.google.android.exoplayer2.ui;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_AVAILABLE_COMMANDS_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_AVAILABLE_COMMANDS_CHANGED
;
...
@@ -880,7 +880,7 @@ public class PlayerControlView extends FrameLayout {
...
@@ -880,7 +880,7 @@ public class PlayerControlView extends FrameLayout {
boolean
enableFastForward
=
false
;
boolean
enableFastForward
=
false
;
boolean
enableNext
=
false
;
boolean
enableNext
=
false
;
if
(
player
!=
null
)
{
if
(
player
!=
null
)
{
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
);
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
);
enablePrevious
=
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
);
enablePrevious
=
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
);
enableRewind
=
enableRewind
=
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
View file @
ee71c838
...
@@ -17,7 +17,7 @@ package com.google.android.exoplayer2.ui;
...
@@ -17,7 +17,7 @@ package com.google.android.exoplayer2.ui;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_BACK
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_FORWARD
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
WINDOW
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_NEXT
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
COMMAND_SEEK_TO_PREVIOUS
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_AVAILABLE_COMMANDS_CHANGED
;
import
static
com
.
google
.
android
.
exoplayer2
.
Player
.
EVENT_AVAILABLE_COMMANDS_CHANGED
;
...
@@ -1126,7 +1126,7 @@ public class StyledPlayerControlView extends FrameLayout {
...
@@ -1126,7 +1126,7 @@ public class StyledPlayerControlView extends FrameLayout {
boolean
enableFastForward
=
false
;
boolean
enableFastForward
=
false
;
boolean
enableNext
=
false
;
boolean
enableNext
=
false
;
if
(
player
!=
null
)
{
if
(
player
!=
null
)
{
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
WINDOW
);
enableSeeking
=
player
.
isCommandAvailable
(
COMMAND_SEEK_IN_CURRENT_
MEDIA_ITEM
);
enablePrevious
=
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
);
enablePrevious
=
player
.
isCommandAvailable
(
COMMAND_SEEK_TO_PREVIOUS
);
enableRewind
=
enableRewind
=
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
player
.
isCommandAvailable
(
COMMAND_SEEK_BACK
)
&&
controlDispatcher
.
isRewindEnabled
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment