Subject: bug#41200: Displaying a tooltip with x-show-tip gets very slow as more faces are defined

From: Juri Linkov <[email-masked]>
Date: Mon, 08 Jun 2020 03:21:58 +0300

>> >>> +  :group 'basic-faces)
>> >>> +  :group 'basic-faces)
>> >>>
>> >>> -  :group 'tab-bar-faces)
>> >>> -  :group 'tab-line-faces)
>> >>
>> >> Could these faces belong to both groups?
>> >>
>> >>   :group 'basic-faces
>> >>   :group 'tab-bar-faces
>> >
>> > Yup, but that won't work well if the face is customized before the
>> > group is defined, right?  Maybe the trick would be to add the group to
>> > the face when tab-bar.el and tab-line.el are loaded?
>>
>> Actually since tab-bar.el is pre-loaded this problem exists only for
>> tab-line.el.
>>
>> Then adding something like
>>
>>   (nconc (get 'tab-line-faces 'custom-group) '((tab-line custom-face) ...))
>>
>> to tab-line.el will add faces when tab-line.el are loaded.
>
> Could you guys please finalize these issues?  I'd like to install
> these changes on master, for which I'd need a patch that covers both
> the changes in the face storage and the fix for the tab-line face.
>
> Actually, the problem with the tab-line face will probably need to be
> fixed on emacs-27.

I never used the second argument MEMBERS of 'defgroup', but it's exactly
what is needed.  Now the problem with the tab-line face is fixed on emacs-27
in commit 6eb18a950d.