From 13acce10bace2cd7df8bd3d0416cf01ac1f069b5 Mon Sep 17 00:00:00 2001 From: mvdbeek Date: Wed, 17 Jun 2026 12:57:29 +0200 Subject: [PATCH] Fix GModal content truncation when dialog has no fixed height Without an explicit height on the dialog, `section { height: 100% }` resolved to auto and `.g-modal-content`'s `overflow: auto` never activated, so the dialog clipped instead of scrolling. Cap the dialog at `max-height: calc(100vh - 4rem)` and move `section { height: 100% }` to only apply inside `.g-fixed-height` and `.g-fullscreen`, where the dialog has an explicit pixel height that makes the percentage meaningful. --- client/src/components/BaseComponents/GModal.vue | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/client/src/components/BaseComponents/GModal.vue b/client/src/components/BaseComponents/GModal.vue index db4878d11c5..91bb6ed39c0 100644 --- a/client/src/components/BaseComponents/GModal.vue +++ b/client/src/components/BaseComponents/GModal.vue @@ -239,8 +239,9 @@ defineExpose({ showModal, hideModal }); padding: var(--spacing-3); + max-height: calc(100vh - 4rem); + section { - height: 100%; width: 100%; display: flex; flex-direction: column; @@ -253,12 +254,17 @@ defineExpose({ showModal, hideModal }); padding: var(--spacing-2); margin: calc(var(--spacing-2) * -1); - max-height: 100%; display: flex; flex-direction: column; } } + &.g-fixed-height { + section { + height: 100%; + } + } + &.g-overflow-visible { overflow: visible; @@ -306,6 +312,10 @@ defineExpose({ showModal, hideModal }); height: calc(100vh - 6rem); max-width: calc(100vw - 6rem); max-height: calc(100vh - 6rem); + + section { + height: 100%; + } } header {