mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-02 15:45:21 +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::requestCancelPreview, m_appInter, &DBusDock::CancelPreviewWindow);
|
||||
|
||||
connect(this, &DockItemManager::requestUpdateDockItem, it, &AppItem::requestUpdateEntryGeometries);
|
||||
|
||||
m_itemList.append(it);
|
||||
}
|
||||
|
||||
|
@ -54,6 +54,8 @@ signals:
|
||||
void requestWindowAutoHide(const bool autoHide) const;
|
||||
void requestRefershWindowVisible() const;
|
||||
|
||||
void requestUpdateDockItem() const;
|
||||
|
||||
public slots:
|
||||
void refershItemsIcon();
|
||||
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_retryObtainIconTimer, &QTimer::timeout, this, &AppItem::refershIcon, Qt::QueuedConnection);
|
||||
|
||||
connect(this, &AppItem::requestUpdateEntryGeometries, this, &AppItem::updateWindowIconGeometries);
|
||||
|
||||
updateWindowInfos(m_itemEntryInter->windowInfos());
|
||||
refershIcon();
|
||||
|
||||
|
@ -63,6 +63,8 @@ signals:
|
||||
void requestCancelPreview() const;
|
||||
void dragReady(QWidget *dragWidget);
|
||||
|
||||
void requestUpdateEntryGeometries() const;
|
||||
|
||||
private:
|
||||
void moveEvent(QMoveEvent *e) override;
|
||||
void paintEvent(QPaintEvent *e) override;
|
||||
|
@ -722,6 +722,7 @@ void MultiScreenWorker::onRequestUpdateFrontendGeometry()
|
||||
#endif
|
||||
|
||||
m_dockInter->SetFrontendWindowRect(int(rect.x()), int(rect.y()), uint(rect.width()), uint(rect.height()));
|
||||
emit requestUpdateDockEntry();
|
||||
}
|
||||
|
||||
void MultiScreenWorker::onRequestNotifyWindowManager()
|
||||
|
@ -287,6 +287,8 @@ signals:
|
||||
void requestStopShowAni();
|
||||
void requestStopHideAni();
|
||||
|
||||
void requestUpdateDockEntry();
|
||||
|
||||
public slots:
|
||||
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::displayModeChanegd, this, &MainWindow::adjustShadowMask, Qt::QueuedConnection);
|
||||
|
||||
connect(m_multiScreenWorker, &MultiScreenWorker::requestUpdateDockEntry, DockItemManager::instance(), &DockItemManager::requestUpdateDockItem);
|
||||
|
||||
// 更新拖拽区域
|
||||
connect(m_multiScreenWorker, &MultiScreenWorker::requestUpdateDragArea, this, &MainWindow::resetDragWindow);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user