After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 768039 - qmmp player window trembles when dragged
qmmp player window trembles when dragged
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: wayland
3.20.x
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2016-06-25 18:10 UTC by Strangiato
Modified: 2016-10-14 16:10 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
bug demonstration (1.10 MB, video/webm)
2016-06-25 18:10 UTC, Strangiato
  Details
wayland-surface: Make get_relative_coordinates() accurate for X apps (2.43 KB, patch)
2016-07-14 12:57 UTC, Rui Matos
committed Details | Review
wayland/touch: Use surface relative coordinate helper (1.49 KB, patch)
2016-09-23 06:12 UTC, Jonas Ådahl
committed Details | Review

Description Strangiato 2016-06-25 18:10:02 UTC
Created attachment 330368 [details]
bug demonstration

Watch the video please.
This behavior does not happen under x11 session.
Comment 1 Rui Matos 2016-07-14 12:57:51 UTC
Created attachment 331492 [details] [review]
wayland-surface: Make get_relative_coordinates() accurate for X apps

Using clutter API to transform coordinates is only accurate right
after a clutter layout pass but this function is used e.g. to deliver
pointer motion events which can happen at any time. This isn't a
problem for wayland clients since they don't control their position,
but X clients do and we'd be sending outdated coordinates if a client
is moving a window in response to motion events.
Comment 2 Jonas Ådahl 2016-07-14 13:00:47 UTC
Review of attachment 331492 [details] [review]:

Looks good to me.
Comment 3 Rui Matos 2016-07-15 12:29:26 UTC
Attachment 331492 [details] pushed as b281f95 - wayland-surface: Make get_relative_coordinates() accurate for X apps
Comment 4 Strangiato 2016-09-22 23:41:44 UTC
This behavior is still happening under Wayland when I drag Audacious and qmmp player using touchscreen. No problem if I drag the players using touchpad or mouse.
Comment 5 Jonas Ådahl 2016-09-23 06:00:28 UTC
How do you move qmmp using touch? I tried to move it, but it doesn't move at all. Either way, I suppose the issue would be solved by using meta_wayland_surface_get_relative_coordinates() in meta-wayland-touch.c.
Comment 6 Jonas Ådahl 2016-09-23 06:12:03 UTC
Created attachment 336141 [details] [review]
wayland/touch: Use surface relative coordinate helper

Use the global to surface local coordinate converter helper, as that
will currently convert coordinates for Xwayland client more correctly.

---

I can't reproduce the issue (qmmp doesn't move when I touch-drag) so consider this patch untested.

Side notes:

We do these type of transformation in a few other places (drag-n-drop, tablets) will will have the same issues.

When we start transforming Xwayland windows (assuming we succeed in doing that with a reasonable success rate) this solution will stop working.
Comment 7 Strangiato 2016-09-23 06:22:03 UTC
(In reply to Jonas Ådahl from comment #5)
> How do you move qmmp using touch? I tried to move it, but it doesn't move at
> all. 
I touch title bar and move the main window. Here is a video recorded on Gnome 3.22 installed on Arch from gnome unstable repository.
https://www.youtube.com/watch?v=8_if_lrwCrg&feature=youtu.be
Comment 8 Rui Matos 2016-09-29 14:58:09 UTC
Review of attachment 336141 [details] [review]:

looks fine
Comment 9 Jonas Ådahl 2016-10-14 16:10:26 UTC
Attachment 336141 [details] pushed as 0dfb5d3 - wayland/touch: Use surface relative coordinate helper