fix: obtain opacity value too frequently when startup

https://github.com/linuxdeepin/internal-discussion/issues/858

Change-Id: I71b82e2ecebe1a3f9437403d2ee90df7c42d0c08
This commit is contained in:
listenerri 2019-01-16 10:23:01 +08:00
parent 2bc2f2e831
commit 176d58e9f9
Notes: gerrit 2019-01-16 12:56:01 +08:00
Verified+1: <jenkins@deepin.com>
Code-Review+2: listenerri <listenerri@gmail.com>
Submitted-by: listenerri <listenerri@gmail.com>
Submitted-at: Wed, 16 Jan 2019 12:56:01 +0800
Reviewed-on: https://cr.deepin.io/41356
Project: dde/dde-dock
Branch: refs/heads/master
2 changed files with 2 additions and 22 deletions

View File

@ -59,7 +59,6 @@ DockSettings::DockSettings(QWidget *parent)
, m_displayInter(new DBusDisplay(this))
, m_dockInter(new DBusDock("com.deepin.dde.daemon.Dock", "/com/deepin/dde/daemon/Dock", QDBusConnection::sessionBus(), this))
, m_itemController(DockItemController::instance(this))
, m_appearanceInter(new Appearance("com.deepin.daemon.Appearance", "/com/deepin/daemon/Appearance", QDBusConnection::sessionBus(), this))
{
m_primaryRect = m_displayInter->primaryRect();
m_primaryRawRect = m_displayInter->primaryRawRect();
@ -76,8 +75,6 @@ DockSettings::DockSettings(QWidget *parent)
DockItem::setDockDisplayMode(m_displayMode);
qApp->setProperty(PROP_DISPLAY_MODE, QVariant::fromValue(m_displayMode));
m_appearanceInter->setSync(false, false);
m_fashionModeAct.setCheckable(true);
m_efficientModeAct.setCheckable(true);
m_topPosAct.setCheckable(true);
@ -130,15 +127,6 @@ DockSettings::DockSettings(QWidget *parent)
m_settingsMenu.addAction(hideSubMenuAct);
m_settingsMenu.setTitle("Settings Menu");
auto onDaemonIsvalid = [=] (bool isValid) {
if (isValid) {
onOpacityChanged(m_appearanceInter->opacity());
}
else {
m_appearanceInter->startServiceProcess();
}
};
connect(&m_settingsMenu, &WhiteMenu::triggered, this, &DockSettings::menuActionClicked);
connect(m_dockInter, &DBusDock::PositionChanged, this, &DockSettings::onPositionChanged);
connect(m_dockInter, &DBusDock::IconSizeChanged, this, &DockSettings::iconSizeChanged);
@ -146,6 +134,7 @@ DockSettings::DockSettings(QWidget *parent)
connect(m_dockInter, &DBusDock::HideModeChanged, this, &DockSettings::hideModeChanged, Qt::QueuedConnection);
connect(m_dockInter, &DBusDock::HideStateChanged, this, &DockSettings::hideStateChanged);
connect(m_dockInter, &DBusDock::ServiceRestarted, this, &DockSettings::resetFrontendGeometry);
connect(m_dockInter, &DBusDock::OpacityChanged, this, &DockSettings::onOpacityChanged);
connect(m_itemController, &DockItemController::itemInserted, this, &DockSettings::dockItemCountChanged, Qt::QueuedConnection);
connect(m_itemController, &DockItemController::itemRemoved, this, &DockSettings::dockItemCountChanged, Qt::QueuedConnection);
@ -155,12 +144,6 @@ DockSettings::DockSettings(QWidget *parent)
connect(m_displayInter, &DBusDisplay::ScreenHeightChanged, this, &DockSettings::primaryScreenChanged, Qt::QueuedConnection);
connect(m_displayInter, &DBusDisplay::ScreenWidthChanged, this, &DockSettings::primaryScreenChanged, Qt::QueuedConnection);
connect(m_appearanceInter, &Appearance::serviceStartFinished, this, [=] {
onDaemonIsvalid(m_appearanceInter->isValid());
});
connect(m_appearanceInter, &Appearance::serviceValidChanged, this, onDaemonIsvalid);
connect(m_appearanceInter, &Appearance::OpacityChanged, this, &DockSettings::onOpacityChanged);
DApplication *app = qobject_cast<DApplication*>(qApp);
if (app) {
connect(app, &DApplication::iconThemeChanged, this, &DockSettings::gtkIconThemeChanged);
@ -170,7 +153,7 @@ DockSettings::DockSettings(QWidget *parent)
updateForbidPostions();
resetFrontendGeometry();
onDaemonIsvalid(m_appearanceInter->isValid());
QTimer::singleShot(0, this, [=] {onOpacityChanged(m_dockInter->opacity());});
}
DockSettings &DockSettings::Instance()

View File

@ -27,7 +27,6 @@
#include "dbus/dbusdisplay.h"
#include "controller/dockitemcontroller.h"
#include <com_deepin_daemon_appearance.h>
#include <com_deepin_dde_daemon_dock.h>
#include <QAction>
@ -41,7 +40,6 @@
DWIDGET_USE_NAMESPACE
using namespace Dock;
using Appearance = com::deepin::daemon::Appearance;
using DBusDock = com::deepin::dde::daemon::Dock;
class WhiteMenu : public QMenu
@ -160,7 +158,6 @@ private:
DBusDisplay *m_displayInter;
DBusDock *m_dockInter;
DockItemController *m_itemController;
Appearance* m_appearanceInter;
};
#endif // DOCKSETTINGS_H