5

コア アニメーション レイヤーの webview

私が見つけることができる唯一の他のスレッドは、必ずしも私のニーズに合わない上記のものです。Web ビューの上にビューを単純に描画する信頼できる方法はありますか? WebView の上に通常の NSView を重ねようとしましたが、最初は正しく描画されますが、WebView 内の動き (ページのスクロールなど) は、ビューを無効にして視覚的なアーティファクトを生成するように見えます。

私はもう試した:

[[[NSApp mainWindow] contentView] addSubview:view positioned:NSWindowAbove relativeTo:webView];

運が悪い、同じ問題-何かが欠けていない限り、zオーダーは機能しないようです。

これは単なる Web ビューの制限ですか?

また、上記のビューをウィンドウとして実装しようとしましたが、これははるかにうまく機能しました (ウィンドウの位置をプログラムで制御しただけです)。ただし、望ましい動作は、ユーザーがこのウィンドウにテキストを入力することですが、「フォーカス」を盗まないことです。つまり、ユーザーがテキスト フィールドをクリックすると、メイン ウィンドウが非アクティブになります (x - + が灰色になります)。新しいウィンドウで。それを回避する方法はありますか?

NSWindow をサブクラス化し、canBecomeKey (YES を返す) と canBecomeMain (NO を返す) をオーバーライドしようとしましたが、ウィンドウはまだフォーカスを盗みます。

編集: 私は泣きます :-( Webkit 上の描画を回避する方法がわかりません。一方、アプリのメイン ウィンドウを強制的にアクティブな状態に保つ方法を見つけました。キー状態のポップアップ ウィンドウ. ただし、ポップアップ ダイアログでテキスト入力を使用すると、意図しない結果が生じます (キー ウィンドウ状態に強制する必要があります). バックスペースが機能しません :: 首を振る ::, およびマウス イベント以下のWebkitビューに配布されていません(htmlに埋め込まれたコンポーネントへのマウスオーバーの場合)。

ジョシュ

4

1 に答える 1