Hi Fred, > On 6 Dec 2019, at 17:31, Fred Kiefer <fredkie...@gmx.de> wrote: > > HI Sergii, > >> Am 03.12.2019 um 14:39 schrieb Sergii Stoian <stoyan...@gmail.com>: >> On Sun, Nov 24, 2019 at 11:34 AM Fred Kiefer <fredkie...@gmx.de> wrote: >>> Am 23.11.2019 um 23:33 schrieb Sergii Stoian <stoyan...@gmail.com>: >>> >>>> I havent tried in the last weeks/months, but the last release worked. Of >>>> course, it has all specific "issues" of art which where never solved. But >>>> it is faster for certain operations and curves and anti-aliasing are >>>> exquisite. Using Graphos on art is a delight. >>>> >>> What do you mean by “worked”? I observed incomplete words in menus and >>> popup buttons. Incorrect alignment of items in popup buttons - I suppose >>> it’s due to incorrect lengthOfString results. Also I suppose I’ve found >>> cause of a problem - NSStringDrawing caching methods rewrite by Fred. But I >>> can’t understand what changes must be applied to ART backend to adopt new >>> caching algorithm. >> >> I am willing to help here if you could pinpoint the issue a bit down. Which >> commit are you talking about and in which situations does it show? The last >> time I used the art backend I did not see any issues. But I must confess I >> only checked with Ink. >> >> I've made some screenshots with 0.27 version of GUI and Back (please see >> attachments) to illustrate some inconsistencies. >> FontPreferencesPopUp and LocalizationPreferences-* illustrate NSPopUpButton >> text drawing. >> WorkspaceMenu+HelpPanel illustrates - i guess - related problem: "Workspace" >> menu lacks border at the right side. >> The other problem is with my custom HelpPanel that contains NSMatrix with >> index list (note selection offset). >> Plus (it's hard to make screenshot of insertion point) in NXTHelpPanel's >> NSTextField insertion point drawn shifted at 20-30 pixels to the right until >> there's no entered text. >> >> Now I'm using 0.25 version of GUI and Back - all works correcly. >> Somewhere between 0.25 and 0.25.1 of GUI NSStringDrawing was massively >> changed by you. Do you know what is the cause of these inconsistencies? > > With the recent mail flood on the GNUstep mailing lists I require some more > background to be sure we talk about the same thing here. > > The screenshots you made were for the art backend?
Exactly. > Could you please explain in more detail what is wrong with each specific > screen shot? I can see that some entries in the popup list are shortened. > What else is wrong? Application menu (Workspace) lacks border at the right side. I placed app menu above the window to see absent menu border. > The GNUstep guy release 0.25.0 was in June 2016 and the following 0.25.1 > release almost a year later. There have been plenty of relevant changes in > the string drawing during that time. The most important probably was to usage > of cached glyph advancements, but also the change in the string drawing cache > handling you mention. Could you try to pin down the commit that broke things > for you? I’ve tracked down to suspicious commit - 31cb9914d166defcad9862eaed09c28be359ccbe. Before this commit everything looks fine. > The art backend is no longer actively maintained. I understand that you and > Riccardo still prefer it. Here it would help if you could provide patches to > get it working again. I am not very familiar with the art text handling code. I suppose it’s not direct art problem. Perhaps art should be adopted to NSStringDrawing changed caching, I don’t know until I understand string drawing change. What was the idea of that rewrite? Commit message doesn’t explain why that change was made. For me, It doesn’t look as “cleanup”. That’s why I asked you as author of that change. > If you want to debug the popup button issue you should start off with the > NSMenuItemCell drawing methods, here drawTitleXXX is the most likely starting > point. I’ve done it once I found inconsistency. NSMenu* code simply makes call to string drawing methods. > > Cheers, > Fred Sergii