Merge pull request #1687 from X-Ryl669/FixCenterLyricPos

[web] Ensure current lyric is centered
This commit is contained in:
Alain Nussbaumer 2023-11-21 17:05:01 +01:00 committed by GitHub
commit 2f0e19cf41
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 45 additions and 41 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
@ -17,9 +17,10 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>OwnTone</title>
<script type="module" crossorigin src="./assets/index.js"></script>
<link rel="stylesheet" crossorigin href="./assets/index.css">
<link rel="stylesheet" href="./assets/index.css">
</head>
<body>
<div id="app"></div>
</body>
</html>

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />

View File

@ -165,12 +165,15 @@ export default {
return
}
let currentLyric = scrollTouch.children[0].children[this.lyricIndex],
let currentLyric = scrollTouch.children[0].children[this.lyricIndex + 1], // Because of space item
offsetToCenter = scrollTouch.offsetHeight >> 1
if (!this.lyricsArr || !currentLyric) return
let currOff = scrollTouch.scrollTop,
destOff = currentLyric.offsetTop - offsetToCenter
destOff =
currentLyric.offsetTop -
offsetToCenter +
(currentLyric.offsetHeight >> 1)
// Using scrollBy ensure that scrolling will happen
// even if the element is visible before scrolling
scrollTouch.scrollBy({

View File

@ -55,8 +55,6 @@ export default {
margin-bottom: 10px;
margin-left: 24px;
margin-right: 24px;
box-shadow:
0 4px 8px 0 rgba(0, 0, 0, 0.2),
0 6px 20px 0 rgba(0, 0, 0, 0.19);
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
</style>

View File

@ -21,9 +21,7 @@
color: $black;
}
.lyrics-overlay {
box-shadow:
0px 40px 40px 0px $white inset,
0px -40px 40px 0px $white inset;
box-shadow: 0px 40px 40px 0px $white inset, 0px -40px 40px 0px $white inset;
}
.progress-bar {
@ -80,9 +78,7 @@ a.navbar-item {
}
.fd-has-shadow img {
box-shadow:
0 4px 8px 0 rgba(0, 0, 0, 0.2),
0 6px 20px 0 rgba(0, 0, 0, 0.19);
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
.fd-page {