From c8ebd46581b55b1a4845d871b997813d6a3caf2f Mon Sep 17 00:00:00 2001 From: FanPengCheng Date: Fri, 11 Jun 2021 17:48:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=99=BA=E8=83=BD?= =?UTF-8?q?=E9=9A=90=E8=97=8F=E6=A8=A1=E5=BC=8F=E4=B8=8B=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E6=A0=8F=E7=A7=BB=E5=8A=A8=E5=88=B0=E4=B8=80=E4=B8=AA=E5=85=A8?= =?UTF-8?q?=E5=B1=8F=E9=A1=B5=E9=9D=A2=E7=9A=84=E5=B1=8F=E5=B9=95=E4=B8=8A?= =?UTF-8?q?=E5=90=8E=E4=BC=9A=E9=9A=90=E8=97=8F=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移动到全屏页面的屏幕上,本应该先响应后端信号进行隐藏的, 但如果鼠标正好处在任务栏要显示的区域中时,可以省去这个步骤, 因为智能隐藏模式下,鼠标是可以唤出任务栏的 Log: 修复切换屏幕时,任务栏动画概率性跳动问题 Bug: https://pms.uniontech.com/zentao/bug-view-83513.html Change-Id: Ia90ddcede9a7d3f7d624124b5c4c022818f8e572 --- frame/util/multiscreenworker.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/frame/util/multiscreenworker.cpp b/frame/util/multiscreenworker.cpp index 8b98109a3..d92f694e6 100644 --- a/frame/util/multiscreenworker.cpp +++ b/frame/util/multiscreenworker.cpp @@ -461,6 +461,9 @@ void MultiScreenWorker::onHideStateChanged() || ((m_hideMode == HideMode::KeepHidden || m_hideMode == HideMode::SmartHide) && m_hideState == HideState::Show)) { displayAnimation(m_ds.current(), AniAction::Show); } else if ((m_hideMode == HideMode::KeepHidden || m_hideMode == HideMode::SmartHide) && m_hideState == HideState::Hide) { + // 如果鼠标正在任务栏要显示的区域,就可以不用隐藏(相当于智能隐藏被唤醒一样) + if (getDockShowGeometry(m_ds.current(), m_position, m_displayMode).contains(QCursor::pos())) + return; displayAnimation(m_ds.current(), AniAction::Hide); } else { Q_UNREACHABLE();