fix: 修复时尚模式下快捷设置面板显示设置子页面显示不全,导致跨端协同设备列表显示异常问题。

显示设置子页面获取页面的高度错误导致显示不全的问题。

Log: 修复时尚模式下快捷设置面板显示设置子页面显示不全的问题。
Bug: https://pms.uniontech.com/bug-view-160587.html
Bug: https://pms.uniontech.com/bug-view-160599.html
Influence: 时尚模式下显示设置子页面显示问题。
Change-Id: I52fa0d279f3ded73a2630b20f3b08dc2fb7d85c9
This commit is contained in:
zhaoyingzhen 2022-10-14 17:26:24 +08:00
parent 7ffb1e0188
commit 4d27965224
4 changed files with 23 additions and 4 deletions

View File

@ -25,18 +25,24 @@
#include <QVBoxLayout>
const int ItemSpacing = 5;
BrightnessAdjWidget::BrightnessAdjWidget(QWidget *parent)
: QWidget(parent)
, m_mainLayout(new QVBoxLayout(this))
, m_brightnessModel(new BrightnessModel(this))
{
m_mainLayout->setSpacing(5);
m_mainLayout->setMargin(0);
m_mainLayout->setSpacing(ItemSpacing);
loadBrightnessItem();
}
void BrightnessAdjWidget::loadBrightnessItem()
{
QList<BrightMonitor *> monitors = m_brightnessModel->monitors();
int itemHeight = monitors.count() > 1 ? 56 : 30;
for (BrightMonitor *monitor : monitors) {
SliderContainer *sliderContainer = new SliderContainer(this);
if (monitors.count() > 1)
@ -48,7 +54,7 @@ void BrightnessAdjWidget::loadBrightnessItem()
sliderContainer->setIcon(SliderContainer::IconPosition::RightIcon, rightPixmap, QSize(), 12);
sliderContainer->setFixedWidth(310);
sliderContainer->setFixedHeight(monitors.count() > 1 ? 56 : 30);
sliderContainer->setFixedHeight(itemHeight);
sliderContainer->updateSliderValue(monitor->brightness());
SliderProxyStyle *proxy = new SliderProxyStyle(SliderProxyStyle::Normal);
@ -58,5 +64,8 @@ void BrightnessAdjWidget::loadBrightnessItem()
connect(monitor, &BrightMonitor::brightnessChanged, sliderContainer, &SliderContainer::updateSliderValue);
connect(sliderContainer, &SliderContainer::sliderValueChanged, monitor, &BrightMonitor::setBrightness);
}
QMargins margins = this->contentsMargins();
setFixedHeight(margins.top() + margins.bottom() + monitors.count() * itemHeight + monitors.count() * ItemSpacing);
}

View File

@ -27,7 +27,7 @@
#include <DFontSizeManager>
#define RADIUS_VALUE 10
#define ITEM_SPACE 10
#define ITEM_SPACE 20
#define ICON_WIDTH 16
#define ICON_HEIGHT 16
#define TEXT_RECT_HEIGHT 20

View File

@ -27,11 +27,13 @@
#include <DDBusSender>
const int ItemSpacing = 10;
DisplaySettingWidget::DisplaySettingWidget(QWidget *parent)
: QWidget(parent)
, m_brightnessAdjWidget(new BrightnessAdjWidget(this))
, m_collaborationWidget(new DevCollaborationWidget(this))
, m_settingBtn(new QPushButton(this))
, m_settingBtn(new QPushButton(tr("Display setting"), this))
{
initUI();
@ -46,8 +48,10 @@ DisplaySettingWidget::DisplaySettingWidget(QWidget *parent)
void DisplaySettingWidget::initUI()
{
setContentsMargins(0, 10, 0, 30);
QVBoxLayout *mainLayout = new QVBoxLayout();
mainLayout->setMargin(0);
mainLayout->setSpacing(ItemSpacing);
mainLayout->addWidget(m_brightnessAdjWidget);
mainLayout->addWidget(m_collaborationWidget);
@ -55,4 +59,8 @@ void DisplaySettingWidget::initUI()
mainLayout->addStretch();
setLayout(mainLayout);
QMargins margins = this->contentsMargins();
setFixedHeight(margins.top() + margins.bottom() + m_brightnessAdjWidget->height() +
m_collaborationWidget->height() + m_settingBtn->height() + ItemSpacing * 2);
}

View File

@ -327,6 +327,8 @@ void QuickSettingContainer::initUi()
resizeView();
setFixedWidth(ITEMWIDTH * 4 + (ITEMSPACE * 5));
}, Qt::QueuedConnection);
m_displaySettingWidget->setVisible(false);
}
void QuickSettingContainer::initConnection()