1 /* 2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 * its contributors may be used to endorse or promote products derived 15 * from this software without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 #ifndef FrameLoaderTypes_h 30 #define FrameLoaderTypes_h 31 32 namespace WebCore { 33 34 enum FrameState { 35 FrameStateProvisional, 36 // This state indicates we are ready to commit to a page, 37 // which means the view will transition to use the new data source. 38 FrameStateCommittedPage, 39 FrameStateComplete 40 }; 41 42 enum PolicyAction { 43 PolicyUse, 44 PolicyDownload, 45 PolicyIgnore 46 }; 47 48 // NOTE: Keep in sync with WebKit/mac/WebView/WebFramePrivate.h and WebKit/win/Interfaces/IWebFramePrivate.idl 49 enum FrameLoadType { 50 FrameLoadTypeStandard, 51 FrameLoadTypeBack, 52 FrameLoadTypeForward, 53 FrameLoadTypeIndexedBackForward, // a multi-item hop in the backforward list 54 FrameLoadTypeReload, 55 // Skipped value: 'FrameLoadTypeReloadAllowingStaleData', still present in mac/win public API. Ready to be reused 56 FrameLoadTypeSame = FrameLoadTypeReload + 2, // user loads same URL again (but not reload button) 57 FrameLoadTypeRedirectWithLockedBackForwardList, // FIXME: Merge "lockBackForwardList", "lockHistory", "quickRedirect" and "clientRedirect" into a single concept of redirect. 58 FrameLoadTypeReplace, 59 FrameLoadTypeReloadFromOrigin, 60 }; 61 62 enum NavigationType { 63 NavigationTypeLinkClicked, 64 NavigationTypeFormSubmitted, 65 NavigationTypeBackForward, 66 NavigationTypeReload, 67 NavigationTypeFormResubmitted, 68 NavigationTypeOther 69 }; 70 71 enum ClearProvisionalItemPolicy { 72 ShouldClearProvisionalItem, 73 ShouldNotClearProvisionalItem 74 }; 75 76 enum ObjectContentType { 77 ObjectContentNone, 78 ObjectContentImage, 79 ObjectContentFrame, 80 ObjectContentNetscapePlugin, 81 ObjectContentOtherPlugin 82 }; 83 84 enum UnloadEventPolicy { 85 UnloadEventPolicyNone, 86 UnloadEventPolicyUnloadOnly, 87 UnloadEventPolicyUnloadAndPageHide 88 }; 89 90 enum ReferrerPolicy { 91 SendReferrer, 92 NoReferrer 93 }; 94 95 enum SandboxFlag { 96 SandboxNone = 0, 97 SandboxNavigation = 1, 98 SandboxPlugins = 1 << 1, 99 SandboxOrigin = 1 << 2, 100 SandboxForms = 1 << 3, 101 SandboxScripts = 1 << 4, 102 SandboxTopNavigation = 1 << 5, 103 SandboxAll = -1 // Mask with all bits set to 1. 104 }; 105 106 enum SecurityCheckPolicy { 107 SkipSecurityCheck, 108 DoSecurityCheck 109 }; 110 111 // Passed to FrameLoader::urlSelected() and ScriptController::executeIfJavaScriptURL() 112 // to control whether, in the case of a JavaScript URL, executeIfJavaScriptURL() should 113 // replace the document. It is a FIXME to eliminate this extra parameter from 114 // executeIfJavaScriptURL(), in which case this enum can go away. 115 enum ShouldReplaceDocumentIfJavaScriptURL { 116 ReplaceDocumentIfJavaScriptURL, 117 DoNotReplaceDocumentIfJavaScriptURL 118 }; 119 120 enum ReasonForCallingAllowPlugins { 121 AboutToInstantiatePlugin, 122 NotAboutToInstantiatePlugin 123 }; 124 125 typedef int SandboxFlags; 126 } 127 128 #endif 129