forge-draggable-windows

Add draggable, z-ordered, collapsible windows to ForgeUiContext applications.

Updated Mar 17, 2026
One-click install
npx skills add https://github.com/code-review-benchmark/coderabbit_prs2__forge-gpu__coderabbit__PR323__20260317 --skill forge-draggable-windows
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: forge-draggable-windows
Source: https://github.com/code-review-benchmark/coderabbit_prs2__forge-gpu__coderabbit__PR323__20260317/tree/main/.claude/skills/forge-draggable-windows
Command: npx skills add https://github.com/code-review-benchmark/coderabbit_prs2__forge-gpu__coderabbit__PR323__20260317 --skill forge-draggable-windows

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Add draggable, z-ordered, collapsible windows to a ForgeUiContext application to improve multitasking and UI organization.

Core Features & Use Cases

  • Draggable floating windows with a drag handle
  • Z-ordering so overlapping windows draw and receive input in the correct order
  • Collapse/expand toggles to save screen space
  • Deferred per-window draw buffers and frame-end sorting for correct rendering
  • Input routing that respects z-order, blocking interactions with background windows when in overlap regions

Quick Start

Initialize a ForgeUiWindowContext wrapping your ForgeUiContext each frame, then use forge_ui_ctx_begin, forge_ui_wctx_begin, declare windows with window_begin/window_end, and finish with forge_ui_wctx_end and forge_ui_ctx_end before rendering.

Frequently Asked Questions about forge-draggable-windows

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add draggable floating windows to a ForgeUiContext application?▼

To add draggable floating windows to a ForgeUiContext application, wrap your context in a ForgeUiWindowContext each frame, then use window_begin and window_end to declare panels with drag handles, collapse toggles, and z-ordering.

How does z-ordering work for overlapping ForgeUi windows?▼

Z-ordering for overlapping ForgeUi windows works by deferring per-window draw buffers and sorting them at frame-end, ensuring correct rendering order and input routing that blocks background interactions in overlap regions.

Can I collapse and expand UI windows in ForgeUi to save screen space?▼

Yes, you can collapse and expand UI windows in ForgeUi to save screen space using built-in collapse toggles managed by ForgeUiWindowState, which tracks per-window state across frames.

What is the best way to handle input routing for stacked UI windows?▼

The best way to handle input routing for stacked UI windows is using z-order-aware sorting that blocks interactions with background windows when overlapping regions exist, ensuring only the topmost window receives input.

Do I need a ForgeUiContext to use draggable windows?▼

Yes, you need a ForgeUiContext because draggable windows are initialized by wrapping it in a ForgeUiWindowContext, using APIs like forge_ui_wctx_init and forge_ui_wctx_begin to integrate panels into your existing application.

Why does my ForgeUi window draw behind other panels even with correct input?▼

ForgeUi windows draw behind other panels when draw buffers are not deferred and sorted per-frame; correct rendering order requires using forge_ui_wctx_end to trigger frame-end sorting before final rendering.