fix(item): panel will hide when show menu on keep always hide mode

Change-Id: I2fa44721a8a3bb954d6b0dd6a1560ab575d3b922
This commit is contained in:
kirigaya 2017-11-21 16:11:36 +08:00 committed by 石博文
parent 73e4a2c85f
commit c29bca64ad
Notes: Deepin Code Review 2017-11-24 14:51:05 +08:00
Verified+1: Anonymous Coward #1000004
Code-Review+2: 石博文 <sbw@sbw.so>
Submitted-by: 石博文 <sbw@sbw.so>
Submitted-at: Fri, 24 Nov 2017 14:51:05 +0800
Reviewed-on: https://cr.deepin.io/28730
Project: dde/dde-dock
Branch: refs/heads/master

View File

@ -188,11 +188,16 @@ void DockItem::showContextMenu()
DBusMenu *menuInter = new DBusMenu(path.path(), this);
connect(menuInter, &DBusMenu::ItemInvoked, this, &DockItem::invokedMenuItem);
connect(menuInter, &DBusMenu::MenuUnregistered, this, &DockItem::requestRefershWindowVisible);
connect(menuInter, &DBusMenu::MenuUnregistered, menuInter, &DBusMenu::deleteLater, Qt::QueuedConnection);
connect(menuInter, &DBusMenu::MenuUnregistered, this, [=] {
emit requestRefershWindowVisible();
emit requestWindowAutoHide(true);
menuInter->deleteLater();
});
menuInter->ShowMenu(QString(QJsonDocument(menuObject).toJson()));
hidePopup();
emit requestWindowAutoHide(false);
}
void DockItem::showHoverTips()
@ -252,8 +257,6 @@ void DockItem::popupWindowAccept()
disconnect(PopupWindow.data(), &DockPopupWindow::accept, this, &DockItem::popupWindowAccept);
hidePopup();
emit requestWindowAutoHide(true);
}
void DockItem::showPopupApplet(QWidget * const applet)