長い時間のlurker(多くの答えが見つかりました!)、そして最後に私自身の質問で申し込んだ。NSWindowは私の不透明なNSViewの背景を引き継いでいます
VSTオーディオプラグインで作業していて、ホストから渡されたウィンドウに問題があります。階層は次のとおりです:NSWindow - > NSView - > NSView - > myNSViewSubclass、追加されたもの:
[親addSubview:myNSView];
myNSViewSubclassは親NSViewと同様に不透明であると宣言されています。しかし、NSWindowは不透明であるにもかかわらず、その背景を自分の空間に描き続けます。私はNSWindowを不透明ではないものに設定しました。
私は子ウィンドウを試しましたが、同じこともします。私が試したすべてのオーディオホストは同じ動作を示します。 NSWindowの振る舞いによって何かが変わってしまい、バックグラウンドが描画されないようにするための設定が見つからず、子供の不透明度を無視する理由もありません。
私はマーベリックスで、すべてが完全に機能していました。だから、AU版のコードを追加する準備をするために、私はSierraに更新して、今この問題を抱えています。
現時点では、私の回避策はウィンドウ全体を再描画することですが、実行可能な間はCPUが非常に高価です。
ありがとうございます!