From kde-commits Sat Apr 30 18:34:49 2016 From: David Faure Date: Sat, 30 Apr 2016 18:34:49 +0000 To: kde-commits Subject: [kde-baseapps/frameworks] konqueror: Set -DQT_NO_URL_CAST_FROM_STRING to improve the KUrl -> QUrl po Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=146204130019951 Git commit eed061da7b6bd4763a8e1387abb18d037263fca4 by David Faure. Committed on 30/04/2016 at 18:34. Pushed by dfaure into branch 'frameworks'. Set -DQT_NO_URL_CAST_FROM_STRING to improve the KUrl -> QUrl port M +2 -1 konqueror/CMakeLists.txt M +1 -1 konqueror/settings/konqhtml/css/kcmcss.cpp M +2 -2 konqueror/settings/konqhtml/generalopts.cpp M +3 -3 konqueror/settings/konqhtml/pluginopts.cpp M +1 -1 konqueror/sidebar/sidebar_widget.cpp M +2 -2 konqueror/sidebar/sidebar_widget.h M +2 -2 konqueror/sidebar/web_module/web_module.cpp M +5 -5 konqueror/src/konqmainwindow.cpp M +3 -3 konqueror/src/konqmisc.cpp M +1 -1 konqueror/src/konqsessiondlg.cpp M +1 -1 konqueror/src/konqview.cpp M +2 -2 konqueror/src/konqviewmanager.cpp M +3 -3 konqueror/src/tests/konqhtmltest.cpp M +3 -3 konqueror/src/tests/konqviewmgrtest.cpp M +1 -1 konqueror/src/tests/konqviewtest.cpp http://commits.kde.org/kde-baseapps/eed061da7b6bd4763a8e1387abb18d037263fca4 diff --git a/konqueror/CMakeLists.txt b/konqueror/CMakeLists.txt index 0313243..ba85678 100644 --- a/konqueror/CMakeLists.txt +++ b/konqueror/CMakeLists.txt @@ -43,7 +43,8 @@ if (X11_FOUND) find_package(Qt5 REQUIRED X11Extras) endif(X11_FOUND) = -add_definitions (-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS) +add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS) +add_definitions(-DQT_NO_URL_CAST_FROM_STRING) = configure_file (config-konqueror.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/confi= g-konqueror.h ) = diff --git a/konqueror/settings/konqhtml/css/kcmcss.cpp b/konqueror/setting= s/konqhtml/css/kcmcss.cpp index 440df56..a5efc51 100644 --- a/konqueror/settings/konqhtml/css/kcmcss.cpp +++ b/konqueror/settings/konqhtml/css/kcmcss.cpp @@ -85,7 +85,7 @@ void CSSConfig::load() configWidget->useDefault->setChecked(u =3D=3D "default"); configWidget->useUser->setChecked(u =3D=3D "user"); configWidget->useAccess->setChecked(u =3D=3D "access"); - configWidget->urlRequester->setUrl(group.readEntry("SheetName")); + configWidget->urlRequester->setUrl(QUrl::fromUserInput(group.readEntry= ("SheetName"))); = group =3D c->group("Font"); customDialog->basefontsize->setEditText(QString::number(group.readEntr= y("BaseSize", 12))); diff --git a/konqueror/settings/konqhtml/generalopts.cpp b/konqueror/settin= gs/konqhtml/generalopts.cpp index 38e978a..b217a27 100644 --- a/konqueror/settings/konqhtml/generalopts.cpp +++ b/konqueror/settings/konqhtml/generalopts.cpp @@ -168,7 +168,7 @@ static StartPage urlToStartPageEnum(const QString &star= tUrl) void KKonqGeneralOptions::load() { KConfigGroup userSettings(m_pConfig, "UserSettings"); - homeURL->setUrl(userSettings.readEntry("HomeURL", DEFAULT_HOMEPAGE)); + homeURL->setUrl(QUrl(userSettings.readEntry("HomeURL", DEFAULT_HOMEPAG= E))); const QString startUrl =3D readStartUrlFromProfile(); const StartPage startPage =3D urlToStartPageEnum(startUrl); const int startComboIndex =3D m_startCombo->findData(startPage); @@ -232,7 +232,7 @@ static void updateWebbrowsingProfile(const QString &hom= eUrl, StartPage startPage url =3D homeUrl; // Check if we can determine the mimetype of that URL; profile loa= ding requires the mimetype to be known // This handles the case of a local directory, at least. - KMimeType::Ptr mime =3D KMimeType::findByUrl(url); + KMimeType::Ptr mime =3D KMimeType::findByUrl(QUrl(url)); if (mime && !mime->isDefault()) { serviceType =3D mime->name(); } else { diff --git a/konqueror/settings/konqhtml/pluginopts.cpp b/konqueror/setting= s/konqhtml/pluginopts.cpp index d1dfc9b..9970ecb 100644 --- a/konqueror/settings/konqhtml/pluginopts.cpp +++ b/konqueror/settings/konqhtml/pluginopts.cpp @@ -468,7 +468,7 @@ void KPluginOptions::dirSelect(QListWidgetItem *item) int cur =3D m_widget.dirList->currentRow(); m_widget.dirDown->setEnabled(item !=3D 0 && cur < m_widget.dirList->co= unt() - 1); m_widget.dirUp->setEnabled(item !=3D 0 && cur > 0); - m_widget.dirEdit->setUrl(item !=3D 0 ? item->text() : QString()); + m_widget.dirEdit->setUrl(item !=3D 0 ? QUrl::fromUserInput(item->text(= )) : QUrl()); } = void KPluginOptions::dirNew() @@ -476,14 +476,14 @@ void KPluginOptions::dirNew() m_widget.dirList->insertItem(0, QString()); m_widget.dirList->setCurrentRow(0); dirSelect(m_widget.dirList->currentItem()); - m_widget.dirEdit->setUrl(QString()); + m_widget.dirEdit->setUrl(QUrl()); m_widget.dirEdit->setFocus(); change(); } = void KPluginOptions::dirRemove() { - m_widget.dirEdit->setUrl(QString()); + m_widget.dirEdit->setUrl(QUrl()); delete m_widget.dirList->currentItem(); m_widget.dirRemove->setEnabled(false); m_widget.dirUp->setEnabled(false); diff --git a/konqueror/sidebar/sidebar_widget.cpp b/konqueror/sidebar/sideb= ar_widget.cpp index 9a00b4d..505e457 100644 --- a/konqueror/sidebar/sidebar_widget.cpp +++ b/konqueror/sidebar/sidebar_widget.cpp @@ -498,7 +498,7 @@ bool Sidebar_Widget::addButton(const QString &desktopFi= leName, int pos) const QString icon =3D configGroup.readEntry("Icon", QString()); const QString name =3D configGroup.readEntry("Name", QString()); const QString comment =3D configGroup.readEntry("Comment", QString()); - const QString url =3D configGroup.readPathEntry("URL", QString()); + const QUrl url(configGroup.readPathEntry("URL", QString())); const QString lib =3D configGroup.readEntry("X-KDE-KonqSidebarModule"); = if (pos =3D=3D -1) { // TODO handle insertion diff --git a/konqueror/sidebar/sidebar_widget.h b/konqueror/sidebar/sidebar= _widget.h index e658831..65b0a6e 100644 --- a/konqueror/sidebar/sidebar_widget.h +++ b/konqueror/sidebar/sidebar_widget.h @@ -46,7 +46,7 @@ public: } ButtonInfo(const KSharedConfig::Ptr &configFile_, const QString &file_, - const QString &url_, const QString &lib, + const QUrl &url_, const QString &lib, const QString &dispName_, const QString &iconName_) : configFile(configFile_), file(file_), dock(NULL), @@ -62,7 +62,7 @@ public: QPointer dock; KonqSidebarModule *module; KonqSidebarPlugin *m_plugin; - QString URL; // TODO remove + QUrl URL; // TODO remove (after removing the place where it's used) QString libName; QString displayName; QString iconName; diff --git a/konqueror/sidebar/web_module/web_module.cpp b/konqueror/sideba= r/web_module/web_module.cpp index b8f3ed7..6980a8b 100644 --- a/konqueror/sidebar/web_module/web_module.cpp +++ b/konqueror/sidebar/web_module/web_module.cpp @@ -110,7 +110,7 @@ KonqSideBarWebModule::KonqSideBarWebModule(QWidget *par= ent, const KConfigGroup & SIGNAL(submitFormRequest(const char*,QString,QByteArray,QStrin= g,QString,QString))); = reloadTimeout =3D configGroup.readEntry("Reload", 0); - _url =3D configGroup.readPathEntry("URL", QString()); + _url =3D QUrl(configGroup.readPathEntry("URL", QString())); _htmlPart->openUrl(_url); // Must load this delayed QTimer::singleShot(0, this, SLOT(loadFavicon())); @@ -230,7 +230,7 @@ bool KHTMLSideBar::urlSelected(const QString &url, int = button, { if (button =3D=3D Qt::LeftButton) { if (_target.toLower() =3D=3D "_self") { - openUrl(url); + openUrl(completeURL(url)); } else if (_target.toLower() =3D=3D "_blank") { emit openUrlNewWindow(completeURL(url).url(), args); } else { // isEmpty goes here too diff --git a/konqueror/src/konqmainwindow.cpp b/konqueror/src/konqmainwindo= w.cpp index ceffe76..d92a771 100644 --- a/konqueror/src/konqmainwindow.cpp +++ b/konqueror/src/konqmainwindow.cpp @@ -671,7 +671,7 @@ void KonqMainWindow::openUrl(KonqView *_view, const QUr= l &_url, if (mimeType =3D=3D "application/x-desktop") { KDesktopFile df(url.toLocalFile()); if (df.hasLinkType()) { - url =3D df.readUrl(); + url =3D QUrl(df.readUrl()); mimeType.clear(); // to be determined again } } @@ -2867,18 +2867,18 @@ void KonqMainWindow::slotUp() req.newTabInFront =3D !req.newTabInFront; } = - const QString &url =3D m_currentView->upUrl().url(); + const QUrl &url =3D m_currentView->upUrl(); if (goKeyboardState & Qt::ControlModifier) { - openFilteredUrl(url, req); + openFilteredUrl(url.url(), req); } else if (goMouseState & Qt::MidButton) { if (KonqSettings::mmbOpensTab()) { - openFilteredUrl(url, req); + openFilteredUrl(url.url(), req); } else { KonqMainWindow *mw =3D KonqMisc::createNewWindow(url); mw->show(); } } else { - openFilteredUrl(url, false); + openFilteredUrl(url.url(), false); } } = diff --git a/konqueror/src/konqmisc.cpp b/konqueror/src/konqmisc.cpp index 918cf09..9be622c 100644 --- a/konqueror/src/konqmisc.cpp +++ b/konqueror/src/konqmisc.cpp @@ -194,9 +194,9 @@ QUrl KonqMisc::konqFilteredURL(KonqMainWindow *parent, = const QString &_url, cons if (KUriFilter::self()->filterUri(data)) { if (data.uriType() =3D=3D KUriFilterData::Error) { if (data.errorMsg().isEmpty()) { - return KParts::BrowserRun::makeErrorUrl(KIO::ERR_MALFO= RMED_URL, _url, _url); + return KParts::BrowserRun::makeErrorUrl(KIO::ERR_MALFO= RMED_URL, _url, QUrl(_url)); } else { - return KParts::BrowserRun::makeErrorUrl(KIO::ERR_SLAVE= _DEFINED, data.errorMsg(), _url); + return KParts::BrowserRun::makeErrorUrl(KIO::ERR_SLAVE= _DEFINED, data.errorMsg(), QUrl(_url)); } } else { return data.uri(); @@ -205,7 +205,7 @@ QUrl KonqMisc::konqFilteredURL(KonqMainWindow *parent, = const QString &_url, cons = // NOTE: a valid URL like http://kde.org always passes the filteri= ng test. // As such, this point could only be reached when _url is NOT a va= lid URL. - return KParts::BrowserRun::makeErrorUrl(KIO::ERR_MALFORMED_URL, _u= rl, _url); + return KParts::BrowserRun::makeErrorUrl(KIO::ERR_MALFORMED_URL, _u= rl, QUrl(_url)); } = const bool isKnownAbout =3D (_url =3D=3D QLatin1String("about:blank") diff --git a/konqueror/src/konqsessiondlg.cpp b/konqueror/src/konqsessiondl= g.cpp index 4c50289..734986d 100644 --- a/konqueror/src/konqsessiondlg.cpp +++ b/konqueror/src/konqsessiondlg.cpp @@ -88,7 +88,7 @@ KonqSessionDlg::KonqSessionDlg(KonqViewManager *manager, = QWidget *parent) d->m_pModel =3D new KDirModel(d->m_pListView); d->m_pModel->sort(QDir::Name); d->m_pModel->dirLister()->setDirOnlyMode(true); - d->m_pModel->dirLister()->openUrl(dir); + d->m_pModel->dirLister()->openUrl(QUrl::fromLocalFile(dir)); d->m_pListView->setModel(d->m_pModel); = d->m_pListView->setMinimumSize(d->m_pListView->sizeHint()); diff --git a/konqueror/src/konqview.cpp b/konqueror/src/konqview.cpp index d680dcb..22386f5 100644 --- a/konqueror/src/konqview.cpp +++ b/konqueror/src/konqview.cpp @@ -657,7 +657,7 @@ void KonqView::setIconURL(const QUrl &iconURL) // It does not set the tab's favIcon. { if (KonqSettings::enableFavicon()) { - KonqPixmapProvider::self()->setIconForUrl(m_sLocationBarURL, iconU= RL.url()); + KonqPixmapProvider::self()->setIconForUrl(QUrl(m_sLocationBarURL),= iconURL); m_bGotIconURL =3D true; } } diff --git a/konqueror/src/konqviewmanager.cpp b/konqueror/src/konqviewmana= ger.cpp index 7d46132..b9077ee 100644 --- a/konqueror/src/konqviewmanager.cpp +++ b/konqueror/src/konqviewmanager.cpp @@ -1270,9 +1270,9 @@ void KonqViewManager::loadItem(const KConfigGroup &cf= g, KonqFrameContainerBase * const QString urlKey =3D QString::fromLatin1("URL").prepen= d(prefix); QUrl url; if (cfg.hasKey(urlKey)) { - url =3D cfg.readPathEntry(urlKey, QString::fromLatin1(= "about:blank")); + url =3D QUrl(cfg.readPathEntry(urlKey, QString::fromLa= tin1("about:blank"))); } else if (urlKey =3D=3D "empty_URL") { // old stuff, not = in use anymore - url =3D QString::fromLatin1("about:blank"); + url =3D QUrl(QString::fromLatin1("about:blank")); } else { url =3D defaultURL; } diff --git a/konqueror/src/tests/konqhtmltest.cpp b/konqueror/src/tests/kon= qhtmltest.cpp index 2c3a321..2e60d41 100644 --- a/konqueror/src/tests/konqhtmltest.cpp +++ b/konqueror/src/tests/konqhtmltest.cpp @@ -82,7 +82,7 @@ private Q_SLOTS: void loadDirectory() // #164495 { KonqMainWindow mainWindow; - mainWindow.openUrl(0, QUrl(QDir::homePath()), "text/html"); + mainWindow.openUrl(0, QUrl::fromLocalFile(QDir::homePath()), "text= /html"); KonqView *view =3D mainWindow.currentView(); kDebug() << "Waiting for first completed signal"; QVERIFY(QTest::kWaitForSignal(view, SIGNAL(viewCompleted(KonqView*= )), 20000)); // error calls openUrlRequest @@ -125,7 +125,7 @@ private Q_SLOTS: QVERIFY(origTempFile.open()); origTempFile.write( "" ); @@ -135,7 +135,7 @@ private Q_SLOTS: = KonqMainWindow *mainWindow =3D new KonqMainWindow; const QString profile =3D QStandardPaths::locate(QStandardPaths::G= enericDataLocation, "konqueror/profiles/webbrowsing"); - mainWindow->viewManager()->loadViewProfileFromFile(profile, "webbr= owsing", QUrl(origFile)); + mainWindow->viewManager()->loadViewProfileFromFile(profile, "webbr= owsing", QUrl::fromLocalFile(origFile)); QCOMPARE(KMainWindow::memberList().count(), 1); KonqView *view =3D mainWindow->currentView(); QVERIFY(view); diff --git a/konqueror/src/tests/konqviewmgrtest.cpp b/konqueror/src/tests/= konqviewmgrtest.cpp index d2a7312..408197e 100644 --- a/konqueror/src/tests/konqviewmgrtest.cpp +++ b/konqueror/src/tests/konqviewmgrtest.cpp @@ -680,7 +680,7 @@ static void loadFileManagementProfile(KonqMainWindow &m= ainWindow) const QString profile =3D QStandardPaths::locate(QStandardPaths::Gener= icDataLocation, "konqueror/profiles/filemanagement"); QVERIFY(!profile.isEmpty()); const QString path =3D QDir::homePath(); - mainWindow.viewManager()->loadViewProfileFromFile(profile, "filemanage= ment", QUrl(path)); + mainWindow.viewManager()->loadViewProfileFromFile(profile, "filemanage= ment", QUrl::fromLocalFile(path)); QCOMPARE(DebugFrameVisitor::inspect(&mainWindow), QString("MC(FT[F])."= )); // mainWindow, splitter, frame, tab widget, one frame QCOMPARE(mainWindow.locationBarURL(), path); QCOMPARE(mainWindow.currentView()->locationBarURL(), path); @@ -728,10 +728,10 @@ void ViewMgrTest::testLoadOldProfile() QVERIFY(!profileSrc.isEmpty()); const QString profile =3D profileSrc + ".copy"; // KonqViewManager fixes up the old profile, so let's make a copy of i= t first. - KIO::FileCopyJob *job =3D KIO::file_copy(profileSrc, profile, -1, KIO:= :Overwrite); + KIO::FileCopyJob *job =3D KIO::file_copy(QUrl::fromLocalFile(profileSr= c), QUrl::fromLocalFile(profile), -1, KIO::Overwrite); QVERIFY(job->exec()); const QString path =3D QDir::homePath(); - mainWindow.viewManager()->loadViewProfileFromFile(profile, "filemanage= ment", QUrl(path)); + mainWindow.viewManager()->loadViewProfileFromFile(profile, "filemanage= ment", QUrl::fromLocalFile(path)); QCOMPARE(DebugFrameVisitor::inspect(&mainWindow), QString("MC(FT[F])."= )); // mainWindow, splitter, frame, tab widget, one frame QCOMPARE(mainWindow.locationBarURL(), path); QCOMPARE(mainWindow.currentView()->locationBarURL(), path); diff --git a/konqueror/src/tests/konqviewtest.cpp b/konqueror/src/tests/kon= qviewtest.cpp index bc4c15c..79dc2f1 100644 --- a/konqueror/src/tests/konqviewtest.cpp +++ b/konqueror/src/tests/konqviewtest.cpp @@ -53,7 +53,7 @@ private Q_SLOTS: { // Related to the previous test; ensure we keep the same viewmode = when switching between folders KonqMainWindow mainWindow; - mainWindow.openUrl(0, QUrl(QDir::homePath())); + mainWindow.openUrl(0, QUrl::fromLocalFile(QDir::homePath())); KonqView *view =3D mainWindow.currentView(); QVERIFY(view); QPointer part =3D view->part();