New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Full layout should set the EWMH fullscreen hint #337
Comments
Are you sure it's the EWMH hint that would make mpv not tear? In my setup, when I kill the compositor, I get some tearing when not maximized, and it's then sufficient to just maximize the mpv window for the tearing to stop. Can you point to some details, like code in mpv for example, that would support your claim? Thanks! |
Yes. If i just make mpv Full, it doesn't stop tearing, but if i set the hint by hitting |
Probably you have --fs in your mpv invocation or config? |
No, I don't. This is my mpv config: https://github.com/liskin/dotfiles/blob/16506279fbb6455721ea61f48e6fe307f93f045d/.config/mpv/config Do you use noBorders together with Full? The window needs to be exactly fullscreen, like what you get when you fullfloat it ( |
There's no way for Full to set the hint properly because Full is in
core but all the EWMH stuff is in contrib.
Tomáš is correct that you need to use NoBorders or SmartBorders to get
standard fullscreen to behave. Full isn't always full screen because
layout modifiers can apply to it, and the border modifications are all
layout modifiers, plus the standard border "steals" from the window
instead of being applied outside of it.
…On 5/9/20, Tomáš Janoušek ***@***.***> wrote:
No, I don't. This is my mpv config:
https://github.com/liskin/dotfiles/blob/16506279fbb6455721ea61f48e6fe307f93f045d/.config/mpv/config
Do you use noBorders together with Full? The window needs to be exactly
fullscreen, like what you get when you fullfloat it (`withFocused $ \w ->
windows $ W.float w (W.RationalRect 0 0 1 1)`) in a layout with smartBorders
or noBorders. Then it stops tearing here.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#337 (comment)
--
brandon s allbery kf8nh
allbery.b@gmail.com
|
What is the best way to have a fullscreen layout and apply the EWMH hint to the fullscreened windows then? |
Yes, i use SmartBorders, and it tears in Full if mpv is unaware it's being fullscreened. |
The thing is that mpv shouldn't even need to be aware of it. I can reproduce the same "not tearing when exactly fullscreen, tearing otherwise" behaviour using glxgears as well if I kill the compton compositor. It's a bit difficult to see it using glxgears so a game like neverball could be used, it's possible to switch between fullscreen and windowed. Can you perhaps check using xwininfo that the mpv window is indeed fullscreen without borders? Paste the output here just to be sure, pls. It's also possible that your setup is different in some other way. Mine is xorg-server 1.20.8, intel gpu with modesetting xorg driver, mesa 19.3.3. |
This is starting to sound suspiciously like yet another border bug in
the X11 video driver, sigh. Nobody tests with nonzero borders any more
because "nobody" uses them.
…--
brandon s allbery kf8nh
allbery.b@gmail.com
|
Huh, it's strange: if i don't enable --fs in mpv, the geometry in Full is different, adding an offset in Y:
|
Probably xmonad doesn't want to resize my window to 1920x1200 for some mpv-mediated reason, and you're lucky to have videos of the same aspect ratio as your monitor. |
Well that sounds like |
Oh yeah, it doesn't tear while in Full this way. |
So, back to the original issue: it's not the EWMH hint that needs to be set to avoid tearing in mpv. It's just that tha window needs to be actually maximized, and that can be done by having a |
Yeah, thanks a lot, though i don't see yet how to disable it just for Full in my great https://github.com/l29ah/xmonad-config/blob/master/xmonad.hs#L230 without explosive boilerplate |
So programs could behave accordingly, for instance mpv would enable forced vsync via EGL that would avoid video tearing.
The text was updated successfully, but these errors were encountered: