From 1dadc2ddf42309a0261e7c89a7a897906b8469bf Mon Sep 17 00:00:00 2001 From: sithlord48 Date: Fri, 10 Jan 2025 15:37:25 -0500 Subject: [PATCH] refactor: ActionDialog, Only allow resize when the screen list is visible --- src/apps/deskflow-gui/dialogs/ActionDialog.cpp | 10 +++++++++- src/apps/deskflow-gui/dialogs/ActionDialog.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/apps/deskflow-gui/dialogs/ActionDialog.cpp b/src/apps/deskflow-gui/dialogs/ActionDialog.cpp index 274a034d9..7aeedf757 100644 --- a/src/apps/deskflow-gui/dialogs/ActionDialog.cpp +++ b/src/apps/deskflow-gui/dialogs/ActionDialog.cpp @@ -114,6 +114,14 @@ void ActionDialog::accept() QDialog::accept(); } +void ActionDialog::updateSize() +{ + setMaximumSize(QSize(16777215, 1677215)); + adjustSize(); + if (!isKeyAction(ui->comboActionType->currentIndex())) + setMaximumSize(size()); +} + void ActionDialog::keySequenceChanged() { ui->listScreens->setEnabled(!ui->keySequenceWidget->keySequence().isMouseButton()); @@ -129,7 +137,7 @@ void ActionDialog::actionTypeChanged(int index) ui->comboSwitchToScreen->setVisible(index == ActionTypes::SwitchTo); ui->comboSwitchInDirection->setVisible(index == ActionTypes::SwitchInDirection); ui->comboLockCursorToScreen->setVisible(index == ActionTypes::ModifyCursorLock); - QTimer::singleShot(1, this, &ActionDialog::adjustSize); + QTimer::singleShot(1, this, &ActionDialog::updateSize); } bool ActionDialog::isKeyAction(int index) diff --git a/src/apps/deskflow-gui/dialogs/ActionDialog.h b/src/apps/deskflow-gui/dialogs/ActionDialog.h index 0a6c38d13..fddefb98d 100644 --- a/src/apps/deskflow-gui/dialogs/ActionDialog.h +++ b/src/apps/deskflow-gui/dialogs/ActionDialog.h @@ -53,6 +53,7 @@ protected slots: void accept() override; private: + void updateSize(); void keySequenceChanged(); void actionTypeChanged(int index); bool isKeyAction(int index);