forked from qt-creator/qt-creator
Merge remote-tracking branch 'origin/2.7' into 2.8
This commit is contained in:
@@ -101,6 +101,8 @@ AndroidRunner::AndroidRunner(QObject *parent,
|
||||
QByteArray which = psProc.readAll();
|
||||
m_isBusyBox = which.startsWith("busybox");
|
||||
|
||||
m_checkPIDTimer.setInterval(1000);
|
||||
|
||||
connect(&m_adbLogcatProcess, SIGNAL(readyReadStandardOutput()), SLOT(logcatReadStandardOutput()));
|
||||
connect(&m_adbLogcatProcess, SIGNAL(readyReadStandardError()), SLOT(logcatReadStandardError()));
|
||||
connect(&m_checkPIDTimer, SIGNAL(timeout()), SLOT(checkPID()));
|
||||
@@ -154,8 +156,10 @@ void AndroidRunner::checkPID()
|
||||
return;
|
||||
QByteArray psOut = runPs();
|
||||
m_processPID = extractPid(m_packageName, psOut);
|
||||
if (m_processPID == -1)
|
||||
if (m_processPID == -1) {
|
||||
m_checkPIDTimer.stop();
|
||||
emit remoteProcessFinished(tr("\n\n'%1' died.").arg(m_packageName));
|
||||
}
|
||||
}
|
||||
|
||||
void AndroidRunner::forceStop()
|
||||
@@ -186,7 +190,6 @@ void AndroidRunner::start()
|
||||
{
|
||||
m_adbLogcatProcess.start(m_adb, selector() << _("logcat"));
|
||||
m_wasStarted = false;
|
||||
m_checkPIDTimer.start(1000); // check if the application is alive every 1 seconds
|
||||
QtConcurrent::run(this, &AndroidRunner::asyncStart);
|
||||
}
|
||||
|
||||
@@ -300,6 +303,8 @@ void AndroidRunner::asyncStart()
|
||||
return;
|
||||
}
|
||||
|
||||
QMetaObject::invokeMethod(&m_checkPIDTimer, "start");
|
||||
|
||||
m_wasStarted = true;
|
||||
if (m_useCppDebugger) {
|
||||
// This will be funneled to the engine to actually start and attach
|
||||
|
@@ -195,7 +195,8 @@ void KdePasteProtocol::list()
|
||||
{
|
||||
QTC_ASSERT(!m_listReply, return);
|
||||
|
||||
QString url = QLatin1String(hostUrlC) + QLatin1String("api/xml/all");
|
||||
// Trailing slash is important to prevent redirection.
|
||||
QString url = QLatin1String(hostUrlC) + QLatin1String("api/xml/all/");
|
||||
m_listReply = httpGet(url);
|
||||
connect(m_listReply, SIGNAL(finished()), this, SLOT(listFinished()));
|
||||
if (debug)
|
||||
|
@@ -317,12 +317,21 @@ static inline ParseState nextClosingState(ParseState current, const QStringRef &
|
||||
return ParseError;
|
||||
}
|
||||
|
||||
static inline QStringList parseLists(QIODevice *io)
|
||||
static inline QStringList parseLists(QIODevice *io, QString *errorMessage)
|
||||
{
|
||||
enum { maxEntries = 200 }; // Limit the archive, which can grow quite large.
|
||||
|
||||
QStringList rc;
|
||||
QXmlStreamReader reader(io);
|
||||
// Read answer and delete part up to the main table since the input form has
|
||||
// parts that can no longer be parsed using XML parsers (<input type="text" x-webkit-speech />)
|
||||
QByteArray data = io->readAll();
|
||||
const int tablePos = data.indexOf("<table class=\"maintable\" cellspacing=\"0\">");
|
||||
if (tablePos < 0) {
|
||||
*errorMessage = QLatin1String("Could not locate beginning of table.");
|
||||
return rc;
|
||||
}
|
||||
data.remove(0, tablePos);
|
||||
QXmlStreamReader reader(data);
|
||||
ParseState state = OutSideTable;
|
||||
int tableRow = 0;
|
||||
int tableColumn = 0;
|
||||
@@ -410,6 +419,8 @@ static inline QStringList parseLists(QIODevice *io)
|
||||
break;
|
||||
} // switch reader state
|
||||
}
|
||||
if (reader.hasError())
|
||||
*errorMessage = QString::fromLatin1("Error at line %1:%2").arg(reader.lineNumber()).arg(reader.errorString());
|
||||
return rc;
|
||||
}
|
||||
|
||||
@@ -420,7 +431,10 @@ void PasteBinDotComProtocol::listFinished()
|
||||
if (debug)
|
||||
qDebug() << "listFinished: error" << m_listReply->errorString();
|
||||
} else {
|
||||
QStringList list = parseLists(m_listReply);
|
||||
QString errorMessage;
|
||||
const QStringList list = parseLists(m_listReply, &errorMessage);
|
||||
if (list.isEmpty())
|
||||
qWarning().nospace() << "Failed to read list from " << PASTEBIN_BASE << ':' << errorMessage;
|
||||
emit listDone(name(), list);
|
||||
if (debug)
|
||||
qDebug() << list;
|
||||
|
@@ -155,12 +155,12 @@ MetaInfo {
|
||||
|
||||
Type {
|
||||
name: "QtQuick.Controls.Slider"
|
||||
icon: ":/componentsplugin/images/sliderh16.png"
|
||||
icon: ":/componentsplugin/images/slider16.png"
|
||||
|
||||
ItemLibraryEntry {
|
||||
name: "Slider (Horizontal)"
|
||||
category: "Qt Quick - Controls"
|
||||
libraryIcon: ":/componentsplugin/images/sliderh.png"
|
||||
libraryIcon: ":/componentsplugin/images/slider.png"
|
||||
version: "1.0"
|
||||
requiredImport: "QtQuick.Controls"
|
||||
}
|
||||
|
Reference in New Issue
Block a user