fix: dockSize计算错误

dockSize是从dbus获取的 ,这个值的范围是40~100,无论系统是否开缩放,也就是说这是个前端认为的值,
当前端计算时,直接用这个值即可,但是当需要获取任务栏的真实高度时,需要将这个值乘缩放比例,才能获取到任务栏的真实高度。

Log: 修复任务栏高度计算错误。
Change-Id: Ifd88ad1abb9d21fb84b30a2737adb77c30e1cb80
This commit is contained in:
Zhang Qipeng 2021-01-20 15:04:33 +08:00
parent d2d80218ee
commit ff4aa3aa05

View File

@ -1562,7 +1562,7 @@ MainWindow *MultiScreenWorker::parent()
* @param screenName
* @param pos
* @param displaymode
* @param withoutScale true:; false:()
* @param withoutScale true:; false:()
* @return QRect
*/
QRect MultiScreenWorker::getDockShowGeometry(const QString &screenName, const Position &pos, const DisplayMode &displaymode, bool withoutScale)
@ -1570,7 +1570,7 @@ QRect MultiScreenWorker::getDockShowGeometry(const QString &screenName, const Po
QRect rect;
const double ratio = withoutScale ? 1 : qApp->devicePixelRatio();
const int margin = (displaymode == DisplayMode::Fashion) ? 10 : 0;
const int dockSize = static_cast<int>((displaymode == DisplayMode::Fashion ? m_dockInter->windowSizeFashion() : m_dockInter->windowSizeEfficient()) * (withoutScale ? ratio : 1));
const int dockSize = static_cast<int>((displaymode == DisplayMode::Fashion ? m_dockInter->windowSizeFashion() : m_dockInter->windowSizeEfficient()) * (withoutScale ? qApp->devicePixelRatio() : 1));
for (Monitor *monitor : m_mtrInfo.validMonitor()) {
if (monitor->name() == screenName) {
switch (pos) {
@ -1610,7 +1610,7 @@ QRect MultiScreenWorker::getDockShowGeometry(const QString &screenName, const Po
* @param screenName
* @param pos
* @param displaymode
* @param withoutScale true:; false:()
* @param withoutScale true:; false:()
* @return QRect
*/
QRect MultiScreenWorker::getDockHideGeometry(const QString &screenName, const Position &pos, const DisplayMode &displaymode, bool withoutScale)