⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frameloader.h

📁 linux下开源浏览器WebKit的源码,市面上的很多商用浏览器都是移植自WebKit
💻 H
📖 第 1 页 / 共 2 页
字号:
        ScriptValue executeScript(const String& script, bool forceUserGesture = false);        void gotoAnchor();        bool gotoAnchor(const String& name); // returns true if the anchor was found        void scrollToAnchor(const KURL&);        void tokenizerProcessedData();        void handledOnloadEvents();        String userAgent(const KURL&) const;        Widget* createJavaAppletWidget(const IntSize&, HTMLAppletElement*, const HashMap<String, String>& args);        void dispatchWindowObjectAvailable();        void dispatchDocumentElementAvailable();        void restoreDocumentState();        Frame* opener();        void setOpener(Frame*);        bool openedByDOM() const;        void setOpenedByDOM();        void provisionalLoadStarted();        bool userGestureHint();        void resetMultipleFormSubmissionProtection();        void didNotOpenURL(const KURL&);        void addData(const char* bytes, int length);        bool canCachePage();        void checkCallImplicitClose();        bool didOpenURL(const KURL&);        void frameDetached();        const KURL& url() const { return m_URL; }        void updateBaseURLForEmptyDocument();        void setResponseMIMEType(const String&);        const String& responseMIMEType() const;        bool containsPlugins() const;        void loadDone();        void finishedParsing();        void checkCompleted();        void scheduleCheckCompleted();        void scheduleCheckLoadComplete();        void clearRecordedFormValues();        void setFormAboutToBeSubmitted(PassRefPtr<HTMLFormElement> element);        void recordFormValue(const String& name, const String& value);        bool isComplete() const;        bool requestObject(RenderPart* frame, const String& url, const AtomicString& frameName,            const String& serviceType, const Vector<String>& paramNames, const Vector<String>& paramValues);        KURL completeURL(const String& url);        KURL originalRequestURL() const;        void cancelAndClear();        void setTitle(const String&);                bool shouldTreatURLAsSameAsCurrent(const KURL&) const;        void commitProvisionalLoad(PassRefPtr<CachedPage>);        void goToItem(HistoryItem*, FrameLoadType);        void saveDocumentAndScrollState();        void saveScrollPositionAndViewStateToItem(HistoryItem*);        // FIXME: These accessors are here for a dwindling number of users in WebKit, WebFrame        // being the primary one.  After they're no longer needed there, they can be removed!        HistoryItem* currentHistoryItem();        void setCurrentHistoryItem(PassRefPtr<HistoryItem>);        void setProvisionalHistoryItem(PassRefPtr<HistoryItem>);        void continueLoadWithData(SharedBuffer*, const String& mimeType, const String& textEncoding, const KURL&);         enum LocalLoadPolicy {          AllowLocalLoadsForAll,  // No restriction on local loads.          AllowLocalLoadsForLocalAndSubstituteData,          AllowLocalLoadsForLocalOnly,        };        static void setLocalLoadPolicy(LocalLoadPolicy);        static bool restrictAccessToLocal();        static bool allowSubstituteDataAccessToLocal();        static void registerURLSchemeAsLocal(const String& scheme);        static bool shouldTreatURLAsLocal(const String&);        static bool shouldTreatSchemeAsLocal(const String&);        bool committingFirstRealLoad() const { return !m_creatingInitialEmptyDocument && !m_committedFirstRealDocumentLoad; }        void iconLoadDecisionAvailable();        bool shouldAllowNavigation(Frame* targetFrame) const;        Frame* findFrameForNavigation(const AtomicString& name);        void startIconLoader();        void applyUserAgent(ResourceRequest& request);    private:        PassRefPtr<HistoryItem> createHistoryItem(bool useOriginal);        PassRefPtr<HistoryItem> createHistoryItemTree(Frame* targetFrame, bool clipAtTarget);        bool canCachePageContainingThisFrame();#ifndef NDEBUG        void logCanCachePageDecision();        bool logCanCacheFrameDecision(int indentLevel);#endif        void addBackForwardItemClippedAtTarget(bool doClip);        void restoreScrollPositionAndViewState();        void saveDocumentState();        void loadItem(HistoryItem*, FrameLoadType);        bool urlsMatchItem(HistoryItem*) const;        void invalidateCurrentItemCachedPage();        void recursiveGoToItem(HistoryItem*, HistoryItem*, FrameLoadType);        bool childFramesMatchItem(HistoryItem*) const;        void updateHistoryForBackForwardNavigation();        void updateHistoryForReload();        void updateHistoryForStandardLoad();        void updateHistoryForRedirectWithLockedBackForwardList();        void updateHistoryForClientRedirect();        void updateHistoryForCommit();        void updateHistoryForAnchorScroll();            void redirectionTimerFired(Timer<FrameLoader>*);        void checkCompletedTimerFired(Timer<FrameLoader>*);        void checkLoadCompleteTimerFired(Timer<FrameLoader>*);                void cancelRedirection(bool newLoadInProgress = false);        void started();        void completed();        void parentCompleted();        bool shouldUsePlugin(const KURL&, const String& mimeType, bool hasFallback, bool& useFallback);        bool loadPlugin(RenderPart*, const KURL&, const String& mimeType,        const Vector<String>& paramNames, const Vector<String>& paramValues, bool useFallback);                bool loadProvisionalItemFromCachedPage();        void cachePageForHistoryItem(HistoryItem*);        void receivedFirstData();        void updatePolicyBaseURL();        void setPolicyBaseURL(const KURL&);                void addExtraFieldsToRequest(ResourceRequest&, FrameLoadType loadType, bool isMainResource, bool cookiePolicyURLFromRequest);        // Also not cool.        void stopLoadingSubframes();        void clearProvisionalLoad();        void markLoadComplete();        void transitionToCommitted(PassRefPtr<CachedPage>);        void frameLoadCompleted();        void mainReceivedError(const ResourceError&, bool isComplete);        void setLoadType(FrameLoadType);        void checkNavigationPolicy(const ResourceRequest&, DocumentLoader*, PassRefPtr<FormState>,                                   NavigationPolicyDecisionFunction, void* argument);        void checkNewWindowPolicy(const NavigationAction&, const ResourceRequest&,                                   PassRefPtr<FormState>, const String& frameName);        void continueAfterNavigationPolicy(PolicyAction);        void continueAfterNewWindowPolicy(PolicyAction);        void continueAfterContentPolicy(PolicyAction);        void continueLoadAfterWillSubmitForm(PolicyAction = PolicyUse);        static void callContinueLoadAfterNavigationPolicy(void*, const ResourceRequest&, PassRefPtr<FormState>, bool shouldContinue);        void continueLoadAfterNavigationPolicy(const ResourceRequest&, PassRefPtr<FormState>, bool shouldContinue);        static void callContinueLoadAfterNewWindowPolicy(void*, const ResourceRequest&, PassRefPtr<FormState>, const String& frameName, bool shouldContinue);        void continueLoadAfterNewWindowPolicy(const ResourceRequest&, PassRefPtr<FormState>, const String& frameName, bool shouldContinue);        static void callContinueFragmentScrollAfterNavigationPolicy(void*, const ResourceRequest&, PassRefPtr<FormState>, bool shouldContinue);        void continueFragmentScrollAfterNavigationPolicy(const ResourceRequest&, bool shouldContinue);        bool shouldScrollToAnchor(bool isFormSubmission, FrameLoadType loadType, const KURL& url);        void addHistoryItemForFragmentScroll();        void stopPolicyCheck();        void closeDocument();                void checkLoadCompleteForThisFrame();        void setDocumentLoader(DocumentLoader*);        void setPolicyDocumentLoader(DocumentLoader*);        void setProvisionalDocumentLoader(DocumentLoader*);        void setState(FrameState);        void closeOldDataSources();        void open(CachedPage&);        void open(CachedFrame&);        void updateHistoryAfterClientRedirect();        void clear(bool clearWindowProperties = true, bool clearScriptObjects = true);        bool shouldReloadToHandleUnreachableURL(DocumentLoader*);        void handleUnimplementablePolicy(const ResourceError&);        void scheduleRedirection(ScheduledRedirection*);        void startRedirectionTimer();        void stopRedirectionTimer();        void dispatchDidCommitLoad();        void dispatchAssignIdentifierToInitialRequest(unsigned long identifier, DocumentLoader*, const ResourceRequest&);        void dispatchWillSendRequest(DocumentLoader*, unsigned long identifier, ResourceRequest&, const ResourceResponse& redirectResponse);        void dispatchDidReceiveResponse(DocumentLoader*, unsigned long identifier, const ResourceResponse&);        void dispatchDidReceiveContentLength(DocumentLoader*, unsigned long identifier, int length);        void dispatchDidFinishLoading(DocumentLoader*, unsigned long identifier);        static bool isLocationChange(const ScheduledRedirection&);        Frame* m_frame;        FrameLoaderClient* m_client;        FrameState m_state;        FrameLoadType m_loadType;        // Document loaders for the three phases of frame loading. Note that while         // a new request is being loaded, the old document loader may still be referenced.        // E.g. while a new request is in the "policy" state, the old document loader may        // be consulted in particular as it makes sense to imply certain settings on the new loader.        RefPtr<DocumentLoader> m_documentLoader;        RefPtr<DocumentLoader> m_provisionalDocumentLoader;        RefPtr<DocumentLoader> m_policyDocumentLoader;        // This identifies the type of navigation action which prompted this load. Note         // that WebKit conveys this value as the WebActionNavigationTypeKey value        // on navigation action delegate callbacks.        FrameLoadType m_policyLoadType;        PolicyCheck m_policyCheck;        bool m_delegateIsHandlingProvisionalLoadError;        bool m_delegateIsDecidingNavigationPolicy;        bool m_delegateIsHandlingUnimplementablePolicy;        bool m_firstLayoutDone;        bool m_quickRedirectComing;        bool m_sentRedirectNotification;        bool m_inStopAllLoaders;        bool m_navigationDuringLoad;        String m_outgoingReferrer;        OwnPtr<FormSubmission> m_deferredFormSubmission;        bool m_isExecutingJavaScriptFormAction;        bool m_isRunningScript;        String m_responseMIMEType;        bool m_didCallImplicitClose;        bool m_wasUnloadEventEmitted;        bool m_isComplete;        bool m_isLoadingMainResource;        KURL m_URL;        KURL m_workingURL;        OwnPtr<IconLoader> m_iconLoader;        bool m_mayLoadIconLater;        bool m_cancellingWithLoadInProgress;        OwnPtr<ScheduledRedirection> m_scheduledRedirection;        bool m_needsClear;        bool m_receivedData;        bool m_encodingWasChosenByUser;        String m_encoding;        RefPtr<TextResourceDecoder> m_decoder;        bool m_containsPlugIns;        RefPtr<HTMLFormElement> m_formAboutToBeSubmitted;        HashMap<String, String> m_formValuesAboutToBeSubmitted;        KURL m_submittedFormURL;            Timer<FrameLoader> m_redirectionTimer;        Timer<FrameLoader> m_checkCompletedTimer;        Timer<FrameLoader> m_checkLoadCompleteTimer;        Frame* m_opener;        HashSet<Frame*> m_openedFrames;        bool m_openedByDOM;        bool m_creatingInitialEmptyDocument;        bool m_isDisplayingInitialEmptyDocument;        bool m_committedFirstRealDocumentLoad;        RefPtr<HistoryItem> m_currentHistoryItem;        RefPtr<HistoryItem> m_previousHistoryItem;        RefPtr<HistoryItem> m_provisionalHistoryItem;                bool m_didPerformFirstNavigation;        #ifndef NDEBUG        bool m_didDispatchDidCommitLoad;#endif#if ENABLE(WML)        bool m_forceReloadWmlDeck;#endif    };} // namespace WebCore#endif // FrameLoader_h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -