clementine-player / Clementine

:tangerine: Clementine Music Player
https://www.clementine-player.org/
GNU General Public License v3.0
3.75k stars 676 forks source link

Timeline is broken #6737

Open lUNuXl opened 4 years ago

lUNuXl commented 4 years ago

Before posting

Please follow the steps below and check the boxes with [x] once you did the step.

System information

Please provide information about your system and the version of Clementine used.

Expected behaviour / actual behaviour

Expected: Working timeline to go to a given place in the playing track

Actual behaviour: Incredibly broken timeline, instead of moving the "pointer" on the timeline itself, I'm moving the entire window like if I clicked on area where no widget is defined or if I were pressing meta (my modifier key I'm using to resize/move windows)

Steps to reproduce the problem (only for bugs)

Open a song Try to go to a chosen moment on the timeline.

Video: https://youtu.be/JVMuFNzVBps

jbroadus commented 4 years ago

I can repo this by setting the window behavior modifier key from "alt" to "meta". So I guess the widget is somehow injecting that key.

jbroadus commented 4 years ago

And now I can't repro, so I think that was a fluke.

kolAflash commented 4 years ago

Same problem on a Kubuntu-20.10-Beta LiveCD and a Debian-11-Testing/Beta system. Software: KDE/Plasma desktop and Clementine-1.4.0-rc1/rc2

Happens only when KDE/Plasma application style is set to Oxygen. systemsettings5 > Application Style > Application Style > Oxygen Doesn't happen if style is set to Breeze.

Problem appears at least since 65f0d660389bf31c0fb3c85fb5931abb4ef6f54f (November 2019). Problem only seems to appear when mouseover triggers the time-position popup.  

Reproduce with livecd:

  1. download http://cdimage.ubuntu.com/kubuntu/daily-live/current/groovy-desktop-amd64.iso (2020-07-19)
  2. run: qemu-system-x86_64 -m 4096 -machine pc,accel=kvm -smp 2 -vga std -display gtk -usb -device usb-tablet -cdrom groovy-desktop-amd64.iso
  3. choose "Try Kubuntu"
  4. systemsettings5 > change style
  5. sudo apt update; sudo apt install clementine
  6. download some audio file (e.g. https://ftp.openbsd.org/pub/OpenBSD/songs/song51.ogg)
  7. run clementine and test timeline

 

Workaround: Strawberry 0.6.13 seems to work fine. (Clementine fork) https://github.com/strawberrymusicplayer/strawberry/releases/tag/0.6.13

cefk commented 4 years ago

Same issue, here.

Data, that might be useful: OS: Manjaro Linux x86_64 Kernel: 5.4.52-1-MANJARO DE: Plasma WM: KWin WM Theme: Breeze Theme: Breath2 [Plasma], Breeze [GTK3] Icons: breath2 [Plasma], breath2 [GTK2/3] CPU: Intel i7-6700K (8) @ 4.200GHz GPU: NVIDIA GeForce GTX 1060 6GB Memory: 719MiB / 32060MiB

TL;DR I don't think, that the timeline/moodbar is at fault, for not receiving the clicks. But the tooltip, in front of it, is.

Words, I'll use to describe it: Playhead-position: The song-position, that is currently playing. Mouse-position: The song-position, that the mouse is currently hovering over in the timeline/moodbar.

My assumption: The tooltip, that shows the MM:SS of the mouse-position and also the +/-MM:SS of the difference between the mouse-position and the playhead-position is the problem.

As far as I can tell, that tooltip seems to be placing itself in a layer between the mouse-pointer and the timeline/moodbar. So every click is received by the tooltip, instead of by the timeline/moodbar. Therefore the song-position doesn't change.

Steps to see, why I came to that assumption:

  1. Place the mouse-pointer over the timeline (moodbar) until tooltip appears
  2. Click.
  3. Note, that the playhead-position didn't change as expected.
  4. Move mouse left/right above the timeline/moodbar and click (do both at the same time, as fast as you can).
  5. Now, sometimes, the tooltip will not have appeared at the mouse-position, yet. Then the click actually registers on the timeline/moodbar and changes the song-position.

I hope this helps.

lUNuXl commented 4 years ago

I can confirm that this bug does not exists on strawberry... I guess the only fix to this problem right now is just using the fork

lumip commented 3 years ago

I was able to reproduce this with the livecd following the steps lined out by @kolAflash . However, if I install the system from that same cd, the bug goes away and timeline scrolling works without problems for me for the version installed by apt and the current repo HEAD. I did allow the installer to apply updates during installation, so that might have solved it - however, checking the relevant packages (libqt, plasma, oxygen) from dpkg seems to show no change in version numbers. Not sure what causes this now. Is it even still a problem?

cefk commented 3 years ago

For me (using the latest KDE-Manjaro), the problem went away some weeks (or even months?) ago. There was a big KDE update, after which the bug didn't manifest itself on my machine, anymore. At least I think, it was after that update.

But I'm not sure, if the KDE-update had anything to do with it .. and not sure, if I remember that correctly, to be honest. I'm just mentioning this to give as many (possibly useful) datapoints, as I can. There has been a clementine-update, as well (I think it might even have been that same update).

Hope, this helps.