diff --git a/AppKit/CPCollectionView.j b/AppKit/CPCollectionView.j index 88afdc80a..e5c72c8eb 100644 --- a/AppKit/CPCollectionView.j +++ b/AppKit/CPCollectionView.j @@ -736,13 +736,16 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey", _itemSize = CGSizeMakeZero(); - _minItemSize = [aCoder decodeSizeForKey:CPCollectionViewMinItemSizeKey]; - _maxItemSize = [aCoder decodeSizeForKey:CPCollectionViewMaxItemSizeKey]; + _minItemSize = [aCoder decodeSizeForKey:CPCollectionViewMinItemSizeKey] || CGSizeMakeZero(); + _maxItemSize = [aCoder decodeSizeForKey:CPCollectionViewMaxItemSizeKey] || CGSizeMakeZero(); _verticalMargin = [aCoder decodeFloatForKey:CPCollectionViewVerticalMarginKey]; _tileWidth = -1.0; _selectionIndexes = [CPIndexSet indexSet]; + + _allowsEmptySelection = YES; + _isSelectable = YES; } return self; @@ -752,14 +755,13 @@ var CPCollectionViewMinItemSizeKey = @"CPCollectionViewMinItemSizeKey", { [super encodeWithCoder:aCoder]; - if (_minItemSize != nil) + if (!CGSizeEqualToSize(_minItemSize, CGSizeMakeZero())) [aCoder encodeSize:_minItemSize forKey:CPCollectionViewMinItemSizeKey]; - if (_maxItemSize != nil) + if (!CGSizeEqualToSize(_maxItemSize, CGSizeMakeZero())) [aCoder encodeSize:_maxItemSize forKey:CPCollectionViewMaxItemSizeKey]; - if (_verticalMargin != nil) - [aCoder encodeFloat:_verticalMargin forKey:CPCollectionViewVerticalMarginKey]; + [aCoder encodeFloat:_verticalMargin forKey:CPCollectionViewVerticalMarginKey]; } @end diff --git a/Tools/nib2cib/NSCollectionView.j b/Tools/nib2cib/NSCollectionView.j index 153edee4e..bb0ef9091 100644 --- a/Tools/nib2cib/NSCollectionView.j +++ b/Tools/nib2cib/NSCollectionView.j @@ -26,6 +26,21 @@ - (id)NS_initWithCoder:(CPCoder)aCoder { + _items = []; + _content = []; + + _cachedItems = []; + + _itemSize = CGSizeMakeZero(); + _minItemSize = CGSizeMakeZero(); + _maxItemSize = CGSizeMakeZero(); + + _verticalMargin = 5.0; + _tileWidth = -1.0; + + _selectionIndexes = [CPIndexSet indexSet]; + _allowsEmptySelection = YES; + if (self = [super NS_initWithCoder:aCoder]) { _maxNumberOfRows = [aCoder decodeIntForKey:@"NSMaxNumberOfGridRows"]; @@ -33,7 +48,6 @@ _isSelectable = [aCoder decodeBoolForKey:@"NSSelectable"]; _allowsMultipleSelection = [aCoder decodeBoolForKey:@"NSAllowsMultipleSelection"]; - } return self;