Move mimetype definitions to plugin specs

- Avoids the hassle of QRC files and manually registering mime types
- Avoids performance regressions because of mime types that are
  registered after mime database has been used
- Makes it technically possible to detect that a disabled plugin could
  handle a mime type if it was enabled

Change-Id: I373008b1b56e9c6b4853055f20b3eeb112a6eff9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Eike Ziller
2017-02-08 14:31:55 +01:00
parent ca1d1dfbe2
commit d64e17ad55
120 changed files with 596 additions and 650 deletions

View File

@@ -15,5 +15,16 @@
\"Category\" : \"Device Support\",
\"Description\" : \"Support for deployment to and execution on Android Devices.\",
\"Url\" : \"http://necessitas.kde.org\",
$$dependencyList
$$dependencyList,
\"Mimetypes\" : \"
<?xml version=\'1.0\'?>
<mime-info xmlns=\'http://www.freedesktop.org/standards/shared-mime-info\'>
<mime-type type=\'application/vnd.google.android.android_manifest\'>
<comment>Android manifest file</comment>
<sub-class-of type=\'application/xml\'/>
<glob pattern=\'AndroidManifest.xml\'/>
</mime-type>
</mime-info>
\"
}

View File

@@ -1,8 +0,0 @@
<?xml version="1.0"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="application/vnd.google.android.android_manifest">
<comment>Android manifest file</comment>
<sub-class-of type="application/xml"/>
<glob pattern="AndroidManifest.xml"/>
</mime-type>
</mime-info>

View File

@@ -5,6 +5,5 @@
<file>images/androiddevicesmall.png</file>
<file>images/androiddevicesmall@2x.png</file>
<file>images/download.png</file>
<file>Android.mimetypes.xml</file>
</qresource>
</RCC>

View File

@@ -52,8 +52,6 @@
#include <qtsupport/qtversionmanager.h>
#include <utils/mimetypes/mimedatabase.h>
#include <QtPlugin>
using namespace ProjectExplorer;
@@ -81,8 +79,6 @@ bool AndroidPlugin::initialize(const QStringList &arguments, QString *errorMessa
addAutoReleasedObject(new Internal::JavaEditorFactory);
KitManager::registerKitInformation(new Internal::AndroidGdbServerKitInformation);
Utils::MimeDatabase::addMimeTypes(QLatin1String(":/android/Android.mimetypes.xml"));
addAutoReleasedObject(new Internal::AndroidManifestEditorFactory);
connect(KitManager::instance(), &KitManager::kitsLoaded,