fix: 修复初始化时任务栏高度显示不正确的问题

任务栏高度需要写入后端的接口,这里的告诉并不是任务栏的实际高度,而应该是预期高度,代码中多处计算需要这个值

修复初始化时任务栏高度显示不正确的问题

Change-Id: Iff607960ba8a418859a31e12580b95213b3f7fa1
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/6297
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: zhangqipeng <zhangqipeng@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
This commit is contained in:
Fanpengcheng 2020-09-25 14:13:30 +08:00 committed by fanpengcheng
parent 5c3fbd1a82
commit 4d1195c834

View File

@ -352,7 +352,6 @@ bool MainWindow::appIsOnDock(const QString &appDesktop)
void MainWindow::resetDragWindow()
{
int dockSize = 0;
switch (m_multiScreenWorker->position()) {
case Dock::Top:
m_dragWidget->setGeometry(0, height() - DRAG_AREA_SIZE, width(), DRAG_AREA_SIZE);
@ -368,11 +367,18 @@ void MainWindow::resetDragWindow()
break;
}
QRect rect = m_multiScreenWorker->dockRect(m_multiScreenWorker->deskScreen()
, m_multiScreenWorker->position()
, HideMode::KeepShowing,
m_multiScreenWorker->displayMode());
// 这个时候屏幕有可能是隐藏的不能直接使用this->width()这种去设置任务栏的高度,而应该保证原值
int dockSize = 0;
if (m_multiScreenWorker->position() == Position::Left
|| m_multiScreenWorker->position() == Position::Right) {
dockSize = this->width();
dockSize = this->width() == 0 ? rect.width() : this->width();
} else {
dockSize = this->height();
dockSize = this->height() == 0 ? rect.height() : this->height();
}
/** FIX ME