Skip to content

Commit 772ad85

Browse files
andyclaude
andcommitted
docs/claude: GL and AUI frames are capped, never scroll-wrapped (#189)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PFPK14wBcLD1s4dYUowpP4
1 parent 0f65020 commit 772ad85

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

‎docs/claude/wx-viewer/windows-fit-small-screens-via-fittodisplay.md‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
type: rule
33
title: "Every ewxFrame/ewxDialog is capped to its display by `fitToScreen()`; codereg dialogs scroll in `EccePanel` (#189)"
44
area: wx-viewer
5-
paths: ["src/wxgui/ewxClasses/ewxWindowUtils.C", "scripts/codereg/templates.py", "tests/apps/smallscreen_test.py"]
5+
paths: ["src/wxgui/ewxClasses/ewxWindowUtils.C", "src/inv/wxinv/SoWxRenderArea.C", "scripts/codereg/templates.py", "tests/apps/smallscreen_test.py"]
66
issues: [187, 189]
77
---
88
**`ewxFrame::Show()` and `ewxDialog::Show()/ShowModal()` call
@@ -21,6 +21,13 @@ up to three items under it), or the sizer passed to `fitToScreen(row)`.
2121
- A window can leave the display after it is shown (size restored, content
2222
loaded), so a `wxEVT_SIZE` handler re-runs the fit, at most three times
2323
per episode so a window that cannot obey is not chased.
24+
- A window holding a `wxGLCanvas`, or managed by a `wxAuiManager` (the
25+
Builder), is never wrapped, only capped. A scroller lays its content out
26+
at its virtual size, and the Builder's AUI sizer reports a minimum
27+
17 000 104 px tall; on macOS arm64 the GL canvas inside it aborted the
28+
first paint in `CGLSetSurface` (SkyLight `CGRectContainsRect` assertion).
29+
GTK clips the child window, so Linux never shows it. `SoWxRenderArea`
30+
also refuses to grow past its display's client area.
2431
- An app that grows the window itself (`CalcEd::update*Fields()`) calls
2532
`fitToScreen()` after `SetSizeHints(this)`; the hint alone sets a
2633
minimum above the display.

0 commit comments

Comments
 (0)