fix: 修复任务栏拖动到最小尺寸后图标显示异常

原因:在任务栏变到最小尺寸的时候处理了插件区域的尺寸,重新设置了高度为获取到的最大高度引起任务栏高度设置错误
修改方案:在重新设置任务栏尺寸的时候,根据当前任务栏的位置,只处理宽度(任务栏在屏幕上下方向)或高度(任务栏在屏幕左右方向)

Log: 优化任务栏拖动处理逻辑
Influence: 任务栏,拖动任务栏高度发生变化
Task: https://pms.uniontech.com/task-view-154167.html
Change-Id: I23529000ce32ef9f3ce0a358cb560f6aae5e1eeb
This commit is contained in:
donghualin 2022-06-22 21:23:16 +08:00
parent bbfe4ff26c
commit c717a96455

View File

@ -910,9 +910,12 @@ void MultiScreenWorker::onChildSizeChanged()
return;
QSize dockSize = dockRect(m_ds.current(), position(), HideMode::KeepShowing, displayMode()).size();
parent()->setFixedSize(dockSize);
parent()->setGeometry(dockRect(m_ds.current()));
parent()->panel()->setFixedSize(dockSize);
parent()->move(dockRect(m_ds.current()).topLeft());
if (m_position == Dock::Position::Top || m_position == Dock::Position::Bottom)
parent()->setFixedWidth(dockSize.width());
else
parent()->setFixedHeight(dockSize.height());
parent()->panel()->move(0, 0);
parent()->panel()->update();
}
@ -1313,9 +1316,11 @@ void MultiScreenWorker::resetDockScreen()
/**
*parent()setFixedSizesetGeometry可能会导致其大小未改变
*/
parent()->setFixedSize(dockRect(m_ds.current()).size());
parent()->setGeometry(dockRect(m_ds.current()));
parent()->panel()->setFixedSize(dockRect(m_ds.current()).size());
QRect currentRect = dockRect(m_ds.current());
QSize dockSize = currentRect.size();
parent()->setFixedSize(dockSize);
parent()->setGeometry(currentRect);
parent()->panel()->setFixedSize(dockSize);
parent()->panel()->move(0, 0);
}