{"id":"frontend.yui--PresentYuiCanvasFlatDisplayListInViewport","name":"PresentYuiCanvasFlatDisplayListInViewport","owner":"yeho","package":"frontend.yui","kind":"function","signature":"external PresentYuiCanvasFlatDisplayListInViewport(yuiDisplayList original displayList, yuiCompositionPlan original composition, yuiCanvasViewport viewport) returns bool","description":"Retained product hot path with one shared logical-to-window transform. The same yuiCanvasViewport can be inverted for input and applied to semantic bounds, keeping drawing, hit testing, and accessibility in one coordinate model without rebuilding or cloning the display list during resize.","context":"Turn YUI models into a working frontend and its rendering/input adapters.","parameters":[{"name":"displayList","type":"yuiDisplayList original","description":"Supply display list as yuiDisplayList original."},{"name":"composition","type":"yuiCompositionPlan original","description":"Supply composition as yuiCompositionPlan original."},{"name":"viewport","type":"yuiCanvasViewport","description":"Supply viewport as yuiCanvasViewport."}],"returns":"bool","members":[],"tags":["cpu","frontend","frontend.yui","function","source-example","yeho","yui"],"updated":"2026-09-09","source":{"repository":"yeho","path":"packages/frontend/yui/render-canvas.yh","line":1720,"sha256":"b6291b4ad0d986d765fd486b8297e2315f14925fcce734a30c0046bbfa882b91"},"status":"source-declared","notes":["Package presence and a declaration do not establish support on every host. Host services need their platform and lifecycle setup."],"examples":[{"id":"usage","title":"Use PresentYuiCanvasFlatDisplayListInViewport","description":"A complete small caller. Values are illustrative; check the returned result and package requirements before connecting live resources.","code":"using frontend.yui\n\n// Turn YUI models into a working frontend and its rendering/input adapters.\nyuiDisplayList displayList = yuiDisplayList(\"surface Id\")\nyuiCompositionPlan composition = yuiCompositionPlan(\"surface Id\")\nyuiCanvasViewport viewport = yuiCanvasViewport(1, 1, 1, 1, 1, 1, 1)\nbool result = PresentYuiCanvasFlatDisplayListInViewport(displayList, composition, viewport)\nConsole.Log(Text.From(result))\n","manifest":"manifestVersion = \"2\"\npackage = \"api.example.frontend_yui__presentyuicanvasflatdisplaylistinviewport\"\nversion = \"0.1.0\"\nlanguageEdition = \"yeho-core-2026.1\"\n\n[app]\nkind = \"headless\"\n\n[[dependencies]]\npackage = \"frontend.yui\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/frontend/yui\"\n\n[[dependencies]]\npackage = \"graphics.canvas\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/canvas\"\n\n[[dependencies]]\npackage = \"graphics.image\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/image\"\n\n[[dependencies]]\npackage = \"graphics.image.processing\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/image/processing\"\n\n[[dependencies]]\npackage = \"graphics.text\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/text\"\n\n[[dependencies]]\npackage = \"host.ui_services\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/host/ui_services\"\n\n[[dependencies]]\npackage = \"input.text\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/input/text\"\n\n[[dependencies]]\npackage = \"ui\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/ui\"\n","tags":["cpu","source-example"],"verification":"type checked","run":"cpu-oracle","sha256":"e24b7ae3746ea09cf37673c7534956f4e698ac3675fd660bbc28d961613b14ef","checked":"2026-09-09","diagnostic":"","observedOutput":null,"checkedBackend":null}],"searchTerms":[],"url":"https://demonhunterlabs.com/academy/api?item=frontend.yui--PresentYuiCanvasFlatDisplayListInViewport","json":"https://demonhunterlabs.com/reference/items/frontend.yui--PresentYuiCanvasFlatDisplayListInViewport.json","markdown":"https://demonhunterlabs.com/reference/text/frontend.yui--PresentYuiCanvasFlatDisplayListInViewport.md"}
