前回は WebViewが載るウィンドウがファーストレスポンダ(Key Window)になれなかった。
そこで NSWindowのサブクラスを作ることにした。
WebWindow.h
@interface WebWindow : NSWindow {
}
@end
WebWindow.m
@implementation WebWindow
- (BOOL)canBecomeKeyWindow
{
return YES;
}
@end
わざわざサブクラス化したのは #canBecomeKeyWindow をオーバーライドしたかったから。YESを返す事でファーストレスポンダになれる。ただ実際にはこれだけでは不足でコントローラー側で NSWindow#makeKeyAndOrderFront: を呼出してやる必要があった。
[_web_window makeKeyAndOrderFront:nil];
実行する。
WebView が普通に操作できてテキストボックスの入力もできる。

Flashページを表示してキャプチャする。

できた。

- - - -
Webキャプチャの大筋はこれでおさえられただろうか。