diff options
Diffstat (limited to 'WebKitTools/MiniBrowser/qt')
-rw-r--r-- | WebKitTools/MiniBrowser/qt/BrowserView.cpp | 74 | ||||
-rw-r--r-- | WebKitTools/MiniBrowser/qt/BrowserView.h | 54 | ||||
-rw-r--r-- | WebKitTools/MiniBrowser/qt/BrowserWindow.cpp | 183 | ||||
-rw-r--r-- | WebKitTools/MiniBrowser/qt/BrowserWindow.h | 66 | ||||
-rw-r--r-- | WebKitTools/MiniBrowser/qt/MiniBrowser.pro | 60 | ||||
-rw-r--r-- | WebKitTools/MiniBrowser/qt/main.cpp | 65 |
6 files changed, 0 insertions, 502 deletions
diff --git a/WebKitTools/MiniBrowser/qt/BrowserView.cpp b/WebKitTools/MiniBrowser/qt/BrowserView.cpp deleted file mode 100644 index c885a39..0000000 --- a/WebKitTools/MiniBrowser/qt/BrowserView.cpp +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - * Copyright (C) 2010 University of Szeged - * - * 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 "BrowserView.h" - -#include <QGraphicsScene> -#include "WKContext.h" - -static QWKPage* createNewPage(QWKPage* page) -{ - return page; -} - -BrowserView::BrowserView(QGraphicsWKView::BackingStoreType backingStoreType, QWidget* parent) - : QGraphicsView(parent) - , m_item(0) - , m_context(WKContextGetSharedProcessContext()) -{ - WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(m_context.get())); - - m_item = new QGraphicsWKView(pageNamespace.get(), backingStoreType, 0); - setScene(new QGraphicsScene(this)); - scene()->addItem(m_item); - - setFrameShape(QFrame::NoFrame); - setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - - connect(m_item, SIGNAL(titleChanged(QString)), this, SLOT(setWindowTitle(QString))); - m_item->page()->setCreateNewPageFunction(createNewPage); -} - -void BrowserView::resizeEvent(QResizeEvent* event) -{ - QGraphicsView::resizeEvent(event); - QRectF rect(QPoint(0, 0), event->size()); - m_item->setGeometry(rect); - scene()->setSceneRect(rect); -} - -void BrowserView::load(const QString& url) -{ - return m_item->load(QUrl::fromUserInput(url)); -} - -QGraphicsWKView* BrowserView::view() const -{ - return m_item; -} diff --git a/WebKitTools/MiniBrowser/qt/BrowserView.h b/WebKitTools/MiniBrowser/qt/BrowserView.h deleted file mode 100644 index 7e8288e..0000000 --- a/WebKitTools/MiniBrowser/qt/BrowserView.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - * Copyright (C) 2010 University of Szeged - * - * 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. - */ - -#ifndef BrowserView_h -#define BrowserView_h - -#include <QGraphicsView> -#include "qgraphicswkview.h" -#include "WKRetainPtr.h" - -class BrowserView : public QGraphicsView { - Q_OBJECT - -public: - BrowserView(QGraphicsWKView::BackingStoreType, QWidget* parent = 0); - virtual ~BrowserView() { delete m_item; } - - void load(const QString&); - QGraphicsWKView* view() const; - -protected: - virtual void resizeEvent(QResizeEvent*); - -private: - QGraphicsWKView* m_item; - WKRetainPtr<WKContextRef> m_context; -}; - -#endif diff --git a/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp b/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp deleted file mode 100644 index bf763a4..0000000 --- a/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp +++ /dev/null @@ -1,183 +0,0 @@ -/* - * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - * Copyright (C) 2010 University of Szeged - * - * 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 "BrowserWindow.h" - -#include "WKPageNamespace.h" - -BrowserWindow::BrowserWindow(QGraphicsWKView::BackingStoreType type) - : m_backingStoreType(type) -{ - setAttribute(Qt::WA_DeleteOnClose); - - m_menu = new QMenuBar(); - m_browser = new BrowserView(m_backingStoreType); - m_addressBar = new QLineEdit(); - - m_menu->addAction("New Window", this, SLOT(newWindow())); - m_menu->addAction("Change User Agent", this, SLOT(showUserAgentDialog())); - - m_menu->addSeparator(); - m_menu->addAction("Quit", this, SLOT(close())); - - m_browser->setFocus(Qt::OtherFocusReason); - - connect(m_addressBar, SIGNAL(returnPressed()), SLOT(changeLocation())); - connect(m_browser->view(), SIGNAL(loadProgress(int)), SLOT(loadProgress(int))); - connect(m_browser->view(), SIGNAL(titleChanged(const QString&)), SLOT(titleChanged(const QString&))); - connect(m_browser->view(), SIGNAL(urlChanged(const QUrl&)), SLOT(urlChanged(const QUrl&))); - - QToolBar* bar = addToolBar("Navigation"); - bar->addAction(m_browser->view()->page()->action(QWKPage::Back)); - bar->addAction(m_browser->view()->page()->action(QWKPage::Forward)); - bar->addAction(m_browser->view()->page()->action(QWKPage::Reload)); - bar->addAction(m_browser->view()->page()->action(QWKPage::Stop)); - bar->addWidget(m_addressBar); - - this->setMenuBar(m_menu); - this->setCentralWidget(m_browser); - - m_browser->setFocus(Qt::OtherFocusReason); - - QShortcut* selectAddressBar = new QShortcut(Qt::CTRL | Qt::Key_L, this); - connect(selectAddressBar, SIGNAL(activated()), this, SLOT(openLocation())); - - resize(960, 640); - show(); -} - -void BrowserWindow::load(const QString& url) -{ - m_addressBar->setText(url); - m_browser->load(url); -} - -BrowserWindow* BrowserWindow::newWindow(const QString& url) -{ - BrowserWindow* window = new BrowserWindow(m_backingStoreType); - window->load(url); - return window; -} - -void BrowserWindow::openLocation() -{ - m_addressBar->selectAll(); - m_addressBar->setFocus(); -} - -void BrowserWindow::changeLocation() -{ - QString string = m_addressBar->text(); - m_browser->load(string); -} - -void BrowserWindow::loadProgress(int progress) -{ - QColor backgroundColor = QApplication::palette().color(QPalette::Base); - QColor progressColor = QColor(120, 180, 240); - QPalette pallete = m_addressBar->palette(); - - if (progress <= 0 || progress >= 100) - pallete.setBrush(QPalette::Base, backgroundColor); - else { - QLinearGradient gradient(0, 0, width(), 0); - gradient.setColorAt(0, progressColor); - gradient.setColorAt(((double) progress) / 100, progressColor); - if (progress != 100) - gradient.setColorAt((double) progress / 100 + 0.001, backgroundColor); - pallete.setBrush(QPalette::Base, gradient); - } - m_addressBar->setPalette(pallete); -} - -void BrowserWindow::titleChanged(const QString& title) -{ - setWindowTitle(title); -} - -void BrowserWindow::urlChanged(const QUrl& url) -{ - m_addressBar->setText(url.toString()); -} - -void BrowserWindow::updateUserAgentList() -{ - QWKPage* page = m_browser->view()->page(); - - QFile file(":/useragentlist.txt"); - - if (file.open(QIODevice::ReadOnly)) { - while (!file.atEnd()) { - QString agent = file.readLine().trimmed(); - if (!m_userAgentList.contains(agent)) - m_userAgentList << agent; - } - file.close(); - } - - Q_ASSERT(!m_userAgentList.isEmpty()); - - if (!(page->customUserAgent().isEmpty() || m_userAgentList.contains(page->customUserAgent()))) - m_userAgentList << page->customUserAgent(); -} - -void BrowserWindow::showUserAgentDialog() -{ - updateUserAgentList(); - - QDialog dialog(this); - dialog.setWindowTitle("Change User Agent"); - dialog.resize(size().width() * 0.7, dialog.size().height()); - QVBoxLayout* layout = new QVBoxLayout(&dialog); - dialog.setLayout(layout); - - QComboBox* combo = new QComboBox(&dialog); - combo->setSizeAdjustPolicy(QComboBox::AdjustToMinimumContentsLength); - combo->setEditable(true); - combo->insertItems(0, m_userAgentList); - layout->addWidget(combo); - - int index = combo->findText(m_browser->view()->page()->customUserAgent()); - combo->setCurrentIndex(index); - - QDialogButtonBox* buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel - , Qt::Horizontal, &dialog); - connect(buttonBox, SIGNAL(accepted()), &dialog, SLOT(accept())); - connect(buttonBox, SIGNAL(rejected()), &dialog, SLOT(reject())); - layout->addWidget(buttonBox); - - if (dialog.exec() && !combo->currentText().isEmpty()) - m_browser->view()->page()->setCustomUserAgent(combo->currentText()); -} - -BrowserWindow::~BrowserWindow() -{ - delete m_addressBar; - delete m_browser; - delete m_menu; -} diff --git a/WebKitTools/MiniBrowser/qt/BrowserWindow.h b/WebKitTools/MiniBrowser/qt/BrowserWindow.h deleted file mode 100644 index fe94d6b..0000000 --- a/WebKitTools/MiniBrowser/qt/BrowserWindow.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - * Copyright (C) 2010 University of Szeged - * - * 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. - */ - -#ifndef BrowserWindow_h -#define BrowserWindow_h - -#include "BrowserView.h" -#include <QStringList> -#include <QtGui> -#include <qgraphicswkview.h> - -class BrowserWindow : public QMainWindow { - Q_OBJECT - -public: - BrowserWindow(QGraphicsWKView::BackingStoreType); - ~BrowserWindow(); - void load(const QString& url); - -public slots: - BrowserWindow* newWindow(const QString& url = "about:blank"); - void openLocation(); - -protected slots: - void changeLocation(); - void loadProgress(int progress); - void titleChanged(const QString&); - void urlChanged(const QUrl&); - void showUserAgentDialog(); - -private: - void updateUserAgentList(); - - BrowserView* m_browser; - QMenuBar* m_menu; - QLineEdit* m_addressBar; - QStringList m_userAgentList; - QGraphicsWKView::BackingStoreType m_backingStoreType; -}; - -#endif diff --git a/WebKitTools/MiniBrowser/qt/MiniBrowser.pro b/WebKitTools/MiniBrowser/qt/MiniBrowser.pro deleted file mode 100644 index 82f6a00..0000000 --- a/WebKitTools/MiniBrowser/qt/MiniBrowser.pro +++ /dev/null @@ -1,60 +0,0 @@ -TEMPLATE = app -TARGET = MiniBrowser - -SOURCES += \ - main.cpp \ - BrowserView.cpp \ - BrowserWindow.cpp \ - -HEADERS += \ - BrowserView.h \ - BrowserWindow.h \ - -CONFIG += uitools - -isEmpty(OUTPUT_DIR): OUTPUT_DIR = ../../.. -include(../../../WebKit.pri) - -INCLUDEPATH += \ - $$PWD/../../../WebKit2/ \ - $$PWD/../../../WebKit2/UIProcess/API/cpp \ - $$PWD/../../../WebKit2/UIProcess/API/C \ - $$PWD/../../../WebKit2/UIProcess/API/qt \ - $$OUTPUT_DIR/include - - -DESTDIR = $$OUTPUT_DIR/bin -!CONFIG(standalone_package): CONFIG -= app_bundle - -QT += network -macx:QT+=xml - -linux-* { - # From Creator's src/rpath.pri: - # Do the rpath by hand since it's not possible to use ORIGIN in QMAKE_RPATHDIR - # this expands to $ORIGIN (after qmake and make), it does NOT read a qmake var. - QMAKE_RPATHDIR = \$\$ORIGIN/../lib $$QMAKE_RPATHDIR - MY_RPATH = $$join(QMAKE_RPATHDIR, ":") - - QMAKE_LFLAGS += -Wl,-z,origin \'-Wl,-rpath,$${MY_RPATH}\' - QMAKE_RPATHDIR = -} else { - QMAKE_RPATHDIR = $$OUTPUT_DIR/lib $$QMAKE_RPATHDIR -} - -symbian { - TARGET.UID3 = 0xA000E543 - TARGET.CAPABILITY = ReadUserData WriteUserData NetworkServices -} - -contains(QT_CONFIG, opengl) { - QT += opengl - DEFINES += QT_CONFIGURED_WITH_OPENGL -} - -# We have to copy the resource file to the build directory -# to use the useragentlist.txt file of QtTestBrowser without -# polluting the source tree. -# The copier is defined in WebKit2/DerivedSources.pro. -RESOURCES += \ - $$OUTPUT_DIR/WebKitTools/MiniBrowser/qt/MiniBrowser.qrc diff --git a/WebKitTools/MiniBrowser/qt/main.cpp b/WebKitTools/MiniBrowser/qt/main.cpp deleted file mode 100644 index 20f4ff5..0000000 --- a/WebKitTools/MiniBrowser/qt/main.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) - * Copyright (C) 2010 University of Szeged - * - * 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 "BrowserWindow.h" -#include <QLatin1String> -#include <QRegExp> -#include <qgraphicswkview.h> -#include <QtGui> - -int main(int argc, char** argv) { - QApplication app(argc, argv); - - QStringList args = QApplication::arguments(); - args.removeAt(0); - - QGraphicsWKView::BackingStoreType backingStoreTypeToUse = QGraphicsWKView::Simple; - int indexOfTiledOption; - if ((indexOfTiledOption = args.indexOf(QRegExp(QLatin1String("-tiled")))) != -1) { - backingStoreTypeToUse = QGraphicsWKView::Tiled; - args.removeAt(indexOfTiledOption); - } - - if (args.isEmpty()) { - QString defaultUrl = QString("file://%1/%2").arg(QDir::homePath()).arg(QLatin1String("index.html")); - if (QDir(defaultUrl).exists()) - args.append(defaultUrl); - else - args.append("http://www.google.com"); - } - - BrowserWindow* window = new BrowserWindow(backingStoreTypeToUse); - window->load(args[0]); - - for (int i = 1; i < args.size(); ++i) - window->newWindow(args[i]); - - app.exec(); - - return 0; -} |