diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager.cpp b/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager.cpp index 32f0165b1b..57e23f41fb 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager.cpp +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager.cpp @@ -58,7 +58,7 @@ void EmblemIconWorker::onFetchEmblemIcons(const QList> &loca return; const auto &emblemPlugins = ExtensionPluginManager::instance().emblemPlugins(); - std::for_each(emblemPlugins.begin(), emblemPlugins.end(), [&localPaths, this](QSharedPointer plugin) { + std::for_each(emblemPlugins.begin(), emblemPlugins.end(), [&localPaths, this](DFMEXT::DFMExtEmblemIconPlugin *plugin) { Q_ASSERT(plugin); for (const auto &path : localPaths) { if (this->parseLocationEmblemIcons(path.first, path.second, plugin)) @@ -74,13 +74,13 @@ void EmblemIconWorker::onClearCache() pluginCaches.clear(); } -bool EmblemIconWorker::parseLocationEmblemIcons(const QString &path, int count, QSharedPointer plugin) +bool EmblemIconWorker::parseLocationEmblemIcons(const QString &path, int count, dfmext::DFMExtEmblemIconPlugin *plugin) { const auto &emblem { plugin->locationEmblemIcons(path.toStdString(), count) }; const std::vector &layouts { emblem.emblems() }; // why add `pluginCaches` ? // To clear the emblem icon when a plugin returns an empty `DFMExtEmblemIconLayout`. - quint64 pluginAddr { reinterpret_cast(plugin.data()) }; + quint64 pluginAddr { reinterpret_cast(plugin) }; const CacheType &curPluginCache { pluginCaches.value(pluginAddr) }; if (layouts.empty() && curPluginCache.value(path).isEmpty()) return false; @@ -108,9 +108,9 @@ bool EmblemIconWorker::parseLocationEmblemIcons(const QString &path, int count, return true; } -void EmblemIconWorker::parseEmblemIcons(const QString &path, int count, QSharedPointer plugin) +void EmblemIconWorker::parseEmblemIcons(const QString &path, int count, dfmext::DFMExtEmblemIconPlugin *plugin) { - quint64 pluginAddr { reinterpret_cast(plugin.data()) }; + quint64 pluginAddr { reinterpret_cast(plugin) }; if (hasCachedByOtherLocationEmblem(path, pluginAddr)) return; const std::vector &icons { plugin->emblemIcons(path.toStdString()) }; diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager_p.h b/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager_p.h index 7ed23517b3..b01548729f 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager_p.h +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/emblemimpl/extensionemblemmanager_p.h @@ -29,9 +29,9 @@ public Q_SLOTS: private: // method 2 - bool parseLocationEmblemIcons(const QString &path, int count, QSharedPointer plugin); + bool parseLocationEmblemIcons(const QString &path, int count, DFMEXT::DFMExtEmblemIconPlugin *plugin); // method 1 - void parseEmblemIcons(const QString &path, int count, QSharedPointer plugin); + void parseEmblemIcons(const QString &path, int count, DFMEXT::DFMExtEmblemIconPlugin *plugin); CacheType makeCache(const QString &path, const QList> &group); void makeLayoutGroup(const std::vector &layouts, QList> *group); diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.cpp b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.cpp index a6d31b7bc7..857bf8509d 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.cpp +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.cpp @@ -183,15 +183,15 @@ void ExtensionPluginManagerPrivate::doAppendExt(const QString &name, ExtPluginLo DFMEXT::DFMExtMenuPlugin *menu { loader->resolveMenuPlugin() }; if (menu) - menuMap.insert(name, QSharedPointer(menu)); + menuMap.insert(name, menu); DFMEXT::DFMExtEmblemIconPlugin *emblem { loader->resolveEmblemPlugin() }; if (emblem) - emblemMap.insert(name, QSharedPointer(emblem)); + emblemMap.insert(name, emblem); DFMEXT::DFMExtWindowPlugin *window { loader->resolveWindowPlugin() }; if (window) - windowMap.insert(name, QSharedPointer(window)); + windowMap.insert(name, window); } void ExtensionPluginManagerPrivate::release() @@ -237,21 +237,21 @@ bool ExtensionPluginManager::exists(ExtensionPluginManager::ExtensionType type) return false; } -QList> ExtensionPluginManager::menuPlugins() const +QList ExtensionPluginManager::menuPlugins() const { Q_D(const ExtensionPluginManager); return d->menuMap.values(); } -QList> ExtensionPluginManager::emblemPlugins() const +QList ExtensionPluginManager::emblemPlugins() const { Q_D(const ExtensionPluginManager); return d->emblemMap.values(); } -QList> ExtensionPluginManager::windowPlugins() const +QList ExtensionPluginManager::windowPlugins() const { Q_D(const ExtensionPluginManager); diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.h b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.h index c4863c2781..2aef557434 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.h +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager.h @@ -38,9 +38,9 @@ class ExtensionPluginManager : public QObject InitState currentState() const; bool initialized() const; bool exists(ExtensionType type) const; - QList> menuPlugins() const; - QList> emblemPlugins() const; - QList> windowPlugins() const; + QList menuPlugins() const; + QList emblemPlugins() const; + QList windowPlugins() const; DFMEXT::DFMExtMenuProxy *pluginMenuProxy() const; diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager_p.h b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager_p.h index 3cecaf0083..3adf744455 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager_p.h +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/pluginsload/extensionpluginmanager_p.h @@ -41,9 +41,9 @@ class ExtensionPluginManagerPrivate : public QObject Q_DECLARE_PUBLIC(ExtensionPluginManager) public: - using DFMExtMenuPluginMap = QMap>; - using DFMExtEmblemPluginMap = QMap>; - using DFMExtWindowPluginMap = QMap>; + using DFMExtMenuPluginMap = QMap; + using DFMExtEmblemPluginMap = QMap; + using DFMExtWindowPluginMap = QMap; explicit ExtensionPluginManagerPrivate(ExtensionPluginManager *qq); ~ExtensionPluginManagerPrivate() override; diff --git a/src/plugins/common/dfmplugin-utils/extensionimpl/windowimpl/extensionwindowsmanager.cpp b/src/plugins/common/dfmplugin-utils/extensionimpl/windowimpl/extensionwindowsmanager.cpp index 7a48d91e56..9d431cbfe0 100644 --- a/src/plugins/common/dfmplugin-utils/extensionimpl/windowimpl/extensionwindowsmanager.cpp +++ b/src/plugins/common/dfmplugin-utils/extensionimpl/windowimpl/extensionwindowsmanager.cpp @@ -23,9 +23,9 @@ static void doActionForEveryPlugin(std::function plugin) { + std::for_each(windowPlugins.begin(), windowPlugins.end(), [callback](DFMEXT::DFMExtWindowPlugin *plugin) { Q_ASSERT(plugin); - callback(plugin.data()); + callback(plugin); }); }