Problem: Your window[Will,Did]Resize: code seems totally broken, because you used to set a variable in windowWillResize: and then used that variable in windowDidResize: to set some state in your display of a view. - (NSSize)windowWillResize:(NSWindow *)sender toSize:(NSSize)frameSize { oldWidth = [window frame].size.width; .... - (void)windowDidResize:(NSNotification *)notification { brwsrColGrow += [window frame].size.width - oldWidth; Solution: Calls to windowWillResize:toSize: are not matched evenly with calls to WindowDidResize: because the former is NOT called in the event that you are setting the window's size with setContentSize: or setFrame:, but windowDidResize: is. Don't rely on matched calls, and determine your variable from constants instead of "+=": - (void)windowDidResize:(NSNotification *)notification { brwsrColGrow = [window frame].size.width -BROWSER_MAGIC; |