>>>> Looks nice! BTW, how could I apply a mouse-face to the buttons in the >>>> tab-bar? I poked around and mouse-face doesn’t seem to take an effect? >>> >>> Currently mouse-face is not supported neither by define-icon not by tab-bar. >> >> Ah, I see. How are the buttons implemented then? If I move my >> pointer on top of it, it shows the “pressed” face. I’m trying to >> style the buttons on the tab-bar. > > Mouse pointer hovering is handled in 'note_tab_bar_highlight' by using > DRAW_IMAGE_SUNKEN. But you could try to style the image attributes > such as :margin and :ascent in define-icon. The tab line has a different implementation - with own problems. Currently when the icon from tabs/close.xpm is used, then hovering the mouse pointer changes the background of this image to the background color of mouse-face. But when the new image symbols/cross_16.svg is used, then on hovering the original background color is preserved in the svg image, not replaced with the background color of mouse-face. I have no idea why there is such idiosyncrasy for svg images with transparent background. If this is not an important detail then below is a patch that adds the new svg images to the tab line as well. Another problem is that by default the foreground of new svg images is black. To tone down the black color, add-face-text-property was added to tab-bar-tab-name-format-default to use the shadow face in the previous patch. The same way to support grayed color for icons on the tab line the following patch uses add-face-text-property in tab-line-tab-name-format-default. The third problem was that using 'define-icon' broke the tab-line auto-scrolling feature, because for some reason 'define-icon' sets 'rear-nonsticky' to t. So the fix below is to override it and set 'rear-nonsticky' to nil.