Design mode: Avoid mimedatabase run on currentfile.

Use IFile::mimetype instead to find editors that
use design mode.
Acked-by: Lasse Holmstedt <lasse.holmstedt@nokia.com>
This commit is contained in:
Friedemann Kleint
2010-05-07 14:49:57 +02:00
parent d7d4c982e4
commit 45f5035031

View File

@@ -214,12 +214,8 @@ void DesignMode::currentEditorChanged(Core::IEditor *editor)
Core::ICore *core = Core::ICore::instance(); Core::ICore *core = Core::ICore::instance();
if (editor && editor->file()) { if (editor && editor->file()) {
MimeType type = core->mimeDatabase()->findByFile(QFileInfo(editor->file()->fileName())); const QString mimeType = editor->file()->mimeType();
QString mimeType = editor->file()->mimeType(); if (!mimeType.isEmpty()) {
if (type && !type.type().isEmpty())
mimeType = type.type();
foreach (DesignEditorInfo *editorInfo, d->m_editors) { foreach (DesignEditorInfo *editorInfo, d->m_editors) {
foreach (const QString &mime, editorInfo->mimeTypes) { foreach (const QString &mime, editorInfo->mimeTypes) {
if (mime == mimeType) { if (mime == mimeType) {
@@ -229,9 +225,10 @@ void DesignMode::currentEditorChanged(Core::IEditor *editor)
setEnabled(true); setEnabled(true);
break; break;
} }
} } // foreach mime
if (mimeEditorAvailable) if (mimeEditorAvailable)
break; break;
} // foreach editorInfo
} }
} }
if (d->m_currentEditor) if (d->m_currentEditor)