mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 09:23:03 +00:00
fix: 任务栏位置调整左边,摩灯窗口还是从底部出来
删除定时器,使用监听Dock的FrontendWindowRect change信号,重新更新IconGeometries Log: 魔灯效果下,窗口效果跟随任务栏位置 Bug: https://pms.uniontech.com/zentao/bug-view-44736.html Change-Id: I5e6caf7872dc37c34d8e5fb99676d7b35940dff3
This commit is contained in:
parent
4d34d4152d
commit
5f36df4430
@ -48,6 +48,8 @@ DockItemManager::DockItemManager(QObject *parent)
|
|||||||
connect(it, &AppItem::requestPreviewWindow, m_appInter, &DBusDock::PreviewWindow);
|
connect(it, &AppItem::requestPreviewWindow, m_appInter, &DBusDock::PreviewWindow);
|
||||||
connect(it, &AppItem::requestCancelPreview, m_appInter, &DBusDock::CancelPreviewWindow);
|
connect(it, &AppItem::requestCancelPreview, m_appInter, &DBusDock::CancelPreviewWindow);
|
||||||
|
|
||||||
|
connect(this, &DockItemManager::requestUpdateDockItem, it, &AppItem::requestUpdateEntryGeometries);
|
||||||
|
|
||||||
m_itemList.append(it);
|
m_itemList.append(it);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -54,6 +54,8 @@ signals:
|
|||||||
void requestWindowAutoHide(const bool autoHide) const;
|
void requestWindowAutoHide(const bool autoHide) const;
|
||||||
void requestRefershWindowVisible() const;
|
void requestRefershWindowVisible() const;
|
||||||
|
|
||||||
|
void requestUpdateDockItem() const;
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void refershItemsIcon();
|
void refershItemsIcon();
|
||||||
void sortPluginItems();
|
void sortPluginItems();
|
||||||
|
@ -116,6 +116,8 @@ AppItem::AppItem(const QDBusObjectPath &entry, QWidget *parent)
|
|||||||
connect(m_updateIconGeometryTimer, &QTimer::timeout, this, &AppItem::updateWindowIconGeometries, Qt::QueuedConnection);
|
connect(m_updateIconGeometryTimer, &QTimer::timeout, this, &AppItem::updateWindowIconGeometries, Qt::QueuedConnection);
|
||||||
connect(m_retryObtainIconTimer, &QTimer::timeout, this, &AppItem::refershIcon, Qt::QueuedConnection);
|
connect(m_retryObtainIconTimer, &QTimer::timeout, this, &AppItem::refershIcon, Qt::QueuedConnection);
|
||||||
|
|
||||||
|
connect(this, &AppItem::requestUpdateEntryGeometries, this, &AppItem::updateWindowIconGeometries);
|
||||||
|
|
||||||
updateWindowInfos(m_itemEntryInter->windowInfos());
|
updateWindowInfos(m_itemEntryInter->windowInfos());
|
||||||
refershIcon();
|
refershIcon();
|
||||||
|
|
||||||
|
@ -63,6 +63,8 @@ signals:
|
|||||||
void requestCancelPreview() const;
|
void requestCancelPreview() const;
|
||||||
void dragReady(QWidget *dragWidget);
|
void dragReady(QWidget *dragWidget);
|
||||||
|
|
||||||
|
void requestUpdateEntryGeometries() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void moveEvent(QMoveEvent *e) override;
|
void moveEvent(QMoveEvent *e) override;
|
||||||
void paintEvent(QPaintEvent *e) override;
|
void paintEvent(QPaintEvent *e) override;
|
||||||
|
@ -722,6 +722,7 @@ void MultiScreenWorker::onRequestUpdateFrontendGeometry()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
m_dockInter->SetFrontendWindowRect(int(rect.x()), int(rect.y()), uint(rect.width()), uint(rect.height()));
|
m_dockInter->SetFrontendWindowRect(int(rect.x()), int(rect.y()), uint(rect.width()), uint(rect.height()));
|
||||||
|
emit requestUpdateDockEntry();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MultiScreenWorker::onRequestNotifyWindowManager()
|
void MultiScreenWorker::onRequestNotifyWindowManager()
|
||||||
|
@ -287,6 +287,8 @@ signals:
|
|||||||
void requestStopShowAni();
|
void requestStopShowAni();
|
||||||
void requestStopHideAni();
|
void requestStopHideAni();
|
||||||
|
|
||||||
|
void requestUpdateDockEntry();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void onAutoHideChanged(bool autoHide);
|
void onAutoHideChanged(bool autoHide);
|
||||||
/**
|
/**
|
||||||
|
@ -296,6 +296,8 @@ void MainWindow::initConnections()
|
|||||||
connect(m_multiScreenWorker, &MultiScreenWorker::opacityChanged, this, &MainWindow::setMaskAlpha, Qt::QueuedConnection);
|
connect(m_multiScreenWorker, &MultiScreenWorker::opacityChanged, this, &MainWindow::setMaskAlpha, Qt::QueuedConnection);
|
||||||
connect(m_multiScreenWorker, &MultiScreenWorker::displayModeChanegd, this, &MainWindow::adjustShadowMask, Qt::QueuedConnection);
|
connect(m_multiScreenWorker, &MultiScreenWorker::displayModeChanegd, this, &MainWindow::adjustShadowMask, Qt::QueuedConnection);
|
||||||
|
|
||||||
|
connect(m_multiScreenWorker, &MultiScreenWorker::requestUpdateDockEntry, DockItemManager::instance(), &DockItemManager::requestUpdateDockItem);
|
||||||
|
|
||||||
// 更新拖拽区域
|
// 更新拖拽区域
|
||||||
connect(m_multiScreenWorker, &MultiScreenWorker::requestUpdateDragArea, this, &MainWindow::resetDragWindow);
|
connect(m_multiScreenWorker, &MultiScreenWorker::requestUpdateDragArea, this, &MainWindow::resetDragWindow);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user