18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*
20bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    Copyright (C) 2008,2009 Nokia Corporation and/or its subsidiary(-ies)
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Copyright (C) 2007 Staikos Computing Services Inc.
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    This library is free software; you can redistribute it and/or
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    modify it under the terms of the GNU Library General Public
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    License as published by the Free Software Foundation; either
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    version 2 of the License, or (at your option) any later version.
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    This library is distributed in the hope that it will be useful,
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    but WITHOUT ANY WARRANTY; without even the implied warranty of
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Library General Public License for more details.
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    You should have received a copy of the GNU Library General Public License
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    along with this library; see the file COPYING.LIB.  If not, write to
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Boston, MA 02110-1301, USA.
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project*/
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#ifndef QWEBFRAME_H
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#define QWEBFRAME_H
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <QtCore/qobject.h>
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <QtCore/qurl.h>
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <QtCore/qvariant.h>
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <QtGui/qicon.h>
28563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark#include <QtScript/qscriptengine.h>
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include <QtNetwork/qnetworkaccessmanager.h>
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#include "qwebkitglobal.h"
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectQT_BEGIN_NAMESPACE
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QRect;
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QPoint;
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QPainter;
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QPixmap;
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QMouseEvent;
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWheelEvent;
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QNetworkRequest;
408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QRegion;
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QPrinter;
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectQT_END_NAMESPACE
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebNetworkRequest;
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebFramePrivate;
468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebPage;
478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebHitTestResult;
488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebHistoryItem;
49635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectclass QWebSecurityOrigin;
500bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochclass QWebElement;
51cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Blockclass QWebElementCollection;
528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace WebCore {
548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    class WidgetPrivate;
558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    class FrameLoaderClientQt;
568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    class ChromeClientQt;
578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebFrameData;
598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebHitTestResultPrivate;
608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectclass QWebFrame;
618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
620bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochclass QWEBKIT_EXPORT QWebHitTestResult {
638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpublic:
648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResult();
658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResult(const QWebHitTestResult &other);
668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResult &operator=(const QWebHitTestResult &other);
678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    ~QWebHitTestResult();
688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    bool isNull() const;
708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QPoint pos() const;
728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QRect boundingRect() const;
730bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebElement enclosingBlockElement() const;
748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString title() const;
758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString linkText() const;
778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QUrl linkUrl() const;
788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QUrl linkTitle() const;
798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebFrame *linkTargetFrame() const;
800bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebElement linkElement() const;
818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString alternateText() const; // for img, area, input and applet
838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QUrl imageUrl() const;
858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QPixmap pixmap() const;
868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    bool isContentEditable() const;
888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    bool isContentSelected() const;
898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebElement element() const;
918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
920bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebFrame *frame() const;
93635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectprivate:
958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResult(QWebHitTestResultPrivate *priv);
968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResultPrivate *d;
978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebFrame;
998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebPagePrivate;
1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebPage;
1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project};
1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1030bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdochclass QWEBKIT_EXPORT QWebFrame : public QObject {
1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_OBJECT
1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(qreal textSizeMultiplier READ textSizeMultiplier WRITE setTextSizeMultiplier DESIGNABLE false)
1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(qreal zoomFactor READ zoomFactor WRITE setZoomFactor)
1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(QString title READ title)
1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(QUrl url READ url WRITE setUrl)
1090bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    Q_PROPERTY(QUrl requestedUrl READ requestedUrl)
1100bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    Q_PROPERTY(QUrl baseUrl READ baseUrl)
1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(QIcon icon READ icon)
1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Q_PROPERTY(QSize contentsSize READ contentsSize)
113635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    Q_PROPERTY(QPoint scrollPosition READ scrollPosition WRITE setScrollPosition)
1140bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    Q_PROPERTY(bool focus READ hasFocus)
1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectprivate:
1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebFrame(QWebPage *parent, QWebFrameData *frameData);
1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebFrame(QWebFrame *parent, QWebFrameData *frameData);
1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    ~QWebFrame();
1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpublic:
1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebPage *page() const;
1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void load(const QUrl &url);
1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void load(const QNetworkRequest &request,
1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project              QNetworkAccessManager::Operation operation = QNetworkAccessManager::GetOperation,
1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project              const QByteArray &body = QByteArray());
1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setHtml(const QString &html, const QUrl &baseUrl = QUrl());
1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setContent(const QByteArray &data, const QString &mimeType = QString(), const QUrl &baseUrl = QUrl());
1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void addToJavaScriptWindowObject(const QString &name, QObject *object);
131563af33bc48281d19dce701398dbb88cb54fd7ecCary Clark    void addToJavaScriptWindowObject(const QString &name, QObject *object, QScriptEngine::ValueOwnership ownership);
1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString toHtml() const;
1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString toPlainText() const;
1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString renderTreeDump() const;
1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString title() const;
1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setUrl(const QUrl &url);
1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QUrl url() const;
1390bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QUrl requestedUrl() const;
1400bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QUrl baseUrl() const;
1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QIcon icon() const;
142635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    QMultiMap<QString, QString> metaData() const;
1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QString frameName() const;
1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebFrame *parentFrame() const;
1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QList<QWebFrame*> childFrames() const;
1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    Qt::ScrollBarPolicy scrollBarPolicy(Qt::Orientation orientation) const;
1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setScrollBarPolicy(Qt::Orientation orientation, Qt::ScrollBarPolicy policy);
1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setScrollBarValue(Qt::Orientation orientation, int value);
1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    int scrollBarValue(Qt::Orientation orientation) const;
1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    int scrollBarMinimum(Qt::Orientation orientation) const;
1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    int scrollBarMaximum(Qt::Orientation orientation) const;
156635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    QRect scrollBarGeometry(Qt::Orientation orientation) const;
1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
158635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    void scroll(int, int);
159d0825bca7fe65beaee391d30da42e937db621564Steve Block    bool scrollRecursively(int, int);
160635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    QPoint scrollPosition() const;
161635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    void setScrollPosition(const QPoint &pos);
1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
163cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    enum RenderLayer {
164cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        ContentsLayer = 0x10,
165cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        ScrollBarLayer = 0x20,
166cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        PanIconLayer = 0x40,
167cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block
168cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block        AllLayers = 0xff
169cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    };
170cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block
171cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    void render(QPainter*);
172cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    void render(QPainter*, const QRegion& clip);
173cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    void render(QPainter*, RenderLayer layer, const QRegion& clip = QRegion());
1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setTextSizeMultiplier(qreal factor);
1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    qreal textSizeMultiplier() const;
1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    qreal zoomFactor() const;
1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void setZoomFactor(qreal factor);
1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1810bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    bool hasFocus() const;
1820bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    void setFocus();
1830bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QPoint pos() const;
1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QRect geometry() const;
1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QSize contentsSize() const;
1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1880bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebElement documentElement() const;
189cac0f67c402d107cdb10971b95719e2ff9c7c76bSteve Block    QWebElementCollection findAllElements(const QString &selectorQuery) const;
1900bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    QWebElement findFirstElement(const QString &selectorQuery) const;
1910bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebHitTestResult hitTestContent(const QPoint &pos) const;
1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    virtual bool event(QEvent *);
1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
196635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    QWebSecurityOrigin securityOrigin() const;
197635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpublic Q_SLOTS:
1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QVariant evaluateJavaScript(const QString& scriptSource);
2008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#ifndef QT_NO_PRINTER
2018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void print(QPrinter *printer) const;
2028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
2038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source ProjectQ_SIGNALS:
2058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void javaScriptWindowObjectCleared();
2068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void provisionalLoad();
2088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void titleChanged(const QString &title);
2098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void urlChanged(const QUrl &url);
2108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void initialLayoutCompleted();
2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    void iconChanged();
2148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
215635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    void contentsSizeChanged(const QSize &size);
2168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2170bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    void loadStarted();
2180bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch    void loadFinished(bool ok);
2190bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch
2208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectprivate:
2218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebPage;
2228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebPagePrivate;
2238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class QWebFramePrivate;
2248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class WebCore::WidgetPrivate;
2258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class WebCore::FrameLoaderClientQt;
2268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    friend class WebCore::ChromeClientQt;
2278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    QWebFramePrivate *d;
2288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project};
2298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
231