Hi Eli,
let's see if a couple of lines of code explain more than a thousand lines of 'literature'
I use :box to make some parts of the GUI bigger than one display line. For example my mode-line face is
'(mode-line ((t (:background "#4C566A" :foreground "#88C0D0" :weight bold :box (:line-width 6 :color "#4C566A")))))
and yes, OK, at the beginning, I could accept to repeat the background definition inside the :box, however inconvenient it may be.
Now, I have some some situations where I want to have a common look and feel:
'(fringe ((,class (:foreground "#007fcf" :background "#afaf9f"))))
'(line-number ((,class (:inherit fringe))))
But when I want an element to be higher that the normal size, I need to repeat the background definition in the :box
`(tab-line ((,class (:inherit fringe :box (:line-width 3 :color "#afaf9f")))))
Which means that when I change the fringe background, I need to change it both in fringe and in tab-line to keep everything uniform.
You pointed out :style t but that uses the _fore_ground for the box, whereas I need the _back_ground (same happens with :style nil)
This is why I was proposing a new :style modern that fills the box with the background color of the face. How feasible would be my proposal?
Best, /PA