Scrollbars and boxes invisible in OpenBox

393 Views Asked by At

In my new install of Ubuntu 18.04, I added OpenBox as my window manager, with LXPanel. Most things work fine, but some graphical elements are missing:

Scrollbars - the grey strip where the scrollbar should be is visible, with tiny little (2px high?) buttons where the "scroll up" and "scroll down" arrows should be, but the actual bar itself is invisible. It's still there - I can still grab it and drag it and it works. This is true in Firefox and Geany, but PCManFM and GIMP look fine!

Boxes: the simple grey outlines around elements like radioboxes or textboxes are missing. This sometimes makes it very difficult to work out where to click!

Selecting text: sometimes selecting text has no visual effect - I can't tell it's selected! The URL bar in Firefox, for example. Sometimes selecting text in a Firefox webpage changes the text colour but doesn't change its background. Selecting works in Geany and Gnome Terminal.

Screenshot showing some desktop problems

In case it's relevant, I'm using twin monitors on an nVidia 1060, with the nVidia driver #396. Almost no other changes made to the stock desktop install.

Forgot to say - I tried installing IceWM, and was surprised to find (what looked like) exactly the same problems there.

Thanks in advance, I've been trying at this for weeks with no luck, and it's driving me mad!

1

There are 1 best solutions below

1
On

Another couple of weeks working on this, and I've narrowed down what the problem is. It's something to do with GTK.

Running GTK_THEME=Adwaita firefox runs a firefox which renders properly! So I think some apps want to use GTK, but it's somehow not set up right on my system? The apps which render correctly are presumably using the OpenBox theme.

Since I can't work out how to set GTK_THEME=Adwaita globally, my current solution is to have export PATH="GTK_THEME=Adwaita:$PATH" in my .bashrc. Horrible, but it works.

Just answering my own question here in case someone else ever has the same problem.