mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
bugfix: can't launch launcher in win7 & xp mode
Change-Id: I4c90abd8de2dc748f39e582dc956635b2b212088
This commit is contained in:
parent
814cff724b
commit
c4310c4a93
Notes:
Deepin Code Review
2016-06-14 07:19:47 +00:00
Verified+1: Anonymous Coward #1000004 Code-Review+2: <ding465398889@163.com> Submitted-by: <ding465398889@163.com> Submitted-at: Mon, 31 Aug 2015 09:45:52 +0800 Reviewed-on: https://cr.deepin.io/6665 Project: dde/dde-dock Branch: refs/heads/master
@ -2,8 +2,8 @@
|
||||
|
||||
LauncherItem::LauncherItem(QWidget *parent) : AbstractDockItem(parent)
|
||||
{
|
||||
resize(m_dmd->getNormalItemWidth(), m_dmd->getItemHeight());
|
||||
connect(m_dmd, &DockModeData::dockModeChanged, this, &LauncherItem::changeDockMode);
|
||||
resize(m_dockModeData->getNormalItemWidth(), m_dockModeData->getItemHeight());
|
||||
connect(m_dockModeData, &DockModeData::dockModeChanged, this, &LauncherItem::changeDockMode);
|
||||
|
||||
m_appIcon = new AppIcon(this);
|
||||
m_appIcon->resize(height(), height());
|
||||
@ -30,11 +30,27 @@ void LauncherItem::leaveEvent(QEvent *)
|
||||
hidePreview();
|
||||
}
|
||||
|
||||
void LauncherItem::mousePressEvent(QMouseEvent *event)
|
||||
{
|
||||
if (m_dockModeData->getDockMode() != Dock::FashionMode)
|
||||
slotMousePress(event);
|
||||
else
|
||||
AbstractDockItem::mousePressEvent(event);
|
||||
}
|
||||
|
||||
void LauncherItem::mouseReleaseEvent(QMouseEvent *event)
|
||||
{
|
||||
if (m_dockModeData->getDockMode() != Dock::FashionMode)
|
||||
slotMouseRelease(event);
|
||||
else
|
||||
AbstractDockItem::mouseReleaseEvent(event);
|
||||
}
|
||||
|
||||
void LauncherItem::slotMousePress(QMouseEvent *event)
|
||||
{
|
||||
emit mousePress(event);
|
||||
|
||||
hidePreview();
|
||||
hidePreview(0);
|
||||
}
|
||||
|
||||
void LauncherItem::slotMouseRelease(QMouseEvent *event)
|
||||
@ -46,20 +62,20 @@ void LauncherItem::slotMouseRelease(QMouseEvent *event)
|
||||
|
||||
void LauncherItem::changeDockMode(Dock::DockMode, Dock::DockMode)
|
||||
{
|
||||
resize(m_dmd->getNormalItemWidth(), m_dmd->getItemHeight());
|
||||
resize(m_dockModeData->getNormalItemWidth(), m_dockModeData->getItemHeight());
|
||||
updateIcon();
|
||||
}
|
||||
|
||||
void LauncherItem::updateIcon()
|
||||
{
|
||||
m_appIcon->setIcon("deepin-launcher");
|
||||
m_appIcon->resize(m_dmd->getAppIconSize(), m_dmd->getAppIconSize());
|
||||
m_appIcon->resize(m_dockModeData->getAppIconSize(), m_dockModeData->getAppIconSize());
|
||||
reanchorIcon();
|
||||
}
|
||||
|
||||
void LauncherItem::reanchorIcon()
|
||||
{
|
||||
switch (m_dmd->getDockMode()) {
|
||||
switch (m_dockModeData->getDockMode()) {
|
||||
case Dock::FashionMode:
|
||||
m_appIcon->move((width() - m_appIcon->width()) / 2, 0);
|
||||
break;
|
||||
|
@ -26,6 +26,8 @@ public:
|
||||
protected:
|
||||
void enterEvent(QEvent *);
|
||||
void leaveEvent(QEvent *);
|
||||
void mousePressEvent(QMouseEvent *event);
|
||||
void mouseReleaseEvent(QMouseEvent *event);
|
||||
|
||||
private slots:
|
||||
void slotMousePress(QMouseEvent *event);
|
||||
@ -37,7 +39,7 @@ private:
|
||||
void reanchorIcon();
|
||||
|
||||
private:
|
||||
DockModeData * m_dmd = DockModeData::instance();
|
||||
DockModeData * m_dockModeData = DockModeData::instance();
|
||||
AppIcon * m_appIcon = NULL;
|
||||
QProcess * m_launcherProcess = NULL;
|
||||
QString m_menuInterfacePath = "";
|
||||
|
Loading…
x
Reference in New Issue
Block a user