Merge pull request #351 from jonathanhefner/no-onhostcontextchanged-getter
Fix `onhostcontextchanged` handler invocation in examples
This commit is contained in:
commit
d61b5ab4cf
2 changed files with 16 additions and 12 deletions
|
|
@ -1,7 +1,7 @@
|
|||
/**
|
||||
* @file Sheet Music App - renders ABC notation with abcjs and provides audio playback
|
||||
*/
|
||||
import { App } from "@modelcontextprotocol/ext-apps";
|
||||
import { App, type McpUiHostContext } from "@modelcontextprotocol/ext-apps";
|
||||
import ABCJS from "abcjs";
|
||||
import "abcjs/abcjs-audio.css";
|
||||
import "./global.css";
|
||||
|
|
@ -109,18 +109,20 @@ app.ontoolinput = (params) => {
|
|||
|
||||
app.onerror = console.error;
|
||||
|
||||
app.onhostcontextchanged = (params) => {
|
||||
if (params.safeAreaInsets) {
|
||||
mainEl.style.paddingTop = `${params.safeAreaInsets.top}px`;
|
||||
mainEl.style.paddingRight = `${params.safeAreaInsets.right}px`;
|
||||
mainEl.style.paddingBottom = `${params.safeAreaInsets.bottom}px`;
|
||||
mainEl.style.paddingLeft = `${params.safeAreaInsets.left}px`;
|
||||
function handleHostContextChanged(ctx: McpUiHostContext) {
|
||||
if (ctx.safeAreaInsets) {
|
||||
mainEl.style.paddingTop = `${ctx.safeAreaInsets.top}px`;
|
||||
mainEl.style.paddingRight = `${ctx.safeAreaInsets.right}px`;
|
||||
mainEl.style.paddingBottom = `${ctx.safeAreaInsets.bottom}px`;
|
||||
mainEl.style.paddingLeft = `${ctx.safeAreaInsets.left}px`;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
app.onhostcontextchanged = handleHostContextChanged;
|
||||
|
||||
app.connect().then(() => {
|
||||
const ctx = app.getHostContext();
|
||||
if (ctx) {
|
||||
app.onhostcontextchanged(ctx);
|
||||
handleHostContextChanged(ctx);
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ app.onteardown = async () => {
|
|||
|
||||
app.onerror = log.error;
|
||||
|
||||
app.onhostcontextchanged = (ctx: McpUiHostContext) => {
|
||||
function handleHostContextChanged(ctx: McpUiHostContext) {
|
||||
if (ctx.safeAreaInsets) {
|
||||
mainEl.style.paddingTop = `${ctx.safeAreaInsets.top}px`;
|
||||
mainEl.style.paddingRight = `${ctx.safeAreaInsets.right}px`;
|
||||
|
|
@ -78,7 +78,9 @@ app.onhostcontextchanged = (ctx: McpUiHostContext) => {
|
|||
if (ctx.theme) {
|
||||
applyDocumentTheme(ctx.theme);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
app.onhostcontextchanged = handleHostContextChanged;
|
||||
|
||||
// ============================================================================
|
||||
// Audio Capture
|
||||
|
|
@ -546,6 +548,6 @@ app.connect().then(() => {
|
|||
log.info("Connected to host");
|
||||
const ctx = app.getHostContext();
|
||||
if (ctx) {
|
||||
app.onhostcontextchanged?.(ctx);
|
||||
handleHostContextChanged(ctx);
|
||||
}
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue