Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions source/compose.manager/include/ComposeManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -236,10 +236,11 @@ function compose_manager_cpu_spec_count($cpuSpec)
z-index: 100 !important;
}

/* Keep long context menus visible above fixed bottom UI bars */
/* Keep context menus above the fixed footer (z-index must out-rank the
.dropdown-menu !important rule above); the scroll spacer appended in
fixContextDropdownOverflow() keeps them reachable (unraid/webgui#2639) */
.dropdown-context:not(.dropdown-context-sub) {
max-height: calc(100vh - 72px);
overflow-y: auto;
z-index: 10001 !important;
}

/* CPU & Memory load display (matches Docker manager usage-disk style) */
Expand Down
9 changes: 9 additions & 0 deletions source/compose.manager/javascript/composeManagerMain.js
Original file line number Diff line number Diff line change
Expand Up @@ -6218,6 +6218,13 @@ function updateParentStackFromContainers(stackId, project) {
}

// Attach context menu to container icon (like Docker tab's addDockerContainerContext)
// Keep a context dropdown above the footer and extend the scrollable area so it stays reachable
// (same fix as unraid/webgui#2639)
function fixContextDropdownOverflow(elementId) {
$('#dropdown-' + elementId).css('z-index', 10001)
.append('<li class="compose-dropdown-spacer" aria-hidden="true" style="position:absolute;top:100%;left:0;width:1px;height:60px;pointer-events:none;list-style:none"></li>');
}

function addComposeContainerContext(elementId) {
var $el = $('#' + elementId);
var containerName = $el.data('name');
Expand Down Expand Up @@ -6348,6 +6355,7 @@ function addComposeContainerContext(elementId) {
// Ensure stale menu bindings don't persist across state transitions
$el.off('contextmenu');
context.attach('#' + elementId, opts);
fixContextDropdownOverflow(elementId);
}

function containerAction(containerName, action, stackId) {
Expand Down Expand Up @@ -6828,6 +6836,7 @@ function addComposeStackContext(elementId) {

context.destroy('#' + elementId);
context.attach('#' + elementId, opts);
fixContextDropdownOverflow(elementId);
}

// Event delegation for docker-style container actions
Expand Down