Package: emacs;
Reported by: Stephen Berman <stephen.berman <at> gmx.net>
Date: Fri, 22 Mar 2024 15:06:01 UTC
Severity: normal
Found in version 30.0.50
Done: Stephen Berman <stephen.berman <at> gmx.net>
Bug is archived. No further changes may be made.
Message #56 received at 69942 <at> debbugs.gnu.org (full text, mbox):
From: Stephen Berman <stephen.berman <at> gmx.net> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 69942 <at> debbugs.gnu.org, maurooaranda <at> gmail.com Subject: Re: bug#69942: 30.0.50; Fontification of radio-button widget labels Date: Sat, 25 May 2024 11:29:28 +0200
On Sat, 25 May 2024 10:41:40 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote: > Ping! Ping! Can we please make some progress here? I haven't noticed any problems with the current version of the patch, so if it were up to me, I'd install it. (The caveat about my ignorance of widget-inline-p remains, however.) Steve Berman >> Cc: 69942 <at> debbugs.gnu.org, maurooaranda <at> gmail.com >> Date: Thu, 09 May 2024 10:22:35 +0300 >> From: Eli Zaretskii <eliz <at> gnu.org> >> >> Ping! Any further comments, or is there agreement to install the >> proposed patch? >> >> > From: Stephen Berman <stephen.berman <at> gmx.net> >> > Cc: Eli Zaretskii <eliz <at> gnu.org>, 69942 <at> debbugs.gnu.org >> > Date: Fri, 26 Apr 2024 14:47:26 +0200 >> > >> > On Sun, 21 Apr 2024 21:45:21 +0200 Stephen Berman <stephen.berman <at> gmx.net> wrote: >> > >> > > On Thu, 18 Apr 2024 15:37:58 +0200 Stephen Berman >> > > <stephen.berman <at> gmx.net> wrote: >> > > >> > >> On Thu, 18 Apr 2024 07:07:43 -0300 Mauro Aranda >> > >> <maurooaranda <at> gmail.com> wrote: >> > >> >> > >>> Eli Zaretskii <eliz <at> gnu.org> writes: >> > >>> >> > >>>>> Date: Mon, 8 Apr 2024 07:58:44 -0300 >> > >>>>> Cc: 69942 <at> debbugs.gnu.org >> > >>>>> From: Mauro Aranda <maurooaranda <at> gmail.com> >> > >>>>> >> > >>>>> On 6/4/24 06:02, Eli Zaretskii wrote: >> > >>>>> >> From: Stephen Berman <stephen.berman <at> gmx.net> >> > >>>>> >> Cc: Eli Zaretskii <eliz <at> gnu.org>, 69942 <at> debbugs.gnu.org >> > >>>>> >> Date: Mon, 01 Apr 2024 17:21:27 +0200 >> > >>>>> >> >> > >>>>> >> On Mon, 25 Mar 2024 01:40:36 +0100 Stephen Berman >> > >>>>> <stephen.berman <at> gmx.net> wrote: >> > >>>>> >> >> > >>>>> >>> Ok, I've gotten further with implementing disinguishing by faces >> > >>>>> >>> selected (chosen) and unselected radio buttons in radio-button-choice >> > >>>>> >>> widgets and check boxes in checklist widgets, see the attached patch. >> > >>>>> >>> Initial tests seem ok, but it definitely needs more testing. >> > >>>>> >> >> > >>>>> >> Any comments on this patch for using a widget-unselected face? I have >> > >>>>> >> been detained from further testing this past week, but can now resume. >> > >>>>> > >> > >>>>> > Mauro, any further comments? >> > >>>>> >> > >>>>> Hi Eli and Stephen, >> > >>>>> >> > >>>>> Please forgive me, for the past 2 weeks I haven't been able to do any >> > >>>>> computer stuff. If it's OK, please give me until the weekend so I >> > >>>>> can catch up with this and the other 2 bug reports by Stephen. >> > >>>> >> > >>>> Mauro, were you able to find time to look into this and the other 2 >> > >>>> bugs? >> > >>> >> > >>> I have, just now. The patch looks good to me. It'll be great if >> > >>> Stephen can add some documentation to the manual, so it stays updated. >> > >>> If not, I can do that in a few days. >> > >> >> > >> Sure, I'll add documentation and post it here for approval before >> > >> pushing the changes. >> > > >> > > I've encountered some problems with the patch. One is that it breaks >> > > the display of all face attributes in the customize-face buffer. I've >> > > determined the part of the patch that triggers this, though I haven't >> > > yet figured out just why this bit of code breaks the display. Also, it >> > > appears that the widget-unselected face does not completely replace >> > > widget-inactive where it's intended to do so, but I need to do more >> > > testing and debugging here to find out why. Until I've fixed these >> > > issues the patch is not suitable for installing, so I'm also holding off >> > > with the accompanying documentation. (But in preparation for the >> > > documentation I looked more closely at the Widget manual and found >> > > several typos and other issues, for which I opened bug#70502.) >> > >> > The breakage in displaying all face attributes in the customize-face >> > buffer was caused by the invocation of `(widget-specify-selected child)' >> > in widget-checklist-add-item in the cond-clause satisfying >> > `(widget-inline-p type t)'. I still don't understand why it has this >> > effect, and I have to admit that I don't understand what an inline >> > widget is. But simply omitting the invocation of >> > `(widget-specify-selected child)' at this point in the patch does avoid >> > the customize-face breakage and I have not noticed any problems due to >> > this omission. >> > >> > As for the problematic interaction between the widget-unselected and >> > widget-inactive faces, this seems to have been due to my having copied >> > most of the definition of widget-specify-unselected from that of >> > widget-specify-inactive, and specifically, copying the overlay priority. >> > In the attached patch, widget-specify-unselected now uses a lower >> > overlay priority than the one used in widget-specify-inactive, and in my >> > tests this yields the desired results: the labels of active checkboxes >> > and radio-buttons have widget-unselected face but when these widgets are >> > deactivated, the labels have widget-inactive face. >> > >> > Another change I've made in the attached patch is to have the default >> > value of widget-unselected face inherit from widget-inactive instead of >> > inheriting from shadow face, like widget-inactive does by default. This >> > way, if a user customizes widget-inactive, that will also apply by >> > default to widget-unselected, thus retaining the current default widget >> > UI where the labels of checkboxes and radio-buttons have widget-inactive >> > face. (Thus, the "desired results" in the preceding paragraph are only >> > visible when widget-unselected face is customized to differ from >> > widget-unselected face.) >> > >> > Finally, regarding documentation of widget-unselected face in the Widget >> > manual, I think it would be helpful for the documentation to mention the >> > use case that motivated introducing it (following Mauro's suggestion to >> > use a face instead of a defcustom), namely, to visually distinguish the >> > labels of unselected and inactive widgets. Here is what I suggest: >> > >> > @deffn Face widget-unselected >> > Face used for unselected widgets. This face is also used on the text >> > labels of radio-button and checkbox widgets. >> > >> > The default value inherits @code{widget-inactive} face. If you want to >> > visually distinguish the labels of unselected active radio-button or >> > checkbox widgets from the labels of unselected inactive widgets, >> > customize this face to a non-default value. >> > @end deffn >> > >> > Since the recent widget.texi changes that include documenting >> > widget-inactive face have not yet been merged to master, I haven't >> > included the propopsed documentaton of widget-unselected in the attached >> > patch, but if approved, will of course add it after the merge. >> > >> > Steve Berman >> >> >> >>
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.