You are not logged in.

#1 2017-12-26 07:56:46

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

[SOLVED] Black surface drawn on outward-facing sides of compiz cube

I updated some desktop packages today:
Screenshot_from_2017-12-26_16-36-51.png

Tried to disable all of these:
org.gnome.settings-daemon.plugins.background active false (have black background drawn either way)
org.gnome.desktop.background draw-background false (setting is listed as "deprecated and ignored")
org.gnome.desktop.background show-desktop-icons false (because nautilus)

Tried with and without gnome-fallback-background-helper: with allows me to control the color and image (via dconf-editor or another frontend), without the desktop is still drawn but in default black.

gnome-control-center is broken, only shows "Devices" in the window title and won't go anywhere or do anything otherwise (not actually worried about  that, don't really need it much anymore, don't think its breakage is a related issue).
switchboard shows that no image is selected; setting the color only works with gnome-fallback-background-helper (this is what i expect).

This is a problem for me because I use a transparent compiz cube for multitasking and it blocks my view of the other sides across the cube; a niche case I know, but there must be something that can be done.

Edit: The recipe, as I remember it, went like this:
1. Enable the gnome-setttings-daemon background plugin, as the background would be drawn default black without it.
2. Enable gnome-fall-back-background-helper (xdg autostart) for the same reason.
3. Disable both draw-background and show-desktop-icons dconf keys, as the background would still draw if show-desktop-icons were left enabled (which also results in a default black background, but one that responds to gnome-settings-daemon and can be overlayed by compiz's Wallpaper plugin).

4. Enable the Wallpaper plugin in compiz, setting a wallpaper with no image and both colors at 0 opacity (by this the desktop would become transparent).
5. Set the Desktop Cube's "Transparent Cube" settings to 0.0000 for both "Opacity During Rotation" and "Non Rotating Opacity"; Disable "Transparency Only on Mouse Rotate"

It's always been complicated, and this isn't the first time I've had a case of the background stubbornly being drawn although apparently nothing is responsible for it. There are several tools available for setting the xorg background; but nothing seems to be out there for unsetting it. Is there a way I could prevent anything from drawing a background, generally?

EDIT: The black came back. After an update that seemed innocent enough, I narrowed it down to ABI breakage; a dependency of something currently installed and not yet updated had changed its soname, so that the dependant couldn't find it.

The depedant in this case was gnome-settings-daemon-compat (responsible for drawing the background), and the soname changed remains a mystery, possibly gio, possibly gnome-desktop.

EDIT agian: I have to confirm that as I originally suspected there is something insidious going on with elementary-default-settings-git. Despite having fixed the abi problem with gnome-settings-daemon-compat, and even patched out it's "unconditionally draw background" feature, intalling elementary-default-settings-git draws the pantheon background and default black surfaces on the outward facing sides of the cube (the black surfaces become visible if "draw background" is disabled in dconf)--it's really, really annoying. If gnome-settings-daemon-compat is not suffering from abi breakage, removing elementary-default-settings-git restores transparency.

Conclusion: My original situation must have been an upgrade that included new versions of some dependency of gnome-settings-daemon-compat (probably gnome-session), and elementary-default-settings-git. It is necessary to fix both to restore cube transparency (remove elementary-default-settings-git and rebuild gnome-settings-daemon-compat). I'll have to create a replacement package for the pantheon defaults to provide whichever are safe for derivative desktops.

Last edited by quequotion (2018-04-18 10:48:27)

Offline

#2 2017-12-26 12:46:14

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 24,430
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Xorg doesn't draw any backgrounds.  You may want to revise your title to specify gnome, or pantheon, or compiz, or whatever you are using that actually manages the desktop windows.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2017-12-26 13:19:18

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Trilby wrote:

specify gnome, or pantheon, or compiz

A little of all three, which is why I'm looking for a more general solution--if there is such a thing.
I've edited the first post with more detail (initial post was made on my way out to work with quite a lot of frustration).

With gnome-fallback-background-helper running, I can control the color or image used, which makes me suspect that gnome-settings-daemon is doing the drawing, but the background is still drawn in default black with both disabled (even with their xdg startups disabled).

I usually edit the settings in dconf-editor; Pantheon's Switchboard is a more elaborate dconf front-end. I don't think Pantheon have their own means of drawing the desktop, but rely on gnome-settings-daemon. I don't use their window manager / compositor, gala.

Compiz provides a Wallpaper plugin that doesn't draw desktops the same way gnome-settings-daemon, etc, do, but something more like overlaying the desktop with another visual--it doesn't actually change what's drawn in the root window.

Things seem to be working differently today than they did yesterday and I cannot account for that. An update resulted in a desktop being drawn, but removing the updated packages does not result in the desktop not being drawn. I cannot find anything that would cause this. I also updated pantheon-workarounds, pantheon-dpms-helper-git, various indicators and--after noticing the desktop being drawn--various switchboard plugins. I didn't update compiz or gnome-settings-daemon-elementary.

EDIT: I needed to update gnome-settings-daemon-compat

Last edited by quequotion (2018-04-07 01:49:32)

Offline

#4 2017-12-26 14:09:16

seth
Member
Registered: 2012-09-03
Posts: 16,583

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

This isn't exactly the cube more more like some carousel and whatever window may or not be there, it should probably not be depicted in that angular shape at all, should it?
=> Smells more like a rendering bug, try the actual cube and how things look there.

Offline

#5 2017-12-26 17:33:56

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

seth wrote:

This isn't exactly the cube more more like some carousel and whatever window may or not be there, it should probably not be depicted in that angular shape at all, should it?

The shape you see is the compiz cube with spherical deformation (the way I set it up), but inside there is another cube which is black on four sides (actually only on the outward-facing sides). This is compiz's rendition of the root window; I have seen this behavior before. Usually it is possible to get back to a fully transparent cube by fiddling with the settings mentioned in the first post; this time I have been unable to find any combination them that does  away with the background.

=> Smells more like a rendering bug, try the actual cube and how things look there.

I've been over most of the settings in ccsm; clean-chroot rebuilt and reinstalled compiz twice. It looks like a rendering bug, but it is consistent across reboots. This appears to be set somewhere, somehow.

EDIT: Then again, Desktop Wall renders with a background appropriately set by the compiz Wallpaper plugin. Odd that this would affect only the cube, even more odd that the effect would be consistent across reboots before any changes to compiz configuration were made, also odd that changes to packages that have nothing to do with glx, etc should cause a rendering bug in compiz, and yet more odd that nothing changes the situation (always comes back with the cube; doesn't seem to be affected by changing anything that should affect it).

Edit again: If you read this rant, you might be happy to know I figured out how this was "set" and what could make the blackness consistent regardless of the version of compiz installed or how it was configured--the gnome-fallback-background-helper from gnome-settings-daemon-compat was looking for a missing library; still don't know which library. In addition, pantheon-default-settings-git somehow, independently causes the same issue.

Here's another screenshot, with an actual background (pantheon's default); this is what greeted me the first time I logged in today after updating pantheon-default-settings-git. Note how the cube is transparent from the inside--the background is drawn on the outward-facing sides of the cube.
Screenshot_from_2017-12-27_02-21-39.png

Last edited by quequotion (2018-04-18 10:51:24)

Offline

#6 2017-12-26 21:25:54

seth
Member
Registered: 2012-09-03
Posts: 16,583

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Ok, recap: the rectangular box is from what you set as compiz wallpaper and if you set no compiz wallpaper, you get a black box?
Tried setting a transparent png as background image?

"black" is also the equivalent of "invalid texture"

If this is instead the root window, compiz could either ignore it or not, but there's no way to make the root window transparent - at least I don't think there's any way to get a 32bit root window and the Display Depth key cannot be 32 for sure.

Offline

#7 2017-12-26 23:08:44

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

seth wrote:

Ok, recap: the rectangular box is

No, the rectangular box should not exist and neither should the wallpaper. This appeared after installing pantheon-default-settings-git; the package set the background, which I did not expect it to do (it shouldn't be overriding the settings of an existing user).

EDIT: I should say I did re-set it myself to get that picture. I've set, reset, and unset those dconf keys a dozen times in the last 24 hours.

if you set no compiz wallpaper, you get a black box?

Hopefully my memory is correct on this one, but yeah, something like that. Without using the compiz Wallpaper plugin, the cube will always have some kind of opaque surface--usually with a color and texture set by something like gnome-settings-daemon. In the case nothing set the texture, this would be black. One thing I do not recall clearly is if this appeared when gnome-settings-daemon's background plugin was disabled--I believe it did.

EDIT: There are settings for the cube itself to be transparent, separately for during rotation and while at rest, both of which I have maintained at 0.0000 opacity. In theory this should also make the cube transparent and at one time it may have worked even without the Wallpaper plugin to overlay the default, black desktop. It has not worked that way for some time as I recall.

Tried setting a transparent png as background image?

Yes, with hsetroot, xsetroot, and gnome-settings-daemon (set by dconf). It leaves the surface black and opaque.

there's no way to make the root window transparent

I believe you are correct about this; even if nothing ever set a background on the root window it should be black. Until yesterday, it was possible to make such a desktop transparent with compiz. It was either transparent by virtue of having no color defined (something compiz also composits as transparent) or forced that way with the Wallpaper plugin (the case, I believe, when the desktop was managed by gnome-settings-daemon's background plugin with "draw-desktop" and "show-desktop-icons" disabled).

It may be a moot point, but as an example of "transparent by virtue of having no color defined", several of the Pantheon components do things like draw an empty full-screen rectangle when they are mapped or focused (wingpanel, application-launcher, indicators). Without a compositor (eg, in openbox without xcompmgr or compton) these rectangles are black and opaque; with a compositor they are invisible.

Last edited by quequotion (2017-12-26 23:17:18)

Offline

#8 2017-12-26 23:16:59

progandy
Member
Registered: 2012-05-17
Posts: 3,890

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

What does happen if you try to set opacity to 1% or 0.1%?


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#9 2017-12-26 23:36:11

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

progandy wrote:

What does happen if you try to set opacity to 1% or 0.1%?

Screenshot_from_2017-12-27_08-18-23.png
It looks like this from 0.0001 to 99.4999.

Note that a black rectangle can be seen only on the side facing the user, and that the other three sides are transparent. The black background is drawn only on the outward-facing surfaces. It's a one-way mirror, the inward-facing surfaces are transparent.

At 99.5000, the actual surface of the cube (distorted into a sphere in this case) becomes opaque:
Screenshot_from_2017-12-27_08-26-20.png
I believe cube transparency is actually working. The rectangular black surfaces are not the surface of compiz's cube. The cube appears to have two surfaces, one of which is being drawn on by something else. I suspect they represent the root window.

I have tried disabling the Cube Reflection and Deformation plugin, but the rectangular cube still has the opaque background despite transparent cube settings and transparent wallpaper set by the Wallpaper plugin. It does not seem that anything can be achieved by changing settings in compiz.

Last edited by quequotion (2018-04-07 01:46:45)

Offline

#10 2017-12-27 00:02:56

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 24,430
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

quequotion wrote:

I suspect they represent the root window.

No, they are most likely desktop windows, which is why I asked about this earlier.  There is only one root window and it doesn't get moved, resized, or composited.  There can be many desktop windows - frequently one for each virtual desktop (though this depends on the desktop manager).  These can be composited and are likely what you are seeing.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#11 2017-12-27 00:35:13

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Trilby wrote:

There is only one root window and it doesn't get moved, resized, or composited.  There can be many desktop windows - frequently one for each virtual desktop (though this depends on the desktop manager).  These can be composited and are likely what you are seeing.

I did not say they are the root window, but that they represent the root window. These black surfaces are what compiz thinks it should be doing with what it found in the root window when it initiated. Technically speaking compiz viewports are not virtual desktops, there should only be one virtual desktop existing while compiz is running and everything else is glx fakery drawn on top of that, which is drawn on top of the root window.

How could I find out of anything is attempting to draw an extra desktop window? xwininfo thinks the empty space between windows in compiz is the root window, probably because compiz lets the click go through to it if it isn't intercepted by any window.

Last edited by quequotion (2017-12-27 00:39:36)

Offline

#12 2017-12-27 01:29:20

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Trilby wrote:

You may want to revise your title to specify gnome, or pantheon, or compiz, or whatever you are using that actually manages the desktop windows.

I'm not able to determine that this is caused by compiz, but it doesn't seem like it can be fixed anywhere else, so I've filed a bug on launchpad and retitled the thread to match it.

Neither compiz, which renders the desktop and manages the windows, nor gnome-settings-daemon-elementary, which manages the root window's background, were involved in the update that caused this. No changes to the packages that were undo what was done.

Last edited by quequotion (2017-12-27 01:54:55)

Offline

#13 2017-12-27 09:40:02

seth
Member
Registered: 2012-09-03
Posts: 16,583

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

I meant to set a transparent png as wallpaper to compiz, not on the root window (that cannot work because the alpha channel doesn't make it there)

Offline

#14 2017-12-27 11:48:02

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

seth wrote:

I meant to set a transparent png as wallpaper to compiz, not on the root window (that cannot work because the alpha channel doesn't make it there)

Unfortunately, it doesn't work either sad

Last edited by quequotion (2017-12-27 14:37:14)

Offline

#15 2018-01-08 21:30:10

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

Also affecting compiz-core:
Screenshot_from_2018-01-09_06-26-31.png

Exactly the same behavior. The outside of the cube is coated in something black and opaque while the inside is transparent--like a one way mirror--so windows can bee seen from behind only if looking over the top or under the bottom of the cube.

Offline

#16 2018-01-10 06:39:11

quequotion
Member
From: Oita, Japan
Registered: 2013-07-29
Posts: 761
Website

Re: [SOLVED] Black surface drawn on outward-facing sides of compiz cube

After four days and three sleepless nights of trying any and every possible hack, workaround, solution, by-the-book wiki recommendation, and screaming at it, my entire arch installation collapsed; systemd needed three or four reboots to get to lightdm; lightdm started freezing at random; even if i got through lightdm xorg would freeze at random in any session; even pacman and yaourt started behaving strangely.

So I've formatted and reinstalled--a good experience really, despite the traumatizing inconvenience. Improvements will be made to pantheon-bzr-qq packaging once things are fully running. At least the cube is transparent once more.

Screenshot_from_2018-01-10_15-27-59.png
Note: gnome-screenshot is taking pictures in the wrong size and adding some junk on the right for reasons I can only speculate (lacking many common packages at the moment); the desktop doesn't look at all glitched any more.

Alas, my second Archlinux installation only lasted about three years. Third time's a charm?

Last edited by quequotion (2018-04-07 01:45:06)

Offline

Board footer

Powered by FluxBB