openclaw - ✅(Solved) Fix [Bug]: Control UI: exec approval popup can push action buttons below viewport on long commands [4 pull requests, 1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#66403Fetched 2026-04-15 06:26:15
View on GitHub
Comments
1
Participants
2
Timeline
10
Reactions
0
Timeline (top)
cross-referenced ×4labeled ×2commented ×1mentioned ×1

Version

OpenClaw 2026.4.12

Summary In the Control UI, the exec approval popup can become taller than the viewport when the command preview is long. When that happens, the action buttons end up below the bottom of the screen, which makes the approval UI awkward or unusable without changing zoom or resizing the display.

Observed behaviour

Open an exec approval with a long multiline command or a large command preview
The approval popup grows too tall
The action buttons are positioned below the visible bottom edge of the viewport
User has to adjust display/zoom/viewport to reach the buttons

Expected behaviour

Approval popup should stay within the viewport
Popup body should scroll when content is long
Action buttons should remain reachable without changing zoom or resizing the window

Reproduction

Trigger an exec approval with a long multiline command
Open the approval popup in the Control UI
Observe that the popup can exceed viewport height and push the action buttons off-screen

Impact This affects the approval flow directly, so it is more serious than a cosmetic layout issue.

Local workaround / patch A local CSS patch fixed it by:

giving the approval overlay/card scroll behaviour
adding a max height to the approval card
allowing long command content to scroll
keeping the action area reachable

Patched area was the exec approval styles in the Control UI bundle, around:

.exec-approval-overlay
.exec-approval-card
.exec-approval-command
.exec-approval-actions

Notes This was observed in the Control UI web interface on a screen/layout where the popup height exceeded the visible viewport

Root Cause

Version

OpenClaw 2026.4.12

Summary In the Control UI, the exec approval popup can become taller than the viewport when the command preview is long. When that happens, the action buttons end up below the bottom of the screen, which makes the approval UI awkward or unusable without changing zoom or resizing the display.

Observed behaviour

Open an exec approval with a long multiline command or a large command preview
The approval popup grows too tall
The action buttons are positioned below the visible bottom edge of the viewport
User has to adjust display/zoom/viewport to reach the buttons

Expected behaviour

Approval popup should stay within the viewport
Popup body should scroll when content is long
Action buttons should remain reachable without changing zoom or resizing the window

Reproduction

Trigger an exec approval with a long multiline command
Open the approval popup in the Control UI
Observe that the popup can exceed viewport height and push the action buttons off-screen

Impact This affects the approval flow directly, so it is more serious than a cosmetic layout issue.

Local workaround / patch A local CSS patch fixed it by:

giving the approval overlay/card scroll behaviour
adding a max height to the approval card
allowing long command content to scroll
keeping the action area reachable

Patched area was the exec approval styles in the Control UI bundle, around:

.exec-approval-overlay
.exec-approval-card
.exec-approval-command
.exec-approval-actions

Notes This was observed in the Control UI web interface on a screen/layout where the popup height exceeded the visible viewport

Fix Action

Fix / Workaround

Local workaround / patch A local CSS patch fixed it by:

Patched area was the exec approval styles in the Control UI bundle, around:

PR fix notes

PR #66408: fix(ui): prevent exec approval popup from pushing actions off viewport

Description (problem / solution / changelog)

Fix: Control UI exec approval popup layout issue (fixes #66403)

Problem

When the exec approval popup displays a long multiline command, the card can grow taller than the viewport, causing the action buttons (Allow once, Always allow, Deny) to be pushed below the visible area. Users must adjust zoom or resize to access the buttons.

Root Cause

The .exec-approval-card had no max-height constraint on desktop, and the command content area could grow unbounded. The mobile layout had proper constraints via media query, but desktop was missing them.

Solution

Apply the same scrollable layout pattern that exists in mobile:

  1. .exec-approval-card: Add max-height: 90dvh, overflow-y: auto, and display: flex; flex-direction: column to constrain the card within the viewport and enable internal scrolling

  2. .exec-approval-command: Add max-height: 30vh and overflow-y: auto to allow long commands to scroll within the card

  3. .exec-approval-actions: Add flex-shrink: 0 to prevent the action buttons from being compressed or pushed off-screen

Testing

  • All existing TUI tests pass
  • Verified that long commands now scroll within the popup and action buttons remain visible

cc @NetDirection @openclaw/maintainers

Changed files

  • ui/src/styles/components.css (modified, +7/-0)
  • ui/src/ui/presenter.ts (modified, +2/-2)

PR #66529: fix(ui): keep exec approval popup within viewport on long commands

Description (problem / solution / changelog)

Summary

Fixes #66403 — exec approval popup can push action buttons below the viewport when the command preview is long.

The mobile responsive styles already had the correct fix (max-height, display: flex; flex-direction: column, overflow-y: auto on the command block). This PR promotes the same pattern to the base desktop styles so it applies on all viewports.

Changes to ui/src/styles/components.css:

  • .exec-approval-card: add max-height: calc(100dvh - 48px), display: flex; flex-direction: column;, overflow: hidden — caps the card to the visible viewport (48px accounts for the overlay's 24px top + bottom padding)
  • .exec-approval-command: add max-height: 40vh; overflow-y: auto; — long commands scroll within the card instead of stretching it
  • .exec-approval-actions: add flex-shrink: 0 — buttons are always pinned at the bottom, never compressed off-screen
  • Mobile overrides: remove display: flex; flex-direction: column from .exec-approval-card and flex-shrink: 0 from .exec-approval-actions since they are now in the base rule (keeping max-height: 90dvh override for mobile)

Test plan

  • Trigger an exec approval with a long multiline command in Control UI
  • Verify the popup stays within the viewport and the command area scrolls
  • Verify Allow once / Always allow / Deny buttons are always reachable without changing zoom
  • Verify short commands still render normally (no layout change for typical commands)
  • Verify mobile layout is unchanged

Changed files

  • ui/src/styles/components.css (modified, +7/-3)

PR #66571: fix(ui): prevent exec approval popup from exceeding viewport height

Description (problem / solution / changelog)

Fixes #66403

The exec approval popup could grow taller than viewport when displaying long commands, pushing action buttons off-screen and making approval unusable without changing browser zoom.

Root cause: Desktop .exec-approval-card had no height constraints while mobile version already had max-height: 90dvh and overflow handling.

Changes

  • Add max-height: 90vh to .exec-approval-card (desktop)
  • Add flex layout (display: flex, flex-direction: column)
  • Add max-height: 40vh and overflow-y: auto to .exec-approval-command
  • Add flex-shrink: 0 to .exec-approval-actions (keep buttons visible)
  • Command content scrolls when exceeding space, buttons stay accessible

Impact

Long command previews scroll instead of pushing buttons off-screen, making exec approval flow usable on all viewport sizes

Testing

Visual testing: Long commands now scroll within popup, buttons remain accessible

Changed files

  • extensions/telegram/src/bot-message-context.audio-transcript.test.ts (modified, +22/-0)
  • extensions/telegram/src/bot-message-context.body.ts (modified, +1/-1)
  • extensions/telegram/src/bot-message-context.session.ts (modified, +2/-2)
  • src/agents/bash-tools.exec-approval-followup.test.ts (modified, +19/-0)
  • src/agents/bash-tools.exec-approval-followup.ts (modified, +7/-3)
  • src/auto-reply/reply/reply-payloads-base.ts (modified, +1/-4)
  • src/auto-reply/reply/reply-plumbing.test.ts (modified, +14/-0)
  • src/commands/message.test.ts (modified, +47/-0)
  • src/commands/message.ts (modified, +21/-10)
  • ui/src/styles/components.css (modified, +7/-0)

PR #66658: fix(control-ui): keep exec approval modal within viewport

Description (problem / solution / changelog)

## Summary

Long multi-line exec approvals can make the modal taller than the viewport, pushing the action buttons off-screen.

This change constrains the modal height and enables scrolling so actions remain reachable.

Fixes #66403.

Test plan

  • Manual: trigger an exec approval with a long command preview; verify the modal stays within the viewport and the action buttons remain reachable.

Changed files

  • ui/src/styles/components.css (modified, +7/-0)
RAW_BUFFERClick to expand / collapse

Bug type

Behavior bug (incorrect output/state without crash)

Beta release blocker

No

Summary

Version

OpenClaw 2026.4.12

Summary In the Control UI, the exec approval popup can become taller than the viewport when the command preview is long. When that happens, the action buttons end up below the bottom of the screen, which makes the approval UI awkward or unusable without changing zoom or resizing the display.

Observed behaviour

Open an exec approval with a long multiline command or a large command preview
The approval popup grows too tall
The action buttons are positioned below the visible bottom edge of the viewport
User has to adjust display/zoom/viewport to reach the buttons

Expected behaviour

Approval popup should stay within the viewport
Popup body should scroll when content is long
Action buttons should remain reachable without changing zoom or resizing the window

Reproduction

Trigger an exec approval with a long multiline command
Open the approval popup in the Control UI
Observe that the popup can exceed viewport height and push the action buttons off-screen

Impact This affects the approval flow directly, so it is more serious than a cosmetic layout issue.

Local workaround / patch A local CSS patch fixed it by:

giving the approval overlay/card scroll behaviour
adding a max height to the approval card
allowing long command content to scroll
keeping the action area reachable

Patched area was the exec approval styles in the Control UI bundle, around:

.exec-approval-overlay
.exec-approval-card
.exec-approval-command
.exec-approval-actions

Notes This was observed in the Control UI web interface on a screen/layout where the popup height exceeded the visible viewport

Steps to reproduce

Trigger an exec approval with a long multiline command Open the approval popup in the Control UI Observe that the popup can exceed viewport height and push the action buttons off-screen

Expected behavior

Expected behaviour

Approval popup should stay within the viewport
Popup body should scroll when content is long
Action buttons should remain reachable without changing zoom or resizing the window

Actual behavior

Observed behaviour

Open an exec approval with a long multiline command or a large command preview
The approval popup grows too tall
The action buttons are positioned below the visible bottom edge of the viewport
User has to adjust display/zoom/viewport to reach the buttons

OpenClaw version

2026.4.12

Operating system

Ubuntu 24.02

Install method

No response

Model

openai/api

Provider / routing chain

none

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

extent analysis

TL;DR

Apply a CSS patch to the exec approval styles in the Control UI bundle to add scroll behavior and a max height to the approval card.

Guidance

  • Identify the CSS classes involved: .exec-approval-overlay, .exec-approval-card, .exec-approval-command, and .exec-approval-actions.
  • Add a max height to the approval card and enable scrolling for long command content.
  • Ensure the action area remains reachable without changing zoom or resizing the window.
  • Test the patch with different screen sizes and command lengths to verify the fix.

Example

.exec-approval-card {
  max-height: 80vh; /* adjust the value as needed */
  overflow-y: auto;
}

Notes

This solution assumes that the issue is solely related to the CSS styling of the approval popup. If the issue persists after applying the CSS patch, further investigation into the JavaScript code or other factors may be necessary.

Recommendation

Apply the CSS patch to the exec approval styles in the Control UI bundle, as it has been proven to fix the issue in the local workaround.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Expected behaviour

Approval popup should stay within the viewport
Popup body should scroll when content is long
Action buttons should remain reachable without changing zoom or resizing the window

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - ✅(Solved) Fix [Bug]: Control UI: exec approval popup can push action buttons below viewport on long commands [4 pull requests, 1 comments, 2 participants]