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
50a11886
authored
Feb 25, 2021
by
TadejZupancic
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
The popup window now opens above or below the button which caused it to open.
parent
331a444e
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
17 additions
and
10 deletions
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java
View file @
50a11886
...
...
@@ -1484,7 +1484,7 @@ public class StyledPlayerControlView extends FrameLayout {
settingsWindow
.
setHeight
(
height
);
}
private
void
displaySettingsWindow
(
RecyclerView
.
Adapter
<?>
adapter
)
{
private
void
displaySettingsWindow
(
RecyclerView
.
Adapter
<?>
adapter
,
View
anchor
)
{
settingsView
.
setAdapter
(
adapter
);
updateSettingsWindowSize
();
...
...
@@ -1493,10 +1493,14 @@ public class StyledPlayerControlView extends FrameLayout {
settingsWindow
.
dismiss
();
needToHideBars
=
true
;
int
xoff
=
getWidth
()
-
settingsWindow
.
getWidth
()
-
settingsWindowMargin
;
int
yoff
=
-
settingsWindow
.
getHeight
()
-
settingsWindowMargin
;
int
xoff
=
0
;
int
yoff
=
-
anchor
.
getHeight
()
-
settingsWindow
.
getHeight
()
-
settingsWindowMargin
;
settingsWindow
.
showAsDropDown
(
this
,
xoff
,
yoff
);
settingsWindow
.
showAsDropDown
(
anchor
,
xoff
,
yoff
);
if
(!
settingsWindow
.
isAboveAnchor
())
{
// move window to the bottom side of the anchor
settingsWindow
.
update
(
anchor
,
xoff
,
settingsWindowMargin
,
settingsWindow
.
getWidth
(),
settingsWindow
.
getHeight
());
}
}
private
void
setPlaybackSpeed
(
float
speed
)
{
...
...
@@ -1585,10 +1589,10 @@ public class StyledPlayerControlView extends FrameLayout {
if
(
position
==
SETTINGS_PLAYBACK_SPEED_POSITION
)
{
subSettingsAdapter
.
init
(
playbackSpeedTexts
,
selectedPlaybackSpeedIndex
);
selectedMainSettingsPosition
=
SETTINGS_PLAYBACK_SPEED_POSITION
;
displaySettingsWindow
(
subSettingsAdapter
);
displaySettingsWindow
(
subSettingsAdapter
,
settingsButton
);
}
else
if
(
position
==
SETTINGS_AUDIO_TRACK_SELECTION_POSITION
)
{
selectedMainSettingsPosition
=
SETTINGS_AUDIO_TRACK_SELECTION_POSITION
;
displaySettingsWindow
(
audioTrackSelectionAdapter
);
displaySettingsWindow
(
audioTrackSelectionAdapter
,
settingsButton
);
}
else
{
settingsWindow
.
dismiss
();
}
...
...
@@ -1888,16 +1892,19 @@ public class StyledPlayerControlView extends FrameLayout {
controlDispatcher
.
dispatchSetShuffleModeEnabled
(
player
,
!
player
.
getShuffleModeEnabled
());
}
else
if
(
settingsButton
==
view
)
{
controlViewLayoutManager
.
removeHideCallbacks
();
displaySettingsWindow
(
settingsAdapter
);
displaySettingsWindow
(
settingsAdapter
,
settingsButton
);
}
else
if
(
playbackSpeedButton
==
view
)
{
controlViewLayoutManager
.
removeHideCallbacks
();
onSettingViewClicked
(
SETTINGS_PLAYBACK_SPEED_POSITION
);
subSettingsAdapter
.
init
(
playbackSpeedTexts
,
selectedPlaybackSpeedIndex
);
selectedMainSettingsPosition
=
SETTINGS_PLAYBACK_SPEED_POSITION
;
displaySettingsWindow
(
subSettingsAdapter
,
playbackSpeedButton
);
}
else
if
(
audioTrackButton
==
view
)
{
controlViewLayoutManager
.
removeHideCallbacks
();
onSettingViewClicked
(
SETTINGS_AUDIO_TRACK_SELECTION_POSITION
);
selectedMainSettingsPosition
=
SETTINGS_AUDIO_TRACK_SELECTION_POSITION
;
displaySettingsWindow
(
audioTrackSelectionAdapter
,
audioTrackButton
);
}
else
if
(
subtitleButton
==
view
)
{
controlViewLayoutManager
.
removeHideCallbacks
();
displaySettingsWindow
(
textTrackSelectionAdapter
);
displaySettingsWindow
(
textTrackSelectionAdapter
,
subtitleButton
);
}
}
}
...
...
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