RegisterEvent ignores case; a frame's first resize precedes OnLoad (#1001)
- `RegisterEvent` and `UnregisterEvent` match a name against the client's event table case-insensitively and drop a name that isn't in it (`0x702140`). A new gate checks that every event name the code fires is in the table. - A visible XML frame resolves its layout at the post-load hook (`0x76a310` → `0x7680e0(1)`). So its first `OnSizeChanged` fires before its `<Frames>`, `OnLoad` and `OnShow`, as in 1.12.1. A hidden frame still waits for its show. - `pending_events`' doc now says what the queue is: `SignalEvent` (`0x703e50`) runs handlers in place, and the Lua verbs that still queue are a gap. - #890 was already fixed by #907; two stale comments around it are corrected. Fixes #959 Fixes #972 Fixes #560 Closes #890 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
720dcf8188
commit
0f505a2ebf
@@ -643,7 +643,8 @@ pub(super) fn create_frame(
|
||||
// The builder's pre-load and post-load hooks (`0x6ee4d6`, `0x6ee4ea`): a frame born hidden
|
||||
// is deferred, as a hidden parent leaves it. A template's load opens its own window.
|
||||
model.layout_load_begin(h);
|
||||
model.layout_load_end(h);
|
||||
// No handler is bound yet, so the resolve this owes fires nothing.
|
||||
let _ = model.layout_load_end(h);
|
||||
id
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user