Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion css/viewer-init.css
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* extracted by css-entry-points-plugin */
@import './init-CLCzuaDD.chunk.css';
@import './init-0pI2hysY.chunk.css';
@import './previewUtils-DsspQ6dL.chunk.css';
@import './NcIconSvgWrapper-Bui9PhAS-3xIBDiQU.chunk.css';
@import './NcActionButton-Dc3ra1Np.chunk.css';
Expand Down
2 changes: 1 addition & 1 deletion js/viewer-init.mjs

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion js/viewer-init.mjs.map

Large diffs are not rendered by default.

14 changes: 14 additions & 0 deletions src/components/Audios.vue
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,20 @@ audio {
@import '../mixins/Plyr';
}

// The settings menu (e.g. speed selection) is absolutely positioned and
// opens upward from the controls. On short viewports its full height does
// not fit and options get clipped off-screen. Cap its height to the
// available viewport space and let it scroll internally so no option is
// ever clipped, regardless of where the centered player sits.
.plyr__menu__container {
// The player is vertically centered, so the controls bar sits at
// ~50vh and the menu opens upward into the top half of the viewport.
// Cap to that available space (half the viewport, minus half the
// controls bar and a top margin) so options never clip off-screen.
max-height: calc(40vh - var(--plyr-button-size, 44px) / 2 - 20px);
overflow-y: auto;
}

// make it a bit off-center in order to fix mobile controls
@media only screen and (max-width: 500px) {
.plyr--audio {
Expand Down
Loading