Changeset 88161 in webkit


Ignore:
Timestamp:
Jun 6, 2011 6:19:23 AM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-06-06 Barát Tibor <Barat.Tibor@stud.u-szeged.hu>

Reviewed by Csaba Osztrogonác.

[Qt] Implement download feature for QtTestBrowser
https://bugs.webkit.org/show_bug.cgi?id=61865

  • QtTestBrowser/launcherwindow.cpp: (LauncherWindow::LauncherWindow): (LauncherWindow::downloadRequest): (LauncherWindow::fileDownloadFinished):
  • QtTestBrowser/launcherwindow.h:
Location:
trunk/Tools
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Tools/ChangeLog

    r88159 r88161  
     12011-06-06  Barát Tibor  <Barat.Tibor@stud.u-szeged.hu>
     2
     3        Reviewed by Csaba Osztrogonác.
     4
     5        [Qt] Implement download feature for QtTestBrowser
     6        https://bugs.webkit.org/show_bug.cgi?id=61865
     7
     8        * QtTestBrowser/launcherwindow.cpp:
     9        (LauncherWindow::LauncherWindow):
     10        (LauncherWindow::downloadRequest):
     11        (LauncherWindow::fileDownloadFinished):
     12        * QtTestBrowser/launcherwindow.h:
     13
    1142011-06-04  Dominic Cooney  <dominicc@chromium.org>
    215
  • trunk/Tools/QtTestBrowser/launcherwindow.cpp

    r87724 r88161  
    3535#include "launcherwindow.h"
    3636#include "urlloader.h"
     37#include <QFileDialog>
     38#include <QFileInfo>
     39#include <QMessageBox>
     40#include <QNetworkReply>
    3741
    3842const int gExitClickArea = 80;
     
    4751    , m_formatMenuAction(0)
    4852    , m_zoomAnimation(0)
     53    , m_reply(0)
    4954#ifndef QT_NO_LINEEDIT
    5055    , m_findFlag(0)
     
    5964
    6065    createChrome();
     66
     67    connect(page(), SIGNAL(downloadRequested(const QNetworkRequest&)), this, SLOT(downloadRequest(const QNetworkRequest&)));
    6168}
    6269
     
    969976}
    970977
     978void LauncherWindow::downloadRequest(const QNetworkRequest &request)
     979{
     980    QNetworkAccessManager* manager = new QNetworkAccessManager(this);
     981    m_reply = manager->get(request);
     982    connect(m_reply, SIGNAL(finished()), this, SLOT(fileDownloadFinished()));
     983}
     984
     985void LauncherWindow::fileDownloadFinished()
     986{
     987    QFileInfo fileInf(m_reply->request().url().toString());
     988    QString requestFileName = QDir::homePath() + "/" + fileInf.fileName();
     989    QString fileName = QFileDialog::getSaveFileName(this, "Save as...", requestFileName, "All Files (*)");
     990
     991    if (fileName.isEmpty())
     992        return;
     993    if (m_reply->error() != QNetworkReply::NoError)
     994        QMessageBox::critical(this, QString("Download"), QString("Download failed."));
     995    else {
     996        QFile file(fileName);
     997        file.open(QIODevice::WriteOnly);
     998        file.write(m_reply->readAll());
     999        file.close();
     1000        QMessageBox::information(this, QString("Download"), fileName + QString(" downloaded successfully."));
     1001    }
     1002}
     1003
    9711004void LauncherWindow::updateFPS(int fps)
    9721005{
  • trunk/Tools/QtTestBrowser/launcherwindow.h

    r87724 r88161  
    207207
    208208    void printURL(const QUrl&);
     209    void downloadRequest(const QNetworkRequest&);
     210    void fileDownloadFinished();
    209211
    210212public slots:
     
    239241
    240242    QPropertyAnimation* m_zoomAnimation;
     243    QNetworkReply* m_reply;
    241244    QList<QTouchEvent::TouchPoint> m_touchPoints;
    242245    bool m_touchMocking;
Note: See TracChangeset for help on using the changeset viewer.