Skip to content
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

Marco with compositor disabled and Marco+Compton miss windows borders with some themes #533

Open
dimka-rs opened this issue Aug 4, 2019 · 17 comments

Comments

@dimka-rs
Copy link

dimka-rs commented Aug 4, 2019

Expected behaviour

Windows have borders and can be resized with mouse.

Actual behaviour

Window borders are missing with marco + compton, available with marco + compositing.
Screenshots of window (alt+prtscn) are attached.

compton screenshot shows empty/transparent area where compositing screenshot shows underlying windows.
compton
compositing

Steps to reproduce the behaviour

Upgrade 19.0 -> 19.1 -> 19.2

MATE general version

Host: dmk-mint Kernel: 4.15.0-55-generic x86_64 bits: 64 compiler: gcc v: 7.4.0
Desktop: MATE 1.22.0 wm: marco dm: LightDM Distro: Linux Mint 19.2 Tina
base: Ubuntu 18.04 bionic

Package version

Package: marco
Version: 1.22.2-1+tina

Linux Distribution

DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=19.2
DISTRIB_CODENAME=tina
DISTRIB_DESCRIPTION="Linux Mint 19.2 Tina"

Link to downstream report of your Distribution

@lukefromdc
Copy link
Member

This might be an issue in compton and not marco, I don't have compton installed (just marco and compiz-reloaded plus ICEWM and metacity available on my setup) and I have not had this happen. Note that the screenshot shows a known mate-screenshot bug
mate-desktop/mate-utils#236
in which screenshots include the new invisible resize area. That area is supposed to be usable to resize windows in themes that give a zero border-width. Wonder if that's not working with Compton, perhaps a communication issue with the compositor?

@dimka-rs dimka-rs changed the title Marko+Compton misses windows borders Marco+Compton misses windows borders Aug 6, 2019
@dimka-rs
Copy link
Author

dimka-rs commented Aug 6, 2019

@lukefromdc I've tried to use pure Marco, but the borders are still missing, only Marco+Compositing works. Then I've tried to change themes and seems like only Mint-Y/Mint-Y-Dark/Mint-Y-Darker are affected. So this is theme related. Where should I report it?

@lukefromdc
Copy link
Member

We do not control those themes, probably it's a problem with their metacity themes. Report it to Linuxmint's bugtracker.

@dimka-rs
Copy link
Author

dimka-rs commented Aug 6, 2019

Thank you!

@dimka-rs dimka-rs closed this as completed Aug 6, 2019
@monsta
Copy link
Contributor

monsta commented Aug 14, 2019

@lukefromdc: isn't mate-desktop/mate-themes#249 related to this...?

@dimka-rs
Copy link
Author

@monsta JFYI I've opened issue in mint-themes: linuxmint/mint-themes#224

@lukefromdc
Copy link
Member

That I do not know, I don't have the Mint themes installed, so I don't know what those themes are doing wrong.
#503 in marco master and
#518 in marco 1.22 fix that issue, in which decorations (window borders and titlebars) are shown but resizing windows is difficult if the theme sets a 1 or 2 px border and impossible if a theme sets a border width of zero. These commits do NOT change (or are not supposed to change) what is visibly rendered on screen, they just allow you to resize a window from outside the visible border in the shadow area if compositing(necessary to have a shadow area that does not render solid black) is in use.

@monsta
Copy link
Contributor

monsta commented Aug 15, 2019

Yes, the problem is that these fixes apparently don't work w/o Marco's compositing...
(using Compton as an "external compositor" doesn't help, as reported here)

@lukefromdc
Copy link
Member

lukefromdc commented Aug 15, 2019

Any way marco could (EDIT: be made to) explicity check for compton and then treat that as a compositing case? I've never used it (I have compiz here) but it's supposed to work with many window managers.

@vkareh
Copy link
Member

vkareh commented Aug 15, 2019

@lukefromdc - huh, never actually thought of that, but the compositor code is setup in a plugin-like architecture. Xrender is just the only plugin, but no reason why we couldn't add others... Good idea, will give it some thought :)

@monsta
Copy link
Contributor

monsta commented Aug 19, 2019

That still leaves one case where Marco is without any compositor at all...

@lukefromdc
Copy link
Member

How do those themes behave with marco set not to use compositing? BlackMATE (border width 1px) works fine and renders the borders, though it is very touchy aligning the mouse with those borders to resize (thus the BlackMATE-border variation that fixes that).

@monsta
Copy link
Contributor

monsta commented Aug 20, 2019

Same as reported here. No resize cursor is shown at all. Windows can be resized only via their titlebar. You can check it with Arc theme, for example.

@monsta
Copy link
Contributor

monsta commented Aug 20, 2019

I guess it started with metacity-theme-3 support addition.

@monsta
Copy link
Contributor

monsta commented Aug 20, 2019

Just tested with Metacity - apparently it adds 1px border to borderless (?) windows with Arc theme, so it's possible to resize them if I turn Metacity's compositor off.

@lukefromdc
Copy link
Member

OK, that makes it clear what is going on: those themes set a zero-width border, which with the noncompositing codepath in marco gives a zero px width the mouse must be aligned with, therefore no possible alignment. Finding metacity's commit to add 1px to borderless windows and applying it so it only is used when marco's internal compositing is not used would fix this, as would modifying the offending themes (were they meant for Cinnamon maybe?) to include a border.

@monsta
Copy link
Contributor

monsta commented Aug 22, 2019

I don't think Arc theme does that for Cinnamon; probably just a design decision. Anyway, we can't control all such themes out there, so we'll have to use a workaround. Either we do the same as Metacity, or try to load only metacity-theme-2 when compositor is off (no idea if it's technically possible though).

@monsta monsta reopened this Aug 22, 2019
@monsta monsta changed the title Marco+Compton misses windows borders Marco with compositor disabled and Marco+Compton miss windows borders with some themes Sep 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants