]> git.sur5r.net Git - minitube/blobdiff - src/ytsuggester.cpp
New upstream version 2.9
[minitube] / src / ytsuggester.cpp
index 86be974049e66aeb912865224e466cc7f4c8f3fe..9abd92cb8a4cb6d5e9f4c6b7cf1c52649c88fb50 100644 (file)
@@ -19,24 +19,17 @@ along with Minitube.  If not, see <http://www.gnu.org/licenses/>.
 $END_LICENSE */
 
 #include "ytsuggester.h"
-#include "networkaccess.h"
-
-namespace The {
-NetworkAccess* http();
-}
+#include "http.h"
+#include "httputils.h"
 
 YTSuggester::YTSuggester(QObject *parent) : Suggester(parent) {
 
 }
 
 void YTSuggester::suggest(const QString &query) {
-    if (query.startsWith("http")) return;
+    if (query.startsWith(QLatin1String("http"))) return;
 
-#if QT_VERSION >= 0x040800
-    QString locale = QLocale::system().uiLanguages().first();
-#else
-    QString locale = QLocale::system().name().replace("_", "-");
-#endif
+    QString locale = QLocale::system().uiLanguages().at(0);
 
     // case for system locales such as "C"
     if (locale.length() < 2) {
@@ -44,21 +37,22 @@ void YTSuggester::suggest(const QString &query) {
     }
 
     QString url =
-            QString("https://suggestqueries.google.com/complete/search?ds=yt&output=toolbar&hl=%1&q=%2")
+            QStringLiteral("https://suggestqueries.google.com/complete/search?ds=yt&output=toolbar&hl=%1&q=%2")
             .arg(locale, query);
 
-    QObject *reply = The::http()->get(url);
+    QObject *reply = HttpUtils::yt().get(url);
     connect(reply, SIGNAL(data(QByteArray)), SLOT(handleNetworkData(QByteArray)));
 }
 
 void YTSuggester::handleNetworkData(QByteArray response) {
-    QList<Suggestion*> suggestions;
+    QVector<Suggestion*> suggestions;
+    suggestions.reserve(10);
     QXmlStreamReader xml(response);
     while (!xml.atEnd()) {
         xml.readNext();
         if (xml.tokenType() == QXmlStreamReader::StartElement) {
             if (xml.name() == QLatin1String("suggestion")) {
-                QStringRef str = xml.attributes().value("data");
+                QStringRef str = xml.attributes().value(QLatin1String("data"));
                 QString value = str.toString();
                 suggestions << new Suggestion(value);
             }