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

📄 webchromeclient.h

📁 linux下开源浏览器WebKit的源码,市面上的很多商用浏览器都是移植自WebKit
💻 H
字号:
/* * Copyright (C) 2006, 2007 Apple Inc.  All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  */#include <WebCore/ChromeClient.h>#include <WebCore/COMPtr.h>#include <WebCore/GraphicsContext.h>#include <WebCore/FocusDirection.h>#include <WebCore/ScrollTypes.h>#include <wtf/Forward.h>class WebView;interface IWebUIDelegate;interface IWebUIDelegate2;interface IWebUIDelegate3;interface IWebUIDelegate4;class WebChromeClient : public WebCore::ChromeClient {public:    WebChromeClient(WebView*);    virtual void chromeDestroyed();    virtual void setWindowRect(const WebCore::FloatRect&);    virtual WebCore::FloatRect windowRect();        virtual WebCore::FloatRect pageRect();        virtual float scaleFactor();    virtual void focus();    virtual void unfocus();    virtual bool canTakeFocus(WebCore::FocusDirection);    virtual void takeFocus(WebCore::FocusDirection);    virtual WebCore::Page* createWindow(WebCore::Frame*, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&);    virtual void show();    virtual bool canRunModal();    virtual void runModal();    virtual void setToolbarsVisible(bool);    virtual bool toolbarsVisible();        virtual void setStatusbarVisible(bool);    virtual bool statusbarVisible();        virtual void setScrollbarsVisible(bool);    virtual bool scrollbarsVisible();        virtual void setMenubarVisible(bool);    virtual bool menubarVisible();    virtual void setResizable(bool);    virtual void addMessageToConsole(const WebCore::String& message, unsigned line, const WebCore::String& url);    virtual bool canRunBeforeUnloadConfirmPanel();    virtual bool runBeforeUnloadConfirmPanel(const WebCore::String& message, WebCore::Frame* frame);    virtual void closeWindowSoon();    virtual void runJavaScriptAlert(WebCore::Frame*, const WebCore::String&);    virtual bool runJavaScriptConfirm(WebCore::Frame*, const WebCore::String&);    virtual bool runJavaScriptPrompt(WebCore::Frame*, const WebCore::String& message, const WebCore::String& defaultValue, WebCore::String& result);    virtual void setStatusbarText(const WebCore::String&);    virtual bool shouldInterruptJavaScript();    virtual bool tabsToLinks() const;    virtual WebCore::IntRect windowResizerRect() const;    virtual void repaint(const WebCore::IntRect&, bool contentChanged, bool immediate = false, bool repaintContentOnly = false);    virtual void scroll(const WebCore::IntSize& scrollDelta, const WebCore::IntRect& rectToScroll, const WebCore::IntRect& clipRect);    virtual WebCore::IntPoint screenToWindow(const WebCore::IntPoint& p) const;    virtual WebCore::IntRect windowToScreen(const WebCore::IntRect& r) const;    virtual PlatformWidget platformWindow() const;    virtual void contentsSizeChanged(WebCore::Frame*, const WebCore::IntSize&) const;    virtual void mouseDidMoveOverElement(const WebCore::HitTestResult&, unsigned modifierFlags);    virtual void setToolTip(const WebCore::String&);    virtual void print(WebCore::Frame*);    virtual void exceededDatabaseQuota(WebCore::Frame*, const WebCore::String&);    virtual void populateVisitedLinks();    virtual bool paintCustomScrollbar(WebCore::GraphicsContext*, const WebCore::FloatRect&, WebCore::ScrollbarControlSize,                                         WebCore::ScrollbarControlState, WebCore::ScrollbarPart pressedPart, bool vertical,                                        float value, float proportion, WebCore::ScrollbarControlPartMask);    virtual bool paintCustomScrollCorner(WebCore::GraphicsContext*, const WebCore::FloatRect&);    virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>);    WebView* webView() const { return m_webView; }    virtual void formStateDidChange(const WebCore::Node*) { }private:    COMPtr<IWebUIDelegate> uiDelegate();    COMPtr<IWebUIDelegate2> uiDelegate2();    COMPtr<IWebUIDelegate3> uiDelegate3();    COMPtr<IWebUIDelegate4> uiDelegate4();    WebView* m_webView;};

⌨️ 快捷键说明

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