[squeak-dev] A TTCFont with a TTCFontSet as derivatives, should that happen?

Marcel Taeumel marcel.taeumel at hpi.de
Tue Apr 26 09:19:05 UTC 2022


Hi Nicolas --

During the last 3 months of updating stuff in Trunk, I made 2 bigger mistakes that might raise debuggers when updating older Trunk images.

1. I was not aware that TTCFontSet was actually in use even for simple latin-1/ascii systems. Any MNU can simply be fixed by forwarding the implementation of that message to "fontArray first" in the font set.

2. I introduced a circular/EE issue around "LocaleID class >> #default" when a GetTextTranslator is active. So, it is best to just add this method with " ^ self isoLanguage: 'en' " as body before doing any update.

Note that all font stuff can be cleaned up via the ReleaseBuilder:

   ReleaseBuilder cleanUpBitstreamVeraSans.

Other font-related issues might be cleared by resetting the UI theme:

   UserInterfaceTheme cleanUpAndReset.

After that, no font sets should be present anymore. As documented in the Character class comment, both StrikeFontSet and TTCFontSet are considered legacy at this point.

Best,
Marcel
Am 25.04.2022 23:23:27 schrieb Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com>:
Hi all, Marcel,

Playing with FontChooser, I've encountered a MNU,
when selecting a TTCFont not having the preselected size:

TTCFontSet doesNotUnderstand: #familyNameAsIs

If I inspect the TTCFont with description 'Bitstream Vera Sans'-'Roman', I see that derivatives first class = TTCFontSet.

I also see a workaround for the (self flag: #legacy) case when fontArray first would be kind of TTCFontSet in TextStyle>>#addNewFontSize:, unfortunately, my case is derivatives first, not fontArray first...

It's possible that I skipped some non working postscripts that were once broken when updating the image, so maybe it's just me?

Nicolas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220426/b544fe1e/attachment.html>


More information about the Squeak-dev mailing list