@Chris
I dig in into bugzilla, and found my BZ (which i discuss with Simon before doing so), #8348. There is full text of BZ:
Title:
default image for close gadget and create a way to get that image without the titlebar gradient
Body:
Currently to make our tabs to have close gadget we have a tag to active it, but
gadget itself is limited: there is no default image (simply because one doesn't
exist in the system), so need to create one (and maybe the one from
codebench/codepad can be used already as system's default?) and that close
gadget which we have now , just rendered with the titlebar gradient behind when
called for by intuition, so it isn't much good in the clicktab. So we also need
to create a way to get that new image without the titlebar gradient as close
gadget. By that way, any programs like browsers, text-editors, tabbed viewers
and even our console can use it without creating of custom code for providing
different close-gadget images, and without worry about their sizes via
preferences or so. Pure 2 states (pressed/unpressed) are fine, but of course
better to have 3 states: unpressed, pressed and darken when mouse cursor over
it.
Sure, Tony still can deal with close gadget even without implementing that, just like in codebench/codepad (and netsurf i assume) , but imho better to made firstly system-friendly way which can handle all cases, and then Tony can add it to shell as well if will have time/interest for.
@Tony
With so many ways to do it, I don't see much to be gained by adding another few pages of code to do the same thing.
Do you mean "there is no needs to have close gadget in active tabs at all as you can use keyboard to close them ?":) . By the same logic, then no apps should have close gadgets, not text editors , not browsers, nothing. The purpose of having close gadget in the tabs (of any application, be it shell, text editor or whatever), is to have much better visuall feadback to user who operate with your app. User have no needs to know anything about other ways, he just visually see the there is close gadget which he can press and tab will be closed. If there any other ways to close tabs : good. But close gadget today is the first way in any decent app which have tabs (that on all OSes, and on amigaos4 too, like in codebench, codepad, owb/odyssey, timberwolf, annotate and whatever).
And in end it not only better for usability, it also have better look. I mean, close gadget in tabs are must

Another story that is not you who should make all that custom code to handle all the states, but class should provide it (for what reason i made BZ year ago). But probably if you will want to implement close gadget in the shell, somebody will update relevant class in the os
