void Source::start() {
  NetworkAccessManager* accessManager = manager()->networkAccessManager();
  QNetworkRequest request(page()->currentFrame()->url());
  reply = accessManager->get(request);

  connect(reply, SIGNAL(finished()), this, SLOT(sourceLoaded()));
}
Beispiel #2
0
void WebPage::setCustomNetworkAccessManager() {
  NetworkAccessManager *manager = new NetworkAccessManager(this);
  manager->setCookieJar(new NetworkCookieJar(this));
  this->setNetworkAccessManager(manager);
  connect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(replyFinished(QNetworkReply *)));
  connect(manager, SIGNAL(sslErrors(QNetworkReply *, QList<QSslError>)),
          this, SLOT(handleSslErrorsForReply(QNetworkReply *, QList<QSslError>)));
}
Beispiel #3
0
void WebPage::setCustomNetworkAccessManager() {
  NetworkAccessManager *manager = new NetworkAccessManager(this);
  manager->setCookieJar(m_manager->cookieJar());
  this->setNetworkAccessManager(manager);
  connect(manager, SIGNAL(sslErrors(QNetworkReply *, QList<QSslError>)),
          this, SLOT(handleSslErrorsForReply(QNetworkReply *, QList<QSslError>)));
  connect(manager, SIGNAL(requestCreated(QByteArray &, QNetworkReply *)),
          SIGNAL(requestCreated(QByteArray &, QNetworkReply *)));
}
Beispiel #4
0
bool SongLoader::LoadRemotePlaylist(const QUrl& url) {
  // This function makes a remote request for the given URL and, if its MIME
  // type corresponds to a known playlist type, saves the content to a
  // temporary file, loads it, and returns true.
  // If the URL does not point to a playlist file we could handle,
  // it returns false.

  NetworkAccessManager manager;
  QNetworkRequest req = QNetworkRequest(url);

  // Getting headers:
  QNetworkReply* const headers_reply = manager.head(req);
  WaitForSignal(headers_reply, SIGNAL(finished()));

  if (headers_reply->error() != QNetworkReply::NoError) {
    qLog(Error) << url.toString() << headers_reply->errorString();
    return false;
  }

  // Now we check if there is a parser that can handle that MIME type.
  QString mime_type =
      headers_reply->header(QNetworkRequest::ContentTypeHeader).toString();

  ParserBase* const parser = playlist_parser_->ParserForMimeType(mime_type);
  if (parser == nullptr) {
    qLog(Debug) << url.toString() << "seems to not be a playlist";
    return false;
  }

  // We know it is a playlist!
  // Getting its contents:
  QNetworkReply* const data_reply = manager.get(req);
  WaitForSignal(data_reply, SIGNAL(finished()));

  if (data_reply->error() != QNetworkReply::NoError) {
    qLog(Error) << url.toString() << data_reply->errorString();
    return false;
  }

  // Save them to a temporary file...
  QString playlist_filename =
      Utilities::SaveToTemporaryFile(data_reply->readAll());
  if (playlist_filename.isEmpty()) {
    qLog(Error) << url.toString()
                << "could not write contents to temporary file";
    return false;
  }

  qLog(Debug) << url.toString() << "with MIME" << mime_type << "loading from"
              << playlist_filename;

  // ...and load it.
  LoadPlaylist(parser, playlist_filename);

  QFile(playlist_filename).remove();
  return true;
}
Beispiel #5
0
void Authenticate::start() {
    QString username = arguments()[0];
    QString password = arguments()[1];

    NetworkAccessManager* networkAccessManager = manager()->networkAccessManager();
    networkAccessManager->setUserName(username);
    networkAccessManager->setPassword(password);

    finish(true);
}
Beispiel #6
0
DownloadItem * DownloadManager::download(const QUrl & from, const QUrl & to)
{
    NetworkAccessManager * manager = NetworkAccessManager::networkAccessManager();
    DownloadItem * item = new DownloadItem(manager->get(QNetworkRequest(from)), to, this);
    beginInsertRows(QModelIndex(), 0, 0);
    m_items.prepend(item);
    endInsertRows();
    emit newItem();
    return item;
}
void Authenticate::start() {
    QString username = arguments()[0];
    QString password = arguments()[1];

    NetworkAccessManager* networkAccessManager = qobject_cast<NetworkAccessManager*>(page()->networkAccessManager());
    networkAccessManager->setUserName(username);
    networkAccessManager->setPassword(password);

    emit finished(new Response(true));
}
void WebView::adBlock()
{
	QAction *action = qobject_cast<QAction *>(sender());
	QString url = action->toolTip().replace("http://", "");
	bool ok;
	QString text = QInputDialog::getText(this, tr("Ad Block"),
		tr("Check URL or pattern to block:"), QLineEdit::Normal, url, &ok);
    if (ok && !text.isEmpty())
	{
		NetworkAccessManager* n = BrowserApplication::networkAccessManager();
		n->blockAd( text );
	}
}
void SettingsDialog::load()
{
    SettingsManager * manager = SettingsManager::settingsManager();
    HistoryManager * historyManager = HistoryManager::historyManager();
    DownloadManager * downloadManager = DownloadManager::downloadManager();
    NetworkAccessManager * networkAccessManager = NetworkAccessManager::networkAccessManager();
    TabManager * tabManager = TabManager::tabManager();
    m_imagesCheckBox->setChecked(manager->isImagesEnabled());
    m_javascriptCheckBox->setChecked(manager->isJavascriptEnabled());
    m_javaCheckBox->setChecked(manager->isJavaEnabled());
    m_pluginsCheckBox->setChecked(manager->isPluginsEnabled());
    m_sansFontComboBox->setCurrentFont(QFont(manager->sansFontFamily()));
    m_serifFontComboBox->setCurrentFont(QFont(manager->serifFontFamily()));
    m_monoFontComboBox->setCurrentFont(QFont(manager->monoFontFamily()));
    m_standardFontSpinBox->setValue(manager->standardFontSize());
    m_monoFontSpinBox->setValue(manager->monoFontSize());
    m_privateBrowsingCheckBox->setChecked(historyManager->isPrivateBrowsingEnabled());
    m_historyExpirationComboBox->setCurrentIndex(2);
    for(int i = 0; i < 8; i++)
    {
        if(m_historyExpirationComboBox->itemData(i).toInt() ==
           historyManager->expirationDays())
        {
            m_historyExpirationComboBox->setCurrentIndex(i);
            break;
        }
    }
    QString path = downloadManager->standardPath();
    if(path.isEmpty())
    {
        m_downloadCheckBox->setChecked(false);
    }
    else
    {
        m_downloadCheckBox->setChecked(true);
        m_downloadLineEdit->setText(path);
    }
    m_cacheSizeSpinBox->setValue(networkAccessManager->cacheSize() / 1024 / 1024);
    QUrl url(networkAccessManager->proxy());
    if(!url.isEmpty())
    {
        m_proxyLineEdit->setText(url.host());
        m_proxySpinBox->setValue(url.port());
    }
    m_addTabPolicyComboBox->setCurrentIndex(tabManager->addTabPolicy() == TabManager::AddAfterLast ? 0 : 1);
}
Beispiel #10
0
WebPage::WebPage(QWidget *parent)
    : KWebPage(parent, KWalletIntegration)
    , _networkAnalyzer(false)
    , _isOnRekonqPage(false)
{
    // ----- handling unsupported content...
    setForwardUnsupportedContent(true);
    connect(this, SIGNAL(unsupportedContent(QNetworkReply *)), this, SLOT(handleUnsupportedContent(QNetworkReply *)));

    // ----- rekonq Network Manager
    NetworkAccessManager *manager = new NetworkAccessManager(this);
    manager->setCache(0);   // disable QtWebKit cache to just use KIO one..

    // set cookieJar window ID..
    if (parent && parent->window())
        manager->setCookieJarWindowId(parent->window()->winId());

    setNetworkAccessManager(manager);

    // activate ssl warnings
    setSessionMetaData("ssl_activate_warnings", "TRUE");

    // Override the 'Accept' header sent by QtWebKit which favors XML over HTML!
    // Setting the accept meta-data to null will force kio_http to use its own
    // default settings for this header.
    setSessionMetaData(QL1S("accept"), QString());

    // ----- Web Plugin Factory
    setPluginFactory(new WebPluginFactory(this));

    // ----- last stuffs
    connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(manageNetworkErrors(QNetworkReply*)));
    connect(this, SIGNAL(downloadRequested(const QNetworkRequest &)), this, SLOT(downloadRequest(const QNetworkRequest &)));
    connect(this, SIGNAL(loadStarted()), this, SLOT(loadStarted()));
    connect(this, SIGNAL(loadFinished(bool)), this, SLOT(loadFinished(bool)));

    // protocol handler signals
    connect(&_protHandler, SIGNAL(downloadUrl(const KUrl &)), this, SLOT(downloadUrl(const KUrl &)));

    connect(rApp->iconManager(), SIGNAL(iconChanged()), mainFrame(), SIGNAL(iconChanged()));
}
void SettingsDialog::save()
{
    SettingsManager * manager = SettingsManager::settingsManager();
    HistoryManager * historyManager = HistoryManager::historyManager();
    DownloadManager * downloadManager = DownloadManager::downloadManager();
    NetworkAccessManager * networkAccessManager = NetworkAccessManager::networkAccessManager();
    TabManager * tabManager = TabManager::tabManager();
    manager->setImagesEnabled(m_imagesCheckBox->isChecked());
    manager->setJavascriptEnabled(m_javascriptCheckBox->isChecked());
    manager->setJavaEnabled(m_javaCheckBox->isChecked());
    manager->setPluginsEnabled(m_pluginsCheckBox->isChecked());
    manager->setSansFontFamily(m_sansFontComboBox->currentFont().family());
    manager->setSerifFontFamily(m_serifFontComboBox->currentFont().family());
    manager->setMonoFontFamily(m_monoFontComboBox->currentFont().family());
    manager->setStandardFontSize(m_standardFontSpinBox->value());
    manager->setMonoFontSize(m_monoFontSpinBox->value());
    historyManager->setPrivateBrowsingEnabled(m_privateBrowsingCheckBox->isChecked());
    int index = m_historyExpirationComboBox->currentIndex();
    int days = m_historyExpirationComboBox->itemData(index).toInt();
    historyManager->setExpirationDays(days);
    QString path;
    if(m_downloadCheckBox->isChecked())
    {
        path = m_downloadLineEdit->text();
    }
    else
    {
        path = "";
    }
    downloadManager->setStandardPath(path);
    networkAccessManager->setCacheSize(m_cacheSizeSpinBox->value() * 1024 * 1024);
    QUrl url;
    if(!m_proxyLineEdit->text().isEmpty())
    {
        url.setHost(m_proxyLineEdit->text());
        url.setPort(m_proxySpinBox->value());
    }
    networkAccessManager->setProxy(url);
    tabManager->setAddTabPolicy(TabManager::AddTabPolicy(m_addTabPolicyComboBox->currentIndex()));
}