Skip to content

feat: add footer to ModalNode#292

Merged
Aaronontheweb merged 4 commits into
Aaronontheweb:devfrom
st0o0:dev
Jun 11, 2026
Merged

feat: add footer to ModalNode#292
Aaronontheweb merged 4 commits into
Aaronontheweb:devfrom
st0o0:dev

Conversation

@st0o0

@st0o0 st0o0 commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds WithFooter(string) and WithFooterColor(Color) to ModalNode, enabling text to be rendered in the bottom
border line — mirroring the existing WithTitle/WithTitleColor pattern for the top border.

Use case: Keyboard hints, status text, or context info displayed directly in the modal frame without consuming
content area space.

var modal = new ModalNode()
    .WithTitle(" Settings ")
    .WithTitleColor(Color.BrightCyan)
    .WithFooter(" Esc: Close | Enter: Save ")
    .WithFooterColor(Color.Gray);

Rendering:
╭─ Settings ────────────────────────────╮
│ content...                            │
╰─ Esc: Close | Enter: Save ────────────╯

Changes

  • ModalNode.cs: Added _footer/_footerColor fields, WithFooter()/WithFooterColor() fluent methods, and footer rendering in RenderPanel() at the bottom border line (position 2, y = bounds.Height - 1)
  • Footer text is truncated to bounds.Width - 4 if too long
  • Custom color applied if set, otherwise uses default terminal colors
  • Zero breaking changes — fully additive, footer is null by default

Fixes #

Changes

Please provide a brief description of the changes here.

Checklist

For significant changes, please ensure that the following have been completed (delete if not relevant):

Latest dev Benchmarks

Include data from the relevant benchmark prior to this change here.

This PR's Benchmarks

Include data from after this change here.

st0o0 added 4 commits June 8, 2026 08:50
Windows case-insensitive filesystem caused both RELEASE_NOTES.md and
release_notes.md to be tracked in git. Removes the lowercase duplicate
and merges the content into the canonical RELEASE_NOTES.md with all
versions (0.11.0, 0.10.2, 0.10.1, 0.10.0).
@Aaronontheweb

Copy link
Copy Markdown
Owner

Looks great!

image

and

image

@Aaronontheweb Aaronontheweb merged commit 4e91f5a into Aaronontheweb:dev Jun 11, 2026
13 checks passed
Aaronontheweb added a commit that referenced this pull request Jun 11, 2026
- WithFooter and WithFooterColor API on ModalNode (#292)
- Updated ModalNode docs with WithFooter usage example (#293)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants