I think it's definitely case-dependent, but dropping the window rect makes sense. Seems like the pattern of converting to a window rect and from there to a screen rect is common enough that either (a) it should be encapsulated somewhere (a category on `NSView`/`NSWindow`?) or (b) we should just get used to the nesting in those cases.