18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 2db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. 38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without 58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions 68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met: 78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 1. Redistributions of source code must retain the above copyright 98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer. 108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright 118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * notice, this list of conditions and the following disclaimer in the 128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * documentation and/or other materials provided with the distribution. 138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * its contributors may be used to endorse or promote products derived 158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * from this software without specific prior written permission. 168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#import <WebKit/WebUIDelegate.h> 308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#if !defined(ENABLE_DASHBOARD_SUPPORT) 328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define ENABLE_DASHBOARD_SUPPORT 1 338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif 348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 355abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#if !defined(ENABLE_FULLSCREEN_API) 365abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#define ENABLE_FULLSCREEN_API 1 375abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#endif 385abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick 398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project// Mail on Tiger expects the old value for WebMenuItemTagSearchInGoogle 408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define WebMenuItemTagSearchInGoogle OldWebMenuItemTagSearchWeb 418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define WEBMENUITEMTAG_WEBKIT_3_0_SPI_START 2000 438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectenum { 448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // The next three values were used in WebKit 2.0 for SPI. In WebKit 3.0 these are API, with different values. 458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project OldWebMenuItemTagSearchInSpotlight = 1000, 468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project OldWebMenuItemTagSearchWeb, 478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project OldWebMenuItemTagLookUpInDictionary, 488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // FIXME: These should move to WebUIDelegate.h as part of the WebMenuItemTag enum there, when we're not in API freeze 498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Note that these values must be kept aligned with values in WebCore/ContextMenuItem.h 508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagOpenLink = WEBMENUITEMTAG_WEBKIT_3_0_SPI_START, 518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagIgnoreGrammar, 528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagSpellingMenu, 538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagShowSpellingPanel, 548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagCheckSpelling, 558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagCheckSpellingWhileTyping, 568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagCheckGrammarWithSpelling, 578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagFontMenu, 588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagShowFonts, 598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagBold, 608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagItalic, 618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagUnderline, 628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagOutline, 638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagStyles, 648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagShowColors, 658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagSpeechMenu, 668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagStartSpeaking, 678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagStopSpeaking, 688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagWritingDirectionMenu, 698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagDefaultDirection, 708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagLeftToRight, 718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagRightToLeft, 728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemPDFSinglePageScrolling, 738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemPDFFacingPagesScrolling, 748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagInspectElement, 75635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project WebMenuItemTagTextDirectionMenu, 76635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project WebMenuItemTagTextDirectionDefault, 77635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project WebMenuItemTagTextDirectionLeftToRight, 78635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project WebMenuItemTagTextDirectionRightToLeft, 790bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagCorrectSpellingAutomatically, 800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagSubstitutionsMenu, 810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagShowSubstitutions, 820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagSmartCopyPaste, 830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagSmartQuotes, 840bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagSmartDashes, 850bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagSmartLinks, 860bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagTextReplacement, 870bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagTransformationsMenu, 880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagMakeUpperCase, 890bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagMakeLowerCase, 900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagCapitalize, 910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch WebMenuItemTagChangeBack, 928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project WebMenuItemTagBaseApplication = 10000 938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}; 94643ca7872b450ea4efacab6188849e5aac2ba161Steve Block 9581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch// Message Sources. 9681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageHTMLMessageSource; 9781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageWMLMessageSource; 9881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageXMLMessageSource; 9981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageJSMessageSource; 10081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageCSSMessageSource; 10181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageOtherMessageSource; 10281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 10381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch// Message Types. 10481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageLogMessageType; 10581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageObjectMessageType; 10681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageTraceMessageType; 10781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageStartGroupMessageType; 10881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageStartGroupCollapsedMessageType; 10981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageEndGroupMessageType; 11081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageAssertMessageType; 11181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageUncaughtExceptionMessageType; 11281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageNetworkErrorMessageType; 11381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 11481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch// Message Levels. 11581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageTipMessageLevel; 11681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageLogMessageLevel; 11781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageWarningMessageLevel; 11881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageErrorMessageLevel; 11981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdochextern NSString *WebConsoleMessageDebugMessageLevel; 12081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project@class WebSecurityOrigin; 1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 123643ca7872b450ea4efacab6188849e5aac2ba161Steve Block@protocol WebGeolocationPolicyListener <NSObject> 124643ca7872b450ea4efacab6188849e5aac2ba161Steve Block- (void)allow; 125643ca7872b450ea4efacab6188849e5aac2ba161Steve Block- (void)deny; 126643ca7872b450ea4efacab6188849e5aac2ba161Steve Block@end 127643ca7872b450ea4efacab6188849e5aac2ba161Steve Block 1285abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#if ENABLE_FULLSCREEN_API 1295ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen@protocol WebKitFullScreenListener<NSObject> 1305ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webkitWillEnterFullScreen; 1315ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webkitDidEnterFullScreen; 1325ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webkitWillExitFullScreen; 1335ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webkitDidExitFullScreen; 1345ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen@end 1355ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen#endif 1365ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen 1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project@interface NSObject (WebUIDelegatePrivate) 1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)webView addMessageToConsole:(NSDictionary *)message; 1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 14181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch/*! 14281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch @method webView:addMessageToConsole:withSource: 14381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch @param webView The WebView sending the delegate method. 14481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch @param message A dictionary representation of the console message. 14581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch @param source Where the message came from. See WebConsoleMessageHTMLMessageSource and other source types. 14681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch @discussion The dictionary contains the following keys: 14781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 14881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dl> 14981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>message</dt> 15081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd>The message itself.</dd> 15181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>lineNumber</dt> 15281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd>If this came from a file, this is the line number in the file this message originates from.</dd> 15381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>sourceURL</dt> 15481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd>If this came from a file, this is the URL to the file this message originates from.</dd> 15581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>MessageSource</dt> 15681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd> 15781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Where the message came from. HTML, XML, JavaScript, CSS, etc. 15881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch See WebConsoleMessageHTMLMessageSource and similar constants. 15981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch </dd> 16081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>MessageType</dt> 16181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd> 16281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Class of message. Start / End of a Group, a Log, Network related, etc. 16381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch See WebConsoleMessageLogMessageType and similar constants. 16481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch </dd> 16581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dt>MessageLevel</dt> 16681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch <dd> 16781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch Severity level of the message. Tip, Log, Warning, etc. 16881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch See WebConsoleMessageTipMessageLevel and similar constants. 16981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch </dd> 17081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch </dl> 17181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch*/ 17281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch- (void)webView:(WebView *)webView addMessageToConsole:(NSDictionary *)message withSource:(NSString *)source; 17381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch 1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (NSView *)webView:(WebView *)webView plugInViewWithArguments:(NSDictionary *)arguments; 1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#if ENABLE_DASHBOARD_SUPPORT 1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project// regions is an dictionary whose keys are regions label and values are arrays of WebDashboardRegions. 1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)webView dashboardRegionsChanged:(NSDictionary *)regions; 1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif 1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 1818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender dragImage:(NSImage *)anImage at:(NSPoint)viewLocation offset:(NSSize)initialOffset event:(NSEvent *)event pasteboard:(NSPasteboard *)pboard source:(id)sourceObj slideBack:(BOOL)slideFlag forView:(NSView *)view; 1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender didDrawRect:(NSRect)rect; 1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender didScrollDocumentInFrameView:(WebFrameView *)frameView; 1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project// FIXME: If we ever make this method public, it should include a WebFrame parameter. 1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (BOOL)webViewShouldInterruptJavaScript:(WebView *)sender; 1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender willPopupMenu:(NSMenu *)menu; 1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender contextMenuItemSelected:(NSMenuItem *)item forElement:(NSDictionary *)element; 1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender saveFrameView:(WebFrameView *)frameView showingPanel:(BOOL)showingPanel; 189643ca7872b450ea4efacab6188849e5aac2ba161Steve Block- (BOOL)webView:(WebView *)sender shouldHaltPlugin:(DOMNode *)pluginNode isWindowed:(BOOL)isWindowed pluginName:(NSString *)pluginName; 190ca9cb53ed1119a3fd98fafa0972ffeb56dee1c24Steve Block- (BOOL)webView:(WebView *)sender didPressMissingPluginButton:(DOMElement *)element; 1918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*! 1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project @method webView:frame:exceededDatabaseQuotaForSecurityOrigin:database: 1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project @param sender The WebView sending the delegate method. 1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project @param frame The WebFrame whose JavaScript initiated this call. 1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project @param origin The security origin that needs a larger quota. 1968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project @param databaseIdentifier The identifier of the database involved. 1978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*/ 1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (void)webView:(WebView *)sender frame:(WebFrame *)frame exceededDatabaseQuotaForSecurityOrigin:(WebSecurityOrigin *)origin database:(NSString *)databaseIdentifier; 1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 200db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block/*! 201db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block @method webView:exceededApplicationCacheOriginQuotaForSecurityOrigin: 202db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block @param sender The WebView sending the delegate method. 203db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block @param origin The security origin that needs a larger quota 204db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block @discussion This method is called when a page attempts to store more in the Application Cache 205db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block for an origin than was allowed by the quota (or default) set for the origin. This allows the 206db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block quota to be increased for the security origin. 207db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block*/ 208db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block- (void)webView:(WebView *)sender exceededApplicationCacheOriginQuotaForSecurityOrigin:(WebSecurityOrigin *)origin; 209db14019a23d96bc8a444b6576a5da8bd1cfbc8b0Steve Block 2108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (WebView *)webView:(WebView *)sender createWebViewWithRequest:(NSURLRequest *)request windowFeatures:(NSDictionary *)features; 2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (BOOL)webView:(WebView *)sender shouldReplaceUploadFile:(NSString *)path usingGeneratedFilename:(NSString **)filename; 2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project- (NSString *)webView:(WebView *)sender generateReplacementFile:(NSString *)path; 214563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark 215643ca7872b450ea4efacab6188849e5aac2ba161Steve Block/*! 216643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @method webView:decidePolicyForGeolocationRequestFromOrigin:frame:listener: 217643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @abstract 218643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @param webView The WebView sending the delegate method. 219643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @param origin The security origin that would like to use Geolocation. 220643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @param frame The WebFrame whose JavaScript initiated this call. 221643ca7872b450ea4efacab6188849e5aac2ba161Steve Block @param listener The object to call when the decision is made 222643ca7872b450ea4efacab6188849e5aac2ba161Steve Block*/ 223643ca7872b450ea4efacab6188849e5aac2ba161Steve Block- (void)webView:(WebView *)webView decidePolicyForGeolocationRequestFromOrigin:(WebSecurityOrigin *)origin 224643ca7872b450ea4efacab6188849e5aac2ba161Steve Block frame:(WebFrame *)frame 225643ca7872b450ea4efacab6188849e5aac2ba161Steve Block listener:(id<WebGeolocationPolicyListener>)listener; 226563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark 227231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block- (void)webView:(WebView *)sender formDidFocusNode:(DOMNode *)node; 228231d4e3152a9c27a73b6ac7badbe6be673aa3ddfSteve Block- (void)webView:(WebView *)sender formDidBlurNode:(DOMNode *)node; 2290bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2300bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch/*! 2310bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch @method webView:printFrame: 2320bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch @abstract Informs that a WebFrame needs to be printed 2330bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch @param webView The WebView sending the delegate method 2340bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch @param frameView The WebFrame needing to be printed 2350bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch @discussion This method is called when a script or user requests the page to be printed. 2360bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch*/ 2370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch- (void)webView:(WebView *)sender printFrame:(WebFrame *)frame; 2380bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch 2395abb8606fa57c3ebfc8b3c3dbc3fa4a25d2ae306Iain Merrick#if ENABLE_FULLSCREEN_API 2405ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (BOOL)webView:(WebView *)sender supportsFullScreenForElement:(DOMElement *)element; 2415ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webView:(WebView *)sender enterFullScreenForElement:(DOMElement *)element; 2425ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen- (void)webView:(WebView *)sender exitFullScreenForElement:(DOMElement *)element; 2435ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen#endif 2445ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen 245a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch- (void)webView:(WebView *)sender didDrawFrame:(WebFrame *)frame; 246a94275402997c11dd2e778633dacf4b7e630a35dBen Murdoch 2478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project@end 248