Try changing the container size once the layout is complete, you can do this by using the delegate method: - (void)layoutManager:(NSLayoutManager *)layoutManager didCompleteLayoutForTextContainer:(NSTextContainer *)textContainer atEnd:(BOOL)layoutFinishedFlag
and checking the layoutFinishedFlag.

But you need to take care of not entering an infinite loop.

HTH,
Chaitanya


On 12-Dec-08, at 4:36 PM, Rimas wrote:

My first suspicion was wrong, but I think you're experiencing a similarly
touchy aspect of NSLayoutManager.

I believe the problem is that the NSLayoutManager attached to the text
storage might not have been notified of the edit before you get the
notification. So when you change the container geometry layout is triggered for an intermediate/invalid state. In your NSTextStorageDidProcessEditing callback try using "performSelector:withObject:afterDelay:" to schedule your
container changes and see if that fixes the problem.

Looks like delaying text container modification stops throwing
exception. But I should say, this is a strange behavior. I haven't
seen any notes about that in documentation. Maybe missed something.

Anyway, thank you for your help Martin.

Regards,

Rimas M.
_______________________________________________

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:
http://lists.apple.com/mailman/options/cocoa-dev/chaitanya%40expersis.com

This email sent to chaita...@expersis.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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

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

Reply via email to