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
f7c4fd49
authored
Apr 29, 2021
by
olly
Committed by
bachinger
Apr 30, 2021
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Remove deprecated PlaybackPreparer
PiperOrigin-RevId: 371170769
parent
7d2a2aa2
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
9 additions
and
114 deletions
RELEASENOTES.md
extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerNotificationManager.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java
RELEASENOTES.md
View file @
f7c4fd49
...
@@ -108,6 +108,15 @@
...
@@ -108,6 +108,15 @@
*
Remove
`CastPlayer`
specific playlist manipulation methods. Use
*
Remove
`CastPlayer`
specific playlist manipulation methods. Use
`setMediaItems`
,
`addMediaItems`
,
`removeMediaItem`
and
`moveMediaItem`
`setMediaItems`
,
`addMediaItems`
,
`removeMediaItem`
and
`moveMediaItem`
instead.
instead.
*
Remove
`PlaybackPreparer`
. UI components that previously had
`setPlaybackPreparer`
methods will now call
`Player.prepare`
by default.
If this behavior is sufficient, use of
`PlaybackPreparer`
can be removed
from application code without replacement. For custom preparation logic,
replace calls to
`setPlaybackPreparer`
with calls to
`setControlDispatcher`
on the same components, passing a
`ControlDispatcher`
that implements custom preparation logic in
`dispatchPrepare`
. Extend
`DefaultControlDispatcher`
to avoid having to
implement the other
`ControlDispatcher`
methods.
*
DRM:
*
DRM:
*
Only dispatch DRM session acquire and release events once per period
*
Only dispatch DRM session acquire and release events once per period
when playing content that uses the same encryption keys for both audio &
when playing content that uses the same encryption keys for both audio &
...
...
extensions/leanback/src/main/java/com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.java
View file @
f7c4fd49
...
@@ -30,7 +30,6 @@ import com.google.android.exoplayer2.ControlDispatcher;
...
@@ -30,7 +30,6 @@ import com.google.android.exoplayer2.ControlDispatcher;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Player.TimelineChangeReason
;
import
com.google.android.exoplayer2.Player.TimelineChangeReason
;
...
@@ -51,7 +50,6 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
...
@@ -51,7 +50,6 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
private
final
PlayerListener
playerListener
;
private
final
PlayerListener
playerListener
;
private
final
int
updatePeriodMs
;
private
final
int
updatePeriodMs
;
@Nullable
private
PlaybackPreparer
playbackPreparer
;
private
ControlDispatcher
controlDispatcher
;
private
ControlDispatcher
controlDispatcher
;
@Nullable
private
ErrorMessageProvider
<?
super
ExoPlaybackException
>
errorMessageProvider
;
@Nullable
private
ErrorMessageProvider
<?
super
ExoPlaybackException
>
errorMessageProvider
;
@Nullable
private
SurfaceHolderGlueHost
surfaceHolderGlueHost
;
@Nullable
private
SurfaceHolderGlueHost
surfaceHolderGlueHost
;
...
@@ -77,20 +75,6 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
...
@@ -77,20 +75,6 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The adapter calls
* {@link ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that the adapter
* uses by default, calls {@link Player#prepare()}. If you wish to customize this behaviour,
* you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
this
.
playbackPreparer
=
playbackPreparer
;
}
/**
* Sets the {@link ControlDispatcher}.
* Sets the {@link ControlDispatcher}.
*
*
* @param controlDispatcher The {@link ControlDispatcher}, or null to use
* @param controlDispatcher The {@link ControlDispatcher}, or null to use
...
@@ -168,11 +152,7 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
...
@@ -168,11 +152,7 @@ public final class LeanbackPlayerAdapter extends PlayerAdapter implements Runnab
@Override
@Override
public
void
play
()
{
public
void
play
()
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_IDLE
)
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_IDLE
)
{
if
(
playbackPreparer
!=
null
)
{
playbackPreparer
.
preparePlayback
();
}
else
{
controlDispatcher
.
dispatchPrepare
(
player
);
controlDispatcher
.
dispatchPrepare
(
player
);
}
}
else
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
}
else
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
}
}
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
View file @
f7c4fd49
...
@@ -47,7 +47,6 @@ import com.google.android.exoplayer2.C;
...
@@ -47,7 +47,6 @@ import com.google.android.exoplayer2.C;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player.Events
;
import
com.google.android.exoplayer2.Player.Events
;
import
com.google.android.exoplayer2.Player.State
;
import
com.google.android.exoplayer2.Player.State
;
...
@@ -329,7 +328,6 @@ public class PlayerControlView extends FrameLayout {
...
@@ -329,7 +328,6 @@ public class PlayerControlView extends FrameLayout {
@Nullable
private
Player
player
;
@Nullable
private
Player
player
;
private
com
.
google
.
android
.
exoplayer2
.
ControlDispatcher
controlDispatcher
;
private
com
.
google
.
android
.
exoplayer2
.
ControlDispatcher
controlDispatcher
;
@Nullable
private
ProgressUpdateListener
progressUpdateListener
;
@Nullable
private
ProgressUpdateListener
progressUpdateListener
;
@Nullable
private
PlaybackPreparer
playbackPreparer
;
private
boolean
isAttachedToWindow
;
private
boolean
isAttachedToWindow
;
private
boolean
showMultiWindowTimeBar
;
private
boolean
showMultiWindowTimeBar
;
...
@@ -617,20 +615,6 @@ public class PlayerControlView extends FrameLayout {
...
@@ -617,20 +615,6 @@ public class PlayerControlView extends FrameLayout {
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The view calls {@link
* ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that the view
* uses by default, calls {@link Player#prepare()}. If you wish to customize this behaviour,
* you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
this
.
playbackPreparer
=
playbackPreparer
;
}
/**
* Sets the {@link com.google.android.exoplayer2.ControlDispatcher}.
* Sets the {@link com.google.android.exoplayer2.ControlDispatcher}.
*
*
* @param controlDispatcher The {@link com.google.android.exoplayer2.ControlDispatcher}.
* @param controlDispatcher The {@link com.google.android.exoplayer2.ControlDispatcher}.
...
@@ -1273,11 +1257,7 @@ public class PlayerControlView extends FrameLayout {
...
@@ -1273,11 +1257,7 @@ public class PlayerControlView extends FrameLayout {
private
void
dispatchPlay
(
Player
player
)
{
private
void
dispatchPlay
(
Player
player
)
{
@State
int
state
=
player
.
getPlaybackState
();
@State
int
state
=
player
.
getPlaybackState
();
if
(
state
==
Player
.
STATE_IDLE
)
{
if
(
state
==
Player
.
STATE_IDLE
)
{
if
(
playbackPreparer
!=
null
)
{
playbackPreparer
.
preparePlayback
();
}
else
{
controlDispatcher
.
dispatchPrepare
(
player
);
controlDispatcher
.
dispatchPrepare
(
player
);
}
}
else
if
(
state
==
Player
.
STATE_ENDED
)
{
}
else
if
(
state
==
Player
.
STATE_ENDED
)
{
seekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
seekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
}
}
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerNotificationManager.java
View file @
f7c4fd49
...
@@ -52,7 +52,6 @@ import androidx.media.app.NotificationCompat.MediaStyle;
...
@@ -52,7 +52,6 @@ import androidx.media.app.NotificationCompat.MediaStyle;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Timeline
;
import
com.google.android.exoplayer2.Timeline
;
import
com.google.android.exoplayer2.util.NotificationUtil
;
import
com.google.android.exoplayer2.util.NotificationUtil
;
...
@@ -641,7 +640,6 @@ public class PlayerNotificationManager {
...
@@ -641,7 +640,6 @@ public class PlayerNotificationManager {
@Nullable
private
NotificationCompat
.
Builder
builder
;
@Nullable
private
NotificationCompat
.
Builder
builder
;
@Nullable
private
List
<
NotificationCompat
.
Action
>
builderActions
;
@Nullable
private
List
<
NotificationCompat
.
Action
>
builderActions
;
@Nullable
private
Player
player
;
@Nullable
private
Player
player
;
@Nullable
private
PlaybackPreparer
playbackPreparer
;
private
ControlDispatcher
controlDispatcher
;
private
ControlDispatcher
controlDispatcher
;
private
boolean
isNotificationStarted
;
private
boolean
isNotificationStarted
;
private
int
currentNotificationTag
;
private
int
currentNotificationTag
;
...
@@ -917,21 +915,6 @@ public class PlayerNotificationManager {
...
@@ -917,21 +915,6 @@ public class PlayerNotificationManager {
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The manager calls
* {@link ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that this manager
* uses by default, calls {@link Player#prepare()}. If you wish to intercept or customize this
* behaviour, you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)} and pass it to {@link
* #setControlDispatcher(ControlDispatcher)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
this
.
playbackPreparer
=
playbackPreparer
;
}
/**
* Sets the {@link ControlDispatcher}.
* Sets the {@link ControlDispatcher}.
*
*
* @param controlDispatcher The {@link ControlDispatcher}.
* @param controlDispatcher The {@link ControlDispatcher}.
...
@@ -1639,11 +1622,7 @@ public class PlayerNotificationManager {
...
@@ -1639,11 +1622,7 @@ public class PlayerNotificationManager {
String
action
=
intent
.
getAction
();
String
action
=
intent
.
getAction
();
if
(
ACTION_PLAY
.
equals
(
action
))
{
if
(
ACTION_PLAY
.
equals
(
action
))
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_IDLE
)
{
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_IDLE
)
{
if
(
playbackPreparer
!=
null
)
{
playbackPreparer
.
preparePlayback
();
}
else
{
controlDispatcher
.
dispatchPrepare
(
player
);
controlDispatcher
.
dispatchPrepare
(
player
);
}
}
else
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
}
else
if
(
player
.
getPlaybackState
()
==
Player
.
STATE_ENDED
)
{
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
controlDispatcher
.
dispatchSeekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
}
}
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java
View file @
f7c4fd49
...
@@ -49,7 +49,6 @@ import com.google.android.exoplayer2.C;
...
@@ -49,7 +49,6 @@ import com.google.android.exoplayer2.C;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Timeline
;
import
com.google.android.exoplayer2.Timeline
;
...
@@ -914,21 +913,6 @@ public class PlayerView extends FrameLayout implements AdViewProvider {
...
@@ -914,21 +913,6 @@ public class PlayerView extends FrameLayout implements AdViewProvider {
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The view calls {@link
* ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that the view
* uses by default, calls {@link Player#prepare()}. If you wish to customize this behaviour,
* you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
Assertions
.
checkStateNotNull
(
controller
);
controller
.
setPlaybackPreparer
(
playbackPreparer
);
}
/**
* Sets the {@link ControlDispatcher}.
* Sets the {@link ControlDispatcher}.
*
*
* @param controlDispatcher The {@link ControlDispatcher}.
* @param controlDispatcher The {@link ControlDispatcher}.
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
View file @
f7c4fd49
...
@@ -57,7 +57,6 @@ import com.google.android.exoplayer2.DefaultControlDispatcher;
...
@@ -57,7 +57,6 @@ import com.google.android.exoplayer2.DefaultControlDispatcher;
import
com.google.android.exoplayer2.ExoPlayer
;
import
com.google.android.exoplayer2.ExoPlayer
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.ExoPlayerLibraryInfo
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player.Events
;
import
com.google.android.exoplayer2.Player.Events
;
import
com.google.android.exoplayer2.Player.State
;
import
com.google.android.exoplayer2.Player.State
;
...
@@ -417,7 +416,6 @@ public class StyledPlayerControlView extends FrameLayout {
...
@@ -417,7 +416,6 @@ public class StyledPlayerControlView extends FrameLayout {
@Nullable
private
Player
player
;
@Nullable
private
Player
player
;
private
ControlDispatcher
controlDispatcher
;
private
ControlDispatcher
controlDispatcher
;
@Nullable
private
ProgressUpdateListener
progressUpdateListener
;
@Nullable
private
ProgressUpdateListener
progressUpdateListener
;
@Nullable
private
PlaybackPreparer
playbackPreparer
;
@Nullable
private
OnFullScreenModeChangedListener
onFullScreenModeChangedListener
;
@Nullable
private
OnFullScreenModeChangedListener
onFullScreenModeChangedListener
;
private
boolean
isFullScreen
;
private
boolean
isFullScreen
;
...
@@ -848,20 +846,6 @@ public class StyledPlayerControlView extends FrameLayout {
...
@@ -848,20 +846,6 @@ public class StyledPlayerControlView extends FrameLayout {
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The view calls {@link
* ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that the view
* uses by default, calls {@link Player#prepare()}. If you wish to customize this behaviour,
* you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
this
.
playbackPreparer
=
playbackPreparer
;
}
/**
* Sets the {@link ControlDispatcher}.
* Sets the {@link ControlDispatcher}.
*
*
* @param controlDispatcher The {@link ControlDispatcher}.
* @param controlDispatcher The {@link ControlDispatcher}.
...
@@ -1702,11 +1686,7 @@ public class StyledPlayerControlView extends FrameLayout {
...
@@ -1702,11 +1686,7 @@ public class StyledPlayerControlView extends FrameLayout {
private
void
dispatchPlay
(
Player
player
)
{
private
void
dispatchPlay
(
Player
player
)
{
@State
int
state
=
player
.
getPlaybackState
();
@State
int
state
=
player
.
getPlaybackState
();
if
(
state
==
Player
.
STATE_IDLE
)
{
if
(
state
==
Player
.
STATE_IDLE
)
{
if
(
playbackPreparer
!=
null
)
{
playbackPreparer
.
preparePlayback
();
}
else
{
controlDispatcher
.
dispatchPrepare
(
player
);
controlDispatcher
.
dispatchPrepare
(
player
);
}
}
else
if
(
state
==
Player
.
STATE_ENDED
)
{
}
else
if
(
state
==
Player
.
STATE_ENDED
)
{
seekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
seekTo
(
player
,
player
.
getCurrentWindowIndex
(),
C
.
TIME_UNSET
);
}
}
...
...
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java
View file @
f7c4fd49
...
@@ -48,9 +48,7 @@ import androidx.annotation.RequiresApi;
...
@@ -48,9 +48,7 @@ import androidx.annotation.RequiresApi;
import
androidx.core.content.ContextCompat
;
import
androidx.core.content.ContextCompat
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.ControlDispatcher
;
import
com.google.android.exoplayer2.DefaultControlDispatcher
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.ExoPlaybackException
;
import
com.google.android.exoplayer2.PlaybackPreparer
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Player.DiscontinuityReason
;
import
com.google.android.exoplayer2.Timeline
;
import
com.google.android.exoplayer2.Timeline
;
...
@@ -931,21 +929,6 @@ public class StyledPlayerView extends FrameLayout implements AdViewProvider {
...
@@ -931,21 +929,6 @@ public class StyledPlayerView extends FrameLayout implements AdViewProvider {
}
}
/**
/**
* @deprecated Use {@link #setControlDispatcher(ControlDispatcher)} instead. The view calls {@link
* ControlDispatcher#dispatchPrepare(Player)} instead of {@link
* PlaybackPreparer#preparePlayback()}. The {@link DefaultControlDispatcher} that the view
* uses by default, calls {@link Player#prepare()}. If you wish to customize this behaviour,
* you can provide a custom implementation of {@link
* ControlDispatcher#dispatchPrepare(Player)}.
*/
@SuppressWarnings
(
"deprecation"
)
@Deprecated
public
void
setPlaybackPreparer
(
@Nullable
PlaybackPreparer
playbackPreparer
)
{
Assertions
.
checkStateNotNull
(
controller
);
controller
.
setPlaybackPreparer
(
playbackPreparer
);
}
/**
* Sets the {@link ControlDispatcher}.
* Sets the {@link ControlDispatcher}.
*
*
* @param controlDispatcher The {@link ControlDispatcher}.
* @param controlDispatcher The {@link ControlDispatcher}.
...
...
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