mirror of
https://bitbucket.org/smil3y/kde-workspace.git
synced 2025-02-23 18:32:50 +00:00
generic: enable thumbnail plugins by default via X-KDE-PluginInfo-EnabledByDefault entry
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
parent
21fa54071c
commit
e7e02d7be7
7 changed files with 25 additions and 6 deletions
|
@ -54,6 +54,7 @@ Name[x-test]=xxFoldersxx
|
|||
Name[zh_CN]=文件夹
|
||||
Name[zh_TW]=資料夾
|
||||
X-KDE-ServiceTypes=ThumbCreator
|
||||
X-KDE-PluginInfo-EnabledByDefault=true
|
||||
MimeType=inode/directory;
|
||||
CacheThumbnail=false
|
||||
HandleSequences=true
|
||||
|
|
|
@ -72,4 +72,5 @@ Name[zh_TW]=影像(GIF、PNG、BMP...)
|
|||
X-KDE-ServiceTypes=ThumbCreator
|
||||
MimeType=image/cgm;image/fax-g3;image/gif;image/jp2;image/png;image/tiff;image/bmp;image/x-dds;image/x-ico;image/x-jng;image/x-pcx;image/x-photo-cd;image/x-portable-bitmap;image/x-portable-graymap;image/x-portable-pixmap;image/x-rgb;image/x-tga;image/x-xbitmap;image/x-xcf;image/x-xpixmap;image/x-sun-raster;image/vnd.adobe.photoshop;image/x-psd;image/x-hdr;image/x-pic;image/vnd.microsoft.icon;image/x-icon;image/x-webp;image/webp;
|
||||
X-KDE-Library=imagethumbnail
|
||||
X-KDE-PluginInfo-EnabledByDefault=true
|
||||
CacheThumbnail=true
|
||||
|
|
|
@ -75,6 +75,7 @@ Name[zh_TW]=JPEG 影像
|
|||
X-KDE-ServiceTypes=ThumbCreator
|
||||
MimeType=image/jpeg;
|
||||
X-KDE-Library=jpegthumbnail
|
||||
X-KDE-PluginInfo-EnabledByDefault=true
|
||||
CacheThumbnail=true
|
||||
Configurable=true
|
||||
ThumbnailerVersion=2
|
||||
|
|
|
@ -75,4 +75,5 @@ Name[zh_TW]=SVG 影像
|
|||
X-KDE-ServiceTypes=ThumbCreator
|
||||
MimeType=image/svg+xml;image/svg+xml-compressed;
|
||||
X-KDE-Library=svgthumbnail
|
||||
X-KDE-PluginInfo-EnabledByDefault=true
|
||||
CacheThumbnail=true
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include <KTemporaryFile>
|
||||
#include <KStandardDirs>
|
||||
#include <KMenu>
|
||||
#include <KServiceTypeTrader>
|
||||
|
||||
#include <kio/copyjob.h>
|
||||
#include <kio/fileundomanager.h>
|
||||
|
@ -369,6 +370,16 @@ void FolderView::init()
|
|||
// Find out about network availability changes
|
||||
connect(Solid::Networking::notifier(), SIGNAL(shouldConnect()), SLOT(networkAvailable()));
|
||||
|
||||
// Find out which thumbnail plugins are enabled by default
|
||||
QStringList enabledByDefault;
|
||||
const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator"));
|
||||
foreach (const KSharedPtr<KService>& service, plugins) {
|
||||
const bool enabled = service->property("X-KDE-PluginInfo-EnabledByDefault", QVariant::Bool).toBool();
|
||||
if (enabled) {
|
||||
enabledByDefault << service->desktopEntryName();
|
||||
}
|
||||
}
|
||||
|
||||
KConfigGroup cg = config();
|
||||
m_customLabel = cg.readEntry("customLabel", "");
|
||||
m_customIconSize = cg.readEntry("customIconSize", 0);
|
||||
|
@ -379,7 +390,7 @@ void FolderView::init()
|
|||
m_iconsLocked = cg.readEntry("iconsLocked", false);
|
||||
m_alignToGrid = cg.readEntry("alignToGrid", false);
|
||||
m_clickToView = cg.readEntry("clickForFolderPreviews", true);
|
||||
m_previewPlugins = cg.readEntry("previewPlugins", QStringList() << "imagethumbnail" << "jpegthumbnail");
|
||||
m_previewPlugins = cg.readEntry("previewPlugins", enabledByDefault);
|
||||
m_sortDirsFirst = cg.readEntry("sortDirsFirst", true);
|
||||
m_sortColumn = cg.readEntry("sortColumn", int(KDirModel::Name));
|
||||
m_sortOrder = sortOrderStringToEnum(cg.readEntry("sortOrder", "ascending"));
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <KIconEffect>
|
||||
#include <KStringHandler>
|
||||
#include <KFileItemDelegate>
|
||||
#include <KServiceTypeTrader>
|
||||
|
||||
#include <KIO/NetAccess>
|
||||
|
||||
|
@ -106,7 +107,13 @@ IconView::IconView(QGraphicsWidget *parent)
|
|||
m_animator = new Animator(this);
|
||||
|
||||
// set a default for popup preview plugins
|
||||
m_popupPreviewPlugins = QStringList() << "imagethumbnail" << "jpegthumbnail";
|
||||
const KService::List plugins = KServiceTypeTrader::self()->query(QLatin1String("ThumbCreator"));
|
||||
foreach (const KSharedPtr<KService>& service, plugins) {
|
||||
const bool enabled = service->property("X-KDE-PluginInfo-EnabledByDefault", QVariant::Bool).toBool();
|
||||
if (enabled) {
|
||||
m_popupPreviewPlugins << service->desktopEntryName();
|
||||
}
|
||||
}
|
||||
|
||||
int size = style()->pixelMetric(QStyle::PM_LargeIconSize);
|
||||
setIconSize(QSize(size, size));
|
||||
|
|
|
@ -253,10 +253,7 @@ void ToolTipWidget::setContent()
|
|||
|
||||
void ToolTipWidget::startPreviewJob()
|
||||
{
|
||||
QStringList plugins;
|
||||
plugins << "imagethumbnail" << "jpegthumbnail";
|
||||
|
||||
m_previewJob = KIO::filePreview(KFileItemList() << m_item, QSize(256, 256), &plugins);
|
||||
m_previewJob = KIO::filePreview(KFileItemList() << m_item, QSize(256, 256));
|
||||
connect(m_previewJob, SIGNAL(gotPreview(KFileItem,QPixmap)), SLOT(gotPreview(KFileItem,QPixmap)));
|
||||
connect(m_previewJob, SIGNAL(finished(KJob*)), SLOT(previewJobFinished(KJob*)));
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue