Document swapPackage waiting out a profile save
Document the chrome bar reflow callback
Documented the layout restore across a package update
- Replaced the "that re-run does not restore placement" bullet in
Getting-Started: a re-join now re-seeds saved records before onReady and
re-forms groups after, so mdw.rebuild() is the recovery hatch rather than a
required step
- Added the requirement to hold mdw.deferLayoutSaves across a package's own
sysUninstallPackage cleanup, to Getting-Started and Layout-Persistence
- Added a "Layouts Across a Package Update" section to Layout-Persistence
Documented package swapping, lifecycle tracing and batched layout saves
Six MDW releases shipped consumer-facing behaviour today without the wiki
following, which its own docs policy asks for.
Getting-Started gains "Updating your own package": mdw.swapPackage, why a
package cannot reliably swap itself, that MDW re-runs onReady on
sysInstallPackage, and - the part that costs people an afternoon - that the
re-run does NOT restore placement, so an update should finish with mdw.rebuild.
Plus removing a package that installed MDW.
Debugging gains a worked trace of a package update and what each of onInstall's
three conditions means when it is false, since all three look identical from
outside: a UI that does not come back.
Layout-Persistence explains that saves are batched across an operation - a
build writes once at the end, a teardown not at all - and documents
deferLayoutSaves/resumeLayoutSaves for consumers doing the same thing.
Document bootstrapping MDW from a game package
Document 0.4.0: consumer contract, prompt gauges, widget rows, context menus, scripted control
- New pages: Widget Rows (setWidgetRows, setWidgetMenu), Context Menus
(showContextMenu, checkbox menus, setPromptBarMenu), Scripted Control
(the set-semantics functions, describeLayout, resetLayout).
- Getting Started: custom elements and onTeardown, branding and one-button
uninstall with ownership reaping, chrome bars, version exposure, persisted
game settings.
- Prompt Bar: gauge row, settings button, ensurePromptBarHeight /
fitPromptBarHeight.
- Configuration: uiName, barHeight, dockEdgePadding, prompt-gauge, widget-row,
context-menu, and lineHeightRatio options; maxEchoBuffer is 200 (was
documented as 50); monoCharRatio is now the measurement fallback; themes
switch via setTheme and color changes need applyThemeStyles.
- Header Menus: the Admin menu has Rebuild UI and a branded Uninstall that
removes registered game packages first. Widgets menu / Grouped Widgets: a
re-checked closed tab floats in the centre; showWidget returns it to its
group.
- Widget Options/Methods: liveReflow. Layout Persistence: game settings,
resetLayout, describeLayout, scripted changes. Debugging: describeLayout,
rebuild. Drag and Drop, GMCP Integration: small additions.
Document the onReady registry and gameConfig seeding as the integration contract
Update wiki to match current code
- Add Getting Started (mdw.configure, registerWidgets, mdwReady, loadExamples)
- Add Grouped Widgets (Stacks) page and mdw.Stack API
- Configuration: correct changed defaults, add prompt/font-limit/menu-sizing/mainBackground options
- Widget Options/Methods/Tabbed: remove removed width-lock and setFill/isFill APIs
- Drag and Drop: header-drag now floats only; docking/grouping via tab drag
- Header Menus: five menus incl Admin gear; document Font Size menu contents
- Prompt Bar: capturePrompt(deleteFromMain, lineCount), multi-line prompt config
- Layout Persistence: save groups + more font sizes; drop width lock