mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 09:23:03 +00:00
add: command line options
Change-Id: I26057e7ee43a0421dab919c9eba9358e3d3df8e4
This commit is contained in:
parent
2efdc72a0e
commit
d78bdfea90
Notes:
gerrit
2018-06-14 11:11:23 +08:00
Verified+1: <jenkins@deepin.com> Code-Review+2: sbwtw <sbw@sbw.so> Submitted-by: ListenerRi <listenerri@gmail.com> Submitted-at: Thu, 14 Jun 2018 11:11:23 +0800 Reviewed-on: https://cr.deepin.io/35711 Project: dde/dde-dock Branch: refs/heads/master
@ -26,6 +26,7 @@
|
||||
#include "item/pluginsitem.h"
|
||||
|
||||
#include <QDebug>
|
||||
#include <QGSettings>
|
||||
|
||||
DockItemController *DockItemController::INSTANCE = nullptr;
|
||||
|
||||
@ -62,6 +63,13 @@ void DockItemController::setDropping(const bool dropping)
|
||||
m_containerItem->setDropping(dropping);
|
||||
}
|
||||
|
||||
void DockItemController::startLoadPlugins() const
|
||||
{
|
||||
QGSettings gsetting("com.deepin.dde.dock", "/com/deepin/dde/dock/");
|
||||
|
||||
QTimer::singleShot(gsetting.get("delay-plugins-time").toUInt(), m_pluginsInter, &DockPluginsController::startLoader);
|
||||
}
|
||||
|
||||
void DockItemController::refershItemsIcon()
|
||||
{
|
||||
for (auto item : m_itemList)
|
||||
|
@ -38,13 +38,14 @@ class DockItemController : public QObject
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
static DockItemController *instance(QObject *parent);
|
||||
static DockItemController *instance(QObject *parent = nullptr);
|
||||
|
||||
const QList<QPointer<DockItem> > itemList() const;
|
||||
const QList<PluginsItemInterface *> pluginList() const;
|
||||
bool appIsOnDock(const QString &appDesktop) const;
|
||||
bool itemIsInContainer(DockItem * const item) const;
|
||||
void setDropping(const bool dropping);
|
||||
void startLoadPlugins() const;
|
||||
|
||||
signals:
|
||||
void itemInserted(const int index, DockItem *item) const;
|
||||
@ -65,7 +66,7 @@ public slots:
|
||||
void placeholderItemRemoved(PlaceholderItem *item);
|
||||
|
||||
private:
|
||||
explicit DockItemController(QObject *parent = 0);
|
||||
explicit DockItemController(QObject *parent = nullptr);
|
||||
void appItemAdded(const QDBusObjectPath &path, const int index);
|
||||
void appItemRemoved(const QString &appId);
|
||||
void appItemRemoved(AppItem *appItem);
|
||||
|
@ -26,7 +26,6 @@
|
||||
|
||||
#include <QDebug>
|
||||
#include <QDir>
|
||||
#include <QGSettings>
|
||||
|
||||
#define API_VERSION "1.0"
|
||||
|
||||
@ -35,10 +34,6 @@ DockPluginsController::DockPluginsController(DockItemController *itemControllerI
|
||||
m_itemControllerInter(itemControllerInter)
|
||||
{
|
||||
qApp->installEventFilter(this);
|
||||
|
||||
QGSettings gsetting("com.deepin.dde.dock", "/com/deepin/dde/dock/");
|
||||
|
||||
QTimer::singleShot(gsetting.get("delay-plugins-time").toUInt(), this, &DockPluginsController::startLoader);
|
||||
}
|
||||
|
||||
void DockPluginsController::itemAdded(PluginsItemInterface * const itemInter, const QString &itemKey)
|
||||
|
@ -63,10 +63,6 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
DApplication::loadDXcbPlugin();
|
||||
DApplication app(argc, argv);
|
||||
if (!app.setSingleInstance(QString("dde-dock_%1").arg(getuid()))) {
|
||||
qDebug() << "set single instance failed!";
|
||||
return -1;
|
||||
}
|
||||
|
||||
app.setOrganizationName("deepin");
|
||||
app.setApplicationName("dde-dock");
|
||||
@ -79,6 +75,19 @@ int main(int argc, char *argv[])
|
||||
DLogManager::registerConsoleAppender();
|
||||
DLogManager::registerFileAppender();
|
||||
|
||||
QCommandLineOption disablePlugOption(QStringList() << "x" << "disable-plugins", "do not load plugins.");
|
||||
QCommandLineParser parser;
|
||||
parser.setApplicationDescription("DDE Dock");
|
||||
parser.addHelpOption();
|
||||
parser.addVersionOption();
|
||||
parser.addOption(disablePlugOption);
|
||||
parser.process(app);
|
||||
|
||||
if (!app.setSingleInstance(QString("dde-dock_%1").arg(getuid()))) {
|
||||
qDebug() << "set single instance failed!";
|
||||
return -1;
|
||||
}
|
||||
|
||||
qDebug() << "\n\ndde-dock startup";
|
||||
RegisterDdeSession();
|
||||
|
||||
@ -93,5 +102,9 @@ int main(int argc, char *argv[])
|
||||
|
||||
QTimer::singleShot(1, &mw, &MainWindow::launch);
|
||||
|
||||
if (!parser.isSet(disablePlugOption)) {
|
||||
DockItemController::instance()->startLoadPlugins();
|
||||
}
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user