Skip to content

Commit bf95732

Browse files
committed
Fix loading spinner not covering scrollable content
1 parent ba581d0 commit bf95732

2 files changed

Lines changed: 26 additions & 5 deletions

File tree

frontend/src/components/Player.css

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,18 @@
6262
margin-bottom: 1rem;
6363
}
6464

65+
/* Recommendations drawer */
6566
& .player-recommendations {
6667
position: relative;
67-
padding: 1rem;
68+
overflow: hidden;
69+
70+
/* We need a way to overlay the loading spinner on top of scrollable content:
71+
make the parent non scrollable, and the content scrollable. */
72+
& .recommendations-content {
73+
overflow: auto;
74+
height: 100%;
75+
padding: 1rem;
76+
}
6877

6978
& .heading {
7079
color: white;

frontend/src/components/Player.tsx

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -283,10 +283,22 @@ export default function Player({ ref }: PlayerProps) {
283283
return (
284284
<div className="player-recommendations">
285285
{recState.isLoading && <LoadingSpinner />}
286-
<div className="heading">Up Next:</div>
287-
<TrackItem key={firstRec.mbid} track={firstRec} onPlay={() => {playTrack(firstRec)}} />
288-
<div className="heading">Other recommendations:</div>
289-
{otherRec.map(track => <TrackItem key={track.mbid} track={track} onPlay={() => {playTrack(track)}} disabled={recState.isLoading} />)}
286+
<div className="recommendations-content">
287+
<div className="heading">Up Next:</div>
288+
<TrackItem
289+
key={firstRec.mbid}
290+
track={firstRec}
291+
onPlay={() => { playTrack(firstRec) }}
292+
disabled={recState.isLoading} />
293+
<div className="heading">Other recommendations:</div>
294+
{otherRec.map(track =>
295+
<TrackItem
296+
key={track.mbid}
297+
track={track}
298+
onPlay={() => { playTrack(track) }}
299+
disabled={recState.isLoading} />
300+
)}
301+
</div>
290302
</div>
291303
);
292304
};

0 commit comments

Comments
 (0)