discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Art backend Was: Package building


From: Sergii Stoian
Subject: Re: Art backend Was: Package building
Date: Sun, 8 Dec 2019 04:07:57 +0200

Hi Fred,

> On 6 Dec 2019, at 17:31, Fred Kiefer <fredkiefer@gmx.de> wrote:
> 
> HI Sergii,
> 
>> Am 03.12.2019 um 14:39 schrieb Sergii Stoian <stoyan255@gmail.com>:
>> On Sun, Nov 24, 2019 at 11:34 AM Fred Kiefer <fredkiefer@gmx.de> wrote:
>>> Am 23.11.2019 um 23:33 schrieb Sergii Stoian <stoyan255@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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]