NSCollectionView keyloop broken, is there a workaround?
NSCollectionView keyloop broken, is there a workaround?
- Subject: NSCollectionView keyloop broken, is there a workaround?
- From: Markus Spoettl <email@hidden>
- Date: Wed, 20 Aug 2008 00:30:34 -0700
Hi List,
I've asked this questions a couple of months back but never got a
response. I'm bringing this up again in the hope that meanwhile
someone else has figured out a workaround for the problem. Which is
this:
NSCollectionView (new in 10.5) is broken with respect to the window
keyloop (the keyloop is what cycles the input focus from control to
control when pressing TAB). Apple's NSCollectionView demo shows the
issue:
http://developer.apple.com/samplecode/IconCollection/index.html
What happens is that the view (or contained sub-views) can get the
focus by means of TAB-ing, but you can't tab out of a collection view.
Never ever.
I've played with this quite some time now and I still don't have a
good solution. The TAB keys do not seem to get processed correctly by
the collection views. They are interpreted (presumably via -
interpretKeyEvents:) and cause NSResponder's -insertTab: and -
insertBacktab: to be called on the collection view. Which I think is
totally useless. All it does is causing a beep because
NSCollectionView doesn't implement those methods.
I'm wondering how I can repair this properly. I've a partially working
thing by overwriting NSCollectionView's -keyDown: and handling TABs
myself, but it has a number of issues: 1) I need to call the window's -
recalculateKeyViewLoop: method manually after the items change. For
some reason it doesn't work automatically even if the window's -
autorecalculatesKeyViewLoop is set to YES (documentation says that
it's updated automatically, well it's not). 2) It doesn't work quite
as expected as all individual views inside the collection view are now
cycled through as well. There are probably other issues I'm not aware
of but those are show stoppers anyway.
For some strange reason CTRL-TAB does work, I assume it causes some
completely different processing to take place that doesn't rely on the
NSView keyloop setup. Can anyone shed some light on this mystery?
Regards
Markus
--
__________________________________________
Markus Spoettl
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden