Merge remote-tracking branch 'origin/4.13' into master

Change-Id: I565a0bd783dc80b53d4715fdc153dba1f1d3f7c7
This commit is contained in:
Eike Ziller
2020-10-05 09:05:23 +02:00
31 changed files with 468 additions and 18 deletions

View File

@@ -138,10 +138,22 @@ AndroidManifestEditorIconContainerWidget::AndroidManifestEditorIconContainerWidg
m_iconButtons.push_back(xxxhIconButton);
iconLayout->addStretch(3);
auto handleIconModification = [this] {
bool iconsMaybeChanged = hasIcons();
if (m_hasIcons != iconsMaybeChanged)
iconsModified();
m_hasIcons = iconsMaybeChanged;
};
for (auto &&iconButton : m_iconButtons) {
connect(masterIconButton, &AndroidManifestEditorIconWidget::iconSelected,
iconButton, &AndroidManifestEditorIconWidget::setIconFromPath);
connect(iconButton, &AndroidManifestEditorIconWidget::iconRemoved,
this, handleIconModification);
connect(iconButton, &AndroidManifestEditorIconWidget::iconSelected,
this, handleIconModification);
}
connect(masterIconButton, &AndroidManifestEditorIconWidget::iconSelected,
this, handleIconModification);
}
void AndroidManifestEditorIconContainerWidget::setIconFileName(const QString &name)
@@ -160,6 +172,7 @@ void AndroidManifestEditorIconContainerWidget::loadIcons()
iconButton->setTargetIconFileName(m_iconFileName + imageSuffix);
iconButton->loadIcon();
}
m_hasIcons = hasIcons();
}
bool AndroidManifestEditorIconContainerWidget::hasIcons() const

View File

@@ -42,7 +42,7 @@ class AndroidManifestEditorIconWidget;
class AndroidManifestEditorIconContainerWidget : public QWidget
{
Q_DECLARE_TR_FUNCTIONS(Android::Internal::AndroidManifestEditorIconContainerWidget)
Q_OBJECT
public:
explicit AndroidManifestEditorIconContainerWidget(QWidget *parent,
@@ -54,6 +54,9 @@ public:
private:
QVector<AndroidManifestEditorIconWidget *> m_iconButtons;
QString m_iconFileName = QLatin1String("icon");
bool m_hasIcons = false;
signals:
void iconsModified();
};
} // namespace Internal

View File

@@ -502,6 +502,8 @@ QGroupBox *AndroidManifestEditorWidget::createAdvancedGroupBox(QWidget *parent)
this, &AndroidManifestEditorWidget::setInvalidServiceInfo);
connect(m_splashButtons, &SplashIconContainerWidget::splashScreensModified,
this, [this]() { setDirty(); });
connect(m_iconButtons, &AndroidManifestEditorIconContainerWidget::iconsModified,
this, [this]() { setDirty(); });
formLayout->addRow(m_advanvedTabWidget);
otherGroupBox->setLayout(formLayout);

View File

@@ -177,9 +177,11 @@ public:
// Wait for updated documents
for (TextEditor::BaseTextEditor *editor : qAsConst(editors)) {
QElapsedTimer t;
t.start();
const QString filePath = editor->document()->filePath().toString();
if (auto parser = BuiltinEditorDocumentParser::get(filePath)) {
forever {
while (t.elapsed() < 2000) {
if (Document::Ptr document = parser->document()) {
if (document->editorRevision() == 2)
break;
@@ -193,6 +195,7 @@ public:
const auto cppDocumentParser = BuiltinEditorDocumentParser::get(cppFile);
QVERIFY(cppDocumentParser);
const Document::Ptr cppDocument = cppDocumentParser->document();
QCOMPARE(cppDocument->editorRevision(), 2);
QVERIFY(checkDiagsnosticMessages(cppDocument));
const auto hDocumentParser = BuiltinEditorDocumentParser::get(hFile);

View File

@@ -2179,6 +2179,9 @@ QSet<QPair<QString, QString> > TextToModelMerger::qrcMapping() const
QList<QmlTypeData> TextToModelMerger::getQMLSingletons() const
{
QList<QmlTypeData> list;
if (!m_scopeChain || !m_scopeChain->document())
return list;
const QmlJS::Imports *imports = m_scopeChain->context()->imports(
m_scopeChain->document().data());