Bug 421232 - [Wayland] Fullscreen in mpv cannot be enabled by double-clicking
Summary: [Wayland] Fullscreen in mpv cannot be enabled by double-clicking
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: wayland-generic (show other bugs)
Version: 5.18.4
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: wayland
Depends on:
Blocks:
 
Reported: 2020-05-09 17:28 UTC by magiblot
Modified: 2020-07-07 13:30 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.20.0
vlad.zahorodnii: Wayland+
vlad.zahorodnii: X11-


Attachments
Link to video showing the issue (66 bytes, text/plain)
2020-05-09 17:28 UTC, magiblot
Details
Output of mpv with WAYLAND_DEBUG=1 (504.65 KB, text/plain)
2020-05-09 17:32 UTC, magiblot
Details
Output of mpv with WAYLAND_DEBUG=1 on GNOME (597.89 KB, text/x-log)
2020-05-09 17:39 UTC, magiblot
Details
Output of mpv with WAYLAND_DEBUG=1 on weston (279.31 KB, text/x-log)
2020-05-09 17:43 UTC, magiblot
Details

Note You need to log in before you can comment on or make changes to this bug.
Description magiblot 2020-05-09 17:28:33 UTC
Created attachment 128300 [details]
Link to video showing the issue

SUMMARY

Note: mpv is also affected by bug 421132 and bug 413105, but the issue I'm describing here is a different one.

When using mpv as a native Wayland client, double-clicking on it won't enable the fullscreen mode. Instead, the window blurs as if I was dragging it or it loses its decorations.

The issue can be reproduced every time.

I cannot reproduce this on GNOME or weston. mpv maintainers advised me to report it as a Kwin bug.

SOFTWARE/OS VERSIONS

Operating System: Arch Linux 
KDE Plasma Version: 5.18.5
KDE Frameworks Version: 5.69.0
Qt Version: 5.14.2
Kernel Version: 5.6.11-arch1-1
OS Type: 64-bit
Comment 1 magiblot 2020-05-09 17:32:11 UTC
Created attachment 128301 [details]
Output of mpv with WAYLAND_DEBUG=1
Comment 2 magiblot 2020-05-09 17:39:09 UTC
Created attachment 128302 [details]
Output of mpv with WAYLAND_DEBUG=1 on GNOME

On GNOME, the first click also causes the drag cursor to be shown but the second one enables fullscreen mode.
Comment 3 magiblot 2020-05-09 17:43:00 UTC
Created attachment 128303 [details]
Output of mpv with WAYLAND_DEBUG=1 on weston

Those logs are with gnome-session 3.36.0 and weston 8.0.0
Comment 4 magiblot 2020-05-10 14:15:55 UTC
It is easier to understand if you place mpv's window at the top left corner of the screen. What seems to happen (judging from what I see, without having read the logs) is:

1. Double click into mpv
2. mpv does get in fullscreen mode
3. Immediately after that, mpv's area is resized to the initial window size.
4. But mpv is still in fullscreen mode (so says the Alt+F3 menu, and it is also not possible to drag the window even if holding the Alt key).

Additionally, there are times when double-click doesn't trigger the fullscreen mode.

When pressing key 'f', mpv gets into fullscreen mode as expected.
Comment 5 David Edmundson 2020-05-10 16:08:08 UTC
From the kwin log.

[951406.429]  -> xdg_toplevel@14.set_fullscreen(nil)
[951406.573] xdg_toplevel@14.configure(0, 0, array)

That's a super weird thing for us to send.
Comment 6 Bug Janitor Service 2020-06-30 06:43:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/93
Comment 7 Benjamin Port 2020-06-30 14:03:03 UTC
Git commit 687ef97875761db0f64dcc76bb1761060a26812e by Benjamin Port.
Committed on 29/06/2020 at 07:03.
Pushed by bport into branch 'fullscreen_moving'.

Prevent move/resize event when handling set full screen event

M  +32   -0    autotests/integration/move_resize_window_test.cpp
M  +1    -0    xdgshellclient.cpp

https://invent.kde.org/plasma/kwin/commit/687ef97875761db0f64dcc76bb1761060a26812e
Comment 8 Benjamin Port 2020-07-07 08:37:20 UTC
Git commit 2d13bc3aa8e6943fc169ab71310ee1ecc680a14b by Benjamin Port.
Committed on 07/07/2020 at 08:35.
Pushed by bport into branch 'master'.

Prevent move/resize event when handling set full screen event

M  +32   -0    autotests/integration/move_resize_window_test.cpp
M  +1    -0    xdgshellclient.cpp

https://invent.kde.org/plasma/kwin/commit/2d13bc3aa8e6943fc169ab71310ee1ecc680a14b