Why do NSOutlineView cells overlap group cells when floatsGroupRows is Enabled

389 views Asked by At

I'm creating a new app on Yosemite with an NSOutlineView created via the "Source List" item in the Object Library. By default, floatsGroupRows is enabled. I have top-level items as group items, and others as normal cell items. Which is great, except that, when I scroll up, the regular items don't disappear under the group items, but overlap with them:

NSOutlineView Overlap

Here I would expect the "Foo" item to be half invisible, but it's not, it's just flowing over (under?) the "THINGS" group item. Is there any way to fix this, other than disabling floatsGroupRows?

1

There are 1 answers

1
Ken Thomases On BEST ANSWER

I think Apple is aware of an incompatibility between source lists and floating group rows. Certainly, floating group rows goes against the styling of source lists. The 10.7 AppKit release notes say:

In general, source lists should not float the group rows, and [outline setFloatsGroupRows:NO] should be called.

So, you should either not use a source list (i.e. use a normal style of outline view) or not use floating group rows.