Changeset 145512 in webkit
- Timestamp:
- Mar 12, 2013 4:11:14 AM (11 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r145508 r145512 1 2013-02-14 Jocelyn Turcotte <jocelyn.turcotte@digia.com> 2 3 [Qt][WK2] Favor QUrl and QString over WTF::String in the Qt API layer 4 https://bugs.webkit.org/show_bug.cgi?id=109468 5 6 Reviewed by Allan Sandfeld Jensen. 7 Signed off for WebKit2 by Benjamin Poulain. 8 9 In preparation for patches using the C API types in some areas, remove the 10 usage of WTF::String on the affected line. 11 12 Use a QUrl for icon URL to avoid unnecessary conversion. 13 Use a QString for the page URL to keep it compatible with WebPageProxy and 14 WebIconDatabase and avoid QUrl parsing. 15 16 * UIProcess/API/qt/qquickwebview.cpp: 17 (QQuickWebViewPrivate::_q_onIconChangedForPageURL): 18 (QQuickWebViewPrivate::updateIcon): 19 (QQuickWebView::emitUrlChangeIfNeeded): 20 (QQuickWebView::icon): 21 * UIProcess/API/qt/qquickwebview_p_p.h: 22 (QQuickWebViewPrivate): 23 * UIProcess/API/qt/qwebiconimageprovider.cpp: 24 (QWebIconImageProvider::iconURLForPageURLInContext): 25 * UIProcess/API/qt/qwebiconimageprovider_p.h: 26 * UIProcess/qt/QtWebIconDatabaseClient.cpp: 27 (WebKit::QtWebIconDatabaseClient::iconForPageURL): 28 (WebKit::QtWebIconDatabaseClient::iconImageForPageURL): 29 (WebKit::QtWebIconDatabaseClient::retainIconForPageURL): 30 (WebKit::QtWebIconDatabaseClient::releaseIconForPageURL): 31 * UIProcess/qt/QtWebIconDatabaseClient.h: 32 (QtWebIconDatabaseClient): 33 1 34 2013-03-12 Manuel Rego Casasnovas <rego@igalia.com> 2 35 -
trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp
r144165 r145512 628 628 void QQuickWebViewPrivate::_q_onIconChangedForPageURL(const QString& pageUrl) 629 629 { 630 if (pageUrl != QString(m_currentUrl))630 if (pageUrl != m_currentUrl) 631 631 return; 632 632 … … 648 648 return; 649 649 650 WTF::StringiconUrl = provider->iconURLForPageURLInContext(m_currentUrl, context.get());650 QUrl iconUrl = provider->iconURLForPageURLInContext(m_currentUrl, context.get()); 651 651 652 652 if (iconUrl == m_iconUrl) … … 1701 1701 Q_D(QQuickWebView); 1702 1702 1703 WTF::String activeUrl = d->webPageProxy->activeURL();1703 QString activeUrl = d->webPageProxy->activeURL(); 1704 1704 if (activeUrl != d->m_currentUrl) { 1705 1705 d->m_currentUrl = activeUrl; … … 1729 1729 { 1730 1730 Q_D(const QQuickWebView); 1731 return QUrl(d->m_iconUrl);1731 return d->m_iconUrl; 1732 1732 } 1733 1733 -
trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h
r142997 r145512 203 203 bool m_renderToOffscreenBuffer; 204 204 bool m_allowAnyHTTPSCertificateForLocalHost; 205 WTF::Stringm_iconUrl;205 QUrl m_iconUrl; 206 206 int m_loadProgress; 207 WTF::String m_currentUrl;207 QString m_currentUrl; 208 208 }; 209 209 -
trunk/Source/WebKit2/UIProcess/API/qt/qwebiconimageprovider.cpp
r132467 r145512 39 39 } 40 40 41 WTF::String QWebIconImageProvider::iconURLForPageURLInContext(const WTF::String &pageURL, QtWebContext* context)41 QUrl QWebIconImageProvider::iconURLForPageURLInContext(const QString &pageURL, QtWebContext* context) 42 42 { 43 43 QtWebIconDatabaseClient* iconDatabase = context->iconDatabase(); 44 WTF::StringiconURL = iconDatabase->iconForPageURL(pageURL);44 QUrl iconURL = iconDatabase->iconForPageURL(pageURL); 45 45 46 46 if (iconURL.isEmpty()) 47 return String();47 return QUrl(); 48 48 49 49 QUrl url; … … 51 51 url.setHost(QWebIconImageProvider::identifier()); 52 52 // Make sure that QML doesn't show cached versions of the previous icon if the icon location changed. 53 url.setPath(QLatin1Char('/') + QString::number(WTF::StringHash::hash(iconURL )));53 url.setPath(QLatin1Char('/') + QString::number(WTF::StringHash::hash(iconURL.toString()))); 54 54 55 55 // FIXME: Use QUrl::DecodedMode when landed in Qt 56 url.setFragment(QString::fromLatin1( QByteArray(QString(pageURL).toUtf8()).toBase64()));56 url.setFragment(QString::fromLatin1(pageURL.toUtf8().toBase64())); 57 57 58 58 // FIXME: We can't know when the icon url is no longer in use, … … 61 61 iconDatabase->retainIconForPageURL(pageURL); 62 62 63 return url .toString(QUrl::FullyEncoded);63 return url; 64 64 } 65 65 -
trunk/Source/WebKit2/UIProcess/API/qt/qwebiconimageprovider_p.h
r118762 r145512 37 37 static QString identifier() { return QStringLiteral("webicon"); } 38 38 39 WTF::String iconURLForPageURLInContext(const WTF::String& pageURL, WebKit::QtWebContext* context);39 QUrl iconURLForPageURLInContext(const QString& pageURL, WebKit::QtWebContext* context); 40 40 virtual QImage requestImage(const QString& id, QSize* size, const QSize& requestedSize); 41 41 }; -
trunk/Source/WebKit2/UIProcess/qt/QtWebIconDatabaseClient.cpp
r132534 r145512 66 66 } 67 67 68 WTF::String QtWebIconDatabaseClient::iconForPageURL(const WTF::String& pageURL)68 QUrl QtWebIconDatabaseClient::iconForPageURL(const QString& pageURL) 69 69 { 70 70 String iconURL; … … 72 72 73 73 if (iconURL.isEmpty()) 74 return String();74 return QUrl(); 75 75 76 76 // Verify that the image data is actually available before reporting back … … 78 78 WebCore::Image* iconImage = m_iconDatabase->imageForPageURL(pageURL); 79 79 if (!iconImage || iconImage->isNull()) 80 return String();80 return QUrl(); 81 81 82 return iconURL;82 return QUrl(iconURL); 83 83 } 84 84 85 QImage QtWebIconDatabaseClient::iconImageForPageURL(const WTF::String& pageURL, const QSize& iconSize)85 QImage QtWebIconDatabaseClient::iconImageForPageURL(const QString& pageURL, const QSize& iconSize) 86 86 { 87 87 MutexLocker locker(m_imageLock); … … 96 96 } 97 97 98 void QtWebIconDatabaseClient::retainIconForPageURL(const String& pageURL)98 void QtWebIconDatabaseClient::retainIconForPageURL(const QString& pageURL) 99 99 { 100 100 m_iconDatabase->retainIconForPageURL(pageURL); 101 101 } 102 102 103 void QtWebIconDatabaseClient::releaseIconForPageURL(const String& pageURL)103 void QtWebIconDatabaseClient::releaseIconForPageURL(const QString& pageURL) 104 104 { 105 105 m_iconDatabase->releaseIconForPageURL(pageURL); -
trunk/Source/WebKit2/UIProcess/qt/QtWebIconDatabaseClient.h
r132467 r145512 34 34 QT_END_NAMESPACE 35 35 36 namespace WTF {37 class String;38 }39 40 36 namespace WebKit { 41 37 … … 50 46 ~QtWebIconDatabaseClient(); 51 47 52 WTF::String iconForPageURL(const WTF::String& pageURL);53 QImage iconImageForPageURL(const WTF::String& pageURL, const QSize& iconSize = QSize(32, 32));48 QUrl iconForPageURL(const QString& pageURL); 49 QImage iconImageForPageURL(const QString& pageURL, const QSize& iconSize = QSize(32, 32)); 54 50 55 void retainIconForPageURL(const WTF::String&);56 void releaseIconForPageURL(const WTF::String&);51 void retainIconForPageURL(const QString&); 52 void releaseIconForPageURL(const QString&); 57 53 58 54 public:
Note: See TracChangeset
for help on using the changeset viewer.