make layout work for opaque background