refactor: update progress control to use $progress element for event handling

This commit is contained in:
Harvey Zhao committed 2026-03-08 14:38:37 +08:00
1 parent 92f09a4290
commit 89a28e91fe
2 files changed
+10 -10

No files matched your search

+5 -5
View File
@@ -1199,7 +1199,7 @@ ${line.text}`;
function progress(options) { function progress(options) {
return (art) => { return (art) => {
const { icons, option, proxy } = art; const { icons, option, proxy } = art;
const { $player } = art.template; const { $player, $progress } = art.template;
return { return {
...options, ...options,
html: ` html: `
@@ -1313,19 +1313,19 @@ ${line.text}`;
} }
art.emit("setBar", "loaded", art.loaded || 0); art.emit("setBar", "loaded", art.loaded || 0);
if (!isMobile) { if (!isMobile) {
proxy($control, "click", (event) => { proxy($progress, "click", (event) => {
if (event.target !== $indicator) { if (event.target !== $indicator) {
setCurrentTime(art, event); setCurrentTime(art, event);
} }
}); });
proxy($control, "mousemove", (event) => { proxy($progress, "mousemove", (event) => {
const { percentage } = getPosFromEvent(art, event); const { percentage } = getPosFromEvent(art, event);
art.emit("setBar", "hover", percentage, event); art.emit("setBar", "hover", percentage, event);
}); });
proxy($control, "mouseleave", (event) => { proxy($progress, "mouseleave", (event) => {
art.emit("setBar", "hover", 0, event); art.emit("setBar", "hover", 0, event);
}); });
proxy($control, "mousedown", (event) => { proxy($progress, "mousedown", (event) => {
isDragging = event.button === 0; isDragging = event.button === 0;
}); });
art.on("document:mousemove", (event) => { art.on("document:mousemove", (event) => {
+5 -5
View File
@@ -28,7 +28,7 @@ export function setCurrentTime(art, event) {
export default function progress(options) { export default function progress(options) {
return (art) => { return (art) => {
const { icons, option, proxy } = art const { icons, option, proxy } = art
const { $player } = art.template const { $player, $progress } = art.template
return { return {
...options, ...options,
@@ -169,22 +169,22 @@ export default function progress(options) {
art.emit('setBar', 'loaded', art.loaded || 0) art.emit('setBar', 'loaded', art.loaded || 0)
if (!isMobile) { if (!isMobile) {
proxy($control, 'click', (event) => { proxy($progress, 'click', (event) => {
if (event.target !== $indicator) { if (event.target !== $indicator) {
setCurrentTime(art, event) setCurrentTime(art, event)
} }
}) })
proxy($control, 'mousemove', (event) => { proxy($progress, 'mousemove', (event) => {
const { percentage } = getPosFromEvent(art, event) const { percentage } = getPosFromEvent(art, event)
art.emit('setBar', 'hover', percentage, event) art.emit('setBar', 'hover', percentage, event)
}) })
proxy($control, 'mouseleave', (event) => { proxy($progress, 'mouseleave', (event) => {
art.emit('setBar', 'hover', 0, event) art.emit('setBar', 'hover', 0, event)
}) })
proxy($control, 'mousedown', (event) => { proxy($progress, 'mousedown', (event) => {
isDragging = event.button === 0 isDragging = event.button === 0
}) })