Re: Catalina scroll view issues

2019-12-14 Thread Allan Odgaard via Cocoa-dev

On 14 Dec 2019, at 21:16, Redler Eyal via Cocoa-dev wrote:

I'm getting reports from users complaining about a strange display 
issue on Catalina with my app.

[…]
The problem is that when with some documents, sometimes, when the user 
scrolls down the document, some pages are not drawn or even partially 
drawn. When the user clicks the place where the page is supposed to 
appear, it shows up.


Does it look anything like this: 
https://github.com/textmate/bugs/issues/33 ?


We’ve gotten a bunch of reports like this for TextMate on Catalina.

The only thing I can think of is that we opt out of responsive 
scrolling, so maybe that is a less tested code path on Catalina. The 
issue itself very much looks like a system bug.


We opt out of responsive scroll because the line numbers is a separate 
NSScrollView and with responsive scroll enabled, I know of no way to 
synchronize the two scroll views (since notifications about positions on 
the main thread may be delayed, due to background thread scrolling).


Since layer backed views effectively broke our ability to support 
transparent backgrounds, I have some unreleased code where we have 
switched to making the line numbers a floating subview so that we 
don’t have to opt out of responsive scrolling. But I have no idea if 
this fixes the issue, as I haven’t updated to 10.15 myself.

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: Catalina scroll view issues

2019-12-14 Thread Rob Petrovec via Cocoa-dev
From 
https://developer.apple.com/documentation/appkit/nsclipview/1532142-copiesonscroll?language=objc
copiesOnScroll
A Boolean value that indicates if the clip view copies rendered images while 
scrolling.
Discussion
When the value of this property is YES, the clip view copies its existing 
rendered image while scrolling (only drawing exposed portions of its document 
view); when it is NO, the view forces its contents to be redrawn each time.

From NSClipView.h:
@property BOOL copiesOnScroll API_DEPRECATED("NSClipView will always 
minimize the area of the document view that is invalidated.  To force 
invalidation of the document view, use -[NSView setNeedsDisplayInRect:].", 
macos(10.0, API_TO_BE_DEPRECATED));

The way I read that is that the clip view now always behaves as if copyOnScroll 
is YES.  So even though you have it set to NO, the scroll/clip view will behave 
as if it was true.  That may be your problem here and explain the difference in 
behavior for you between Mojave and Cataline.  Good luck.

—Rob



> On Dec 14, 2019, at 12:20 PM, Gary L. Wade via Cocoa-dev 
>  wrote:
> 
> I see from your personal web site you know Hebrew. Is it possible the 
> affected/non-drawing pages contain some RTL text while those that don’t only 
> contain LTR? I have seen some bugs with RTL text within NSTextView where the 
> text was/wasn’t drawing in a similar manner. Do you operate at a CoreText 
> level?
> --
> Gary L. Wade
> http://www.garywade.com/
> 
>> On Dec 14, 2019, at 6:17 AM, Redler Eyal via Cocoa-dev 
>>  wrote:
>> 
>> Hi All,
>> 
>> I'm getting reports from users complaining about a strange display issue on 
>> Catalina with my app.
>> My app is a word-processor (not based on the cocoa text system) whose main 
>> display shows the pages of the document. Every page is a separate view and 
>> all the pages are subviews of one big view which resides inside a scroll 
>> view.
>> 
>> The problem is that when with some documents, sometimes, when the user 
>> scrolls down the document, some pages are not drawn or even partially drawn. 
>> When the user clicks the place where the page is supposed to appear, it 
>> shows up.
>> Another interesting bit is seems that while the scroll view background is 
>> drawn, the document views (the view containing the page views) drawRect is 
>> not called or at least not taking effect, I can tell because the pages on 
>> this view cast a shadow which is drawn by drawing blank squares on the 
>> document view with a transparency layer.
>> Last bit of info, copiesOnScroll set to NO for this view and I see that this 
>> property is deprecated on Catalina.
>> 
>> So far I'm struggling with this for a couple of weeks, I wasn't able to 
>> reproduce this at all on my machine.
>> I'm really desperate for an answer and while I'm not expecting anyone here 
>> to provide me with one (wouldn't object, of course :-)) I would love if 
>> people reading this might try to speculate to the causes of this or perhaps 
>> if you have any direction as to what to test on my users machines in order 
>> to be able to reproduce this.
>> 
>> Thanks
>> 
>> Eyal Redler
>> 
>> "If Uri Geller bends spoons with divine powers, then he's doing it the hard 
>> way."
>> --James Randi
>> www.eyalredler.com
> 
> ___
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/petrock%40mac.com
> 
> This email sent to petr...@mac.com

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: Catalina scroll view issues

2019-12-14 Thread Gary L. Wade via Cocoa-dev
I see from your personal web site you know Hebrew. Is it possible the 
affected/non-drawing pages contain some RTL text while those that don’t only 
contain LTR? I have seen some bugs with RTL text within NSTextView where the 
text was/wasn’t drawing in a similar manner. Do you operate at a CoreText level?
--
Gary L. Wade
http://www.garywade.com/

> On Dec 14, 2019, at 6:17 AM, Redler Eyal via Cocoa-dev 
>  wrote:
> 
> Hi All,
> 
> I'm getting reports from users complaining about a strange display issue on 
> Catalina with my app.
> My app is a word-processor (not based on the cocoa text system) whose main 
> display shows the pages of the document. Every page is a separate view and 
> all the pages are subviews of one big view which resides inside a scroll view.
> 
> The problem is that when with some documents, sometimes, when the user 
> scrolls down the document, some pages are not drawn or even partially drawn. 
> When the user clicks the place where the page is supposed to appear, it shows 
> up.
> Another interesting bit is seems that while the scroll view background is 
> drawn, the document views (the view containing the page views) drawRect is 
> not called or at least not taking effect, I can tell because the pages on 
> this view cast a shadow which is drawn by drawing blank squares on the 
> document view with a transparency layer.
> Last bit of info, copiesOnScroll set to NO for this view and I see that this 
> property is deprecated on Catalina.
> 
> So far I'm struggling with this for a couple of weeks, I wasn't able to 
> reproduce this at all on my machine.
> I'm really desperate for an answer and while I'm not expecting anyone here to 
> provide me with one (wouldn't object, of course :-)) I would love if people 
> reading this might try to speculate to the causes of this or perhaps if you 
> have any direction as to what to test on my users machines in order to be 
> able to reproduce this.
> 
> Thanks
> 
> Eyal Redler
> 
> "If Uri Geller bends spoons with divine powers, then he's doing it the hard 
> way."
> --James Randi
> www.eyalredler.com

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Catalina scroll view issues

2019-12-14 Thread Redler Eyal via Cocoa-dev
Hi All,

I'm getting reports from users complaining about a strange display issue on 
Catalina with my app.
My app is a word-processor (not based on the cocoa text system) whose main 
display shows the pages of the document. Every page is a separate view and all 
the pages are subviews of one big view which resides inside a scroll view.

The problem is that when with some documents, sometimes, when the user scrolls 
down the document, some pages are not drawn or even partially drawn. When the 
user clicks the place where the page is supposed to appear, it shows up.
Another interesting bit is seems that while the scroll view background is 
drawn, the document views (the view containing the page views) drawRect is not 
called or at least not taking effect, I can tell because the pages on this view 
cast a shadow which is drawn by drawing blank squares on the document view with 
a transparency layer.
Last bit of info, copiesOnScroll set to NO for this view and I see that this 
property is deprecated on Catalina.

So far I'm struggling with this for a couple of weeks, I wasn't able to 
reproduce this at all on my machine.
I'm really desperate for an answer and while I'm not expecting anyone here to 
provide me with one (wouldn't object, of course :-)) I would love if people 
reading this might try to speculate to the causes of this or perhaps if you 
have any direction as to what to test on my users machines in order to be able 
to reproduce this.

Thanks

Eyal Redler

"If Uri Geller bends spoons with divine powers, then he's doing it the hard 
way."
--James Randi
www.eyalredler.com


___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com