// // WebViewDelegate.m // phonegap-mac // // Created by shazron on 10-04-30. // Copyright 2010 Nitobi Software Inc. All rights reserved. // #import "WebViewDelegate.h" #import "Sound.h" @implementation WebViewDelegate @synthesize sound; - (void) webView:(WebView*)webView windowScriptObjectAvailable:(WebScriptObject*)windowScriptObject { if (self.sound == nil) { self.sound = [Sound new]; } [windowScriptObject setValue:self.sound forKey:@"sound"]; } /* This logs all errors from Javascript, nifty */ - (void) webView:(WebView*)webView addMessageToConsole:(NSDictionary*)message { if (![message isKindOfClass:[NSDictionary class]]) { return; } NSLog(@"JavaScript error: %@:%@: %@", [[message objectForKey:@"sourceURL"] lastPathComponent], // could be nil [message objectForKey:@"lineNumber"], [message objectForKey:@"message"]); } #pragma mark WebScripting protocol /* checks whether a selector is acceptable to be called from JavaScript */ + (BOOL) isSelectorExcludedFromWebScript:(SEL)selector { return YES; } // right now exclude all properties (eg keys) + (BOOL) isKeyExcludedFromWebScript:(const char*)name { return YES; } @end