diff --git a/AppKit/CPShadowView.j b/AppKit/CPShadowView.j index e9e05c4a0..d62b623be 100644 --- a/AppKit/CPShadowView.j +++ b/AppKit/CPShadowView.j @@ -98,20 +98,24 @@ var LIGHT_LEFT_INSET = 3.0, + (id)shadowViewEnclosingView:(CPView)aView withWeight:(CPShadowWeight)aWeight { - var shadowView = [[CPShadowView alloc] initWithFrame:[aView frame]]; - [shadowView setWeight:aWeight]; - - var size = [shadowView frame].size, - width = size.width - [shadowView leftInset] - [shadowView rightInset], - height = size.height - [shadowView topInset] - [shadowView bottomInset], - enclosingView = [aView superview]; - - [shadowView setHitTests:[aView hitTests]]; - [shadowView setAutoresizingMask:[aView autoresizingMask]]; - [aView removeFromSuperview]; - [shadowView addSubview:aView]; - [aView setFrame:CGRectMake([shadowView leftInset], [shadowView topInset], width, height)] - [enclosingView addSubview:shadowView]; + var shadowView = [[self alloc] initWithFrame:[aView frame]]; + + if (shadowView) + { + [shadowView setWeight:aWeight]; + + var size = [shadowView frame].size, + width = size.width - [shadowView leftInset] - [shadowView rightInset], + height = size.height - [shadowView topInset] - [shadowView bottomInset], + enclosingView = [aView superview]; + + [shadowView setHitTests:[aView hitTests]]; + [shadowView setAutoresizingMask:[aView autoresizingMask]]; + [aView removeFromSuperview]; + [shadowView addSubview:aView]; + [aView setFrame:CGRectMake([shadowView leftInset], [shadowView topInset], width, height)] + [enclosingView addSubview:shadowView]; + } return shadowView; }