diff --git a/launcher/ui/dialogs/skins/SkinManageDialog.cpp b/launcher/ui/dialogs/skins/SkinManageDialog.cpp
index d676ac38c..d1eeb759d 100644
--- a/launcher/ui/dialogs/skins/SkinManageDialog.cpp
+++ b/launcher/ui/dialogs/skins/SkinManageDialog.cpp
@@ -118,7 +118,7 @@ void SkinManageDialog::selectionChanged(QItemSelection selected, QItemSelection
auto skin = m_list.skin(key);
if (!skin)
return;
- ui->selectedModel->setPixmap(skin->getTexture().scaled(128, 128, Qt::KeepAspectRatio, Qt::FastTransformation));
+ ui->selectedModel->setPixmap(skin->getTexture().scaled(size() * (1. / 3), Qt::KeepAspectRatio, Qt::FastTransformation));
ui->capeCombo->setCurrentIndex(m_capes_idx.value(skin->getCapeId()));
ui->steveBtn->setChecked(skin->getModel() == SkinModel::CLASSIC);
ui->alexBtn->setChecked(skin->getModel() == SkinModel::SLIM);
@@ -212,7 +212,7 @@ void SkinManageDialog::setupCapes()
void SkinManageDialog::on_capeCombo_currentIndexChanged(int index)
{
auto id = ui->capeCombo->currentData();
- ui->capeImage->setPixmap(m_capes.value(id.toString(), {}));
+ ui->capeImage->setPixmap(m_capes.value(id.toString(), {}).scaled(size() * (1. / 3), Qt::KeepAspectRatio, Qt::FastTransformation));
if (auto skin = m_list.skin(m_selected_skin); skin) {
skin->setCapeId(id.toString());
}
@@ -498,3 +498,15 @@ void SkinManageDialog::on_userBtn_clicked()
}
m_list.updateSkin(&s);
}
+
+void SkinManageDialog::resizeEvent(QResizeEvent* event)
+{
+ QWidget::resizeEvent(event);
+ QSize s = size() * (1. / 3);
+
+ if (auto skin = m_list.skin(m_selected_skin); skin) {
+ ui->selectedModel->setPixmap(skin->getTexture().scaled(s, Qt::KeepAspectRatio, Qt::FastTransformation));
+ }
+ auto id = ui->capeCombo->currentData();
+ ui->capeImage->setPixmap(m_capes.value(id.toString(), {}).scaled(s, Qt::KeepAspectRatio, Qt::FastTransformation));
+}
diff --git a/launcher/ui/dialogs/skins/SkinManageDialog.h b/launcher/ui/dialogs/skins/SkinManageDialog.h
index ce8fc9348..cdb37a513 100644
--- a/launcher/ui/dialogs/skins/SkinManageDialog.h
+++ b/launcher/ui/dialogs/skins/SkinManageDialog.h
@@ -34,6 +34,7 @@ class SkinManageDialog : public QDialog {
public:
explicit SkinManageDialog(QWidget* parent, MinecraftAccountPtr acct);
virtual ~SkinManageDialog();
+ void resizeEvent(QResizeEvent* event) override;
public slots:
void selectionChanged(QItemSelection, QItemSelection);
diff --git a/launcher/ui/dialogs/skins/SkinManageDialog.ui b/launcher/ui/dialogs/skins/SkinManageDialog.ui
index ed8b7e530..c77eeaaa3 100644
--- a/launcher/ui/dialogs/skins/SkinManageDialog.ui
+++ b/launcher/ui/dialogs/skins/SkinManageDialog.ui
@@ -24,7 +24,10 @@
- true
+ false
+
+
+ Qt::AlignCenter
@@ -75,7 +78,10 @@
- true
+ false
+
+
+ Qt::AlignCenter