(layer-backed view の覚え書き)
NSView が複数のサブビューを持っている場合、後から追加したものが上に表示される。ところがサブビューの一つが -[NSView setWantsLayer:YES] を呼んで CoreAnimation layer を使う宣言をすると、追加順序が無視されて一番上に表示される。
Mac Dev Center: NSView Class Reference
以下、SimpleCap での例
- - - -
なお -[setWantsLayer:YES] を使うとそのビューでの -[NSView convertPointFromBase:] の挙動が変わる。イベントから取得したウィンドウ内の座標をビューのローカル座標に変換するには -[NSView convertPoint:FromView:] を使う。これで少々ハマってしまった。。