The browser engine runs only in its own lazily started host process (makepad-app-browser-host) hosted through app_host: one process, a window per tab, frames handed over as shared GPU textures (IOSurface, DMA-BUF, NT handles), lossless capture with back-pressure for recording, audio through a shared ring. Apps link no CEF. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
37 lines
1.6 KiB
TOML
37 lines
1.6 KiB
TOML
# browser — a Chrome-like browser as a plain full-window Makepad app.
|
|
#
|
|
# Chromium renders ONLY the page, and not in this process: the pages live in
|
|
# the browser host (apps/browser_host, started through libs/browser_view on
|
|
# the first tab), each a hosted window whose frames arrive as a shared GPU
|
|
# texture. All browser chrome — the tab strip, the toolbar with
|
|
# back/forward/reload, the omnibox and the menu — is Makepad Splash UI,
|
|
# styled from the active system theme in standalone and hosted runs.
|
|
#
|
|
# Runs standalone, and unmodified inside makepad-app-wm / Studio tiles via the
|
|
# shared --stdin-loop client runtime every Makepad app has.
|
|
|
|
[package]
|
|
name = "makepad-app-browser"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "MIT OR Apache-2.0"
|
|
default-run = "makepad-app-browser"
|
|
|
|
[[bin]]
|
|
name = "makepad-app-browser"
|
|
path = "src/main.rs"
|
|
|
|
[features]
|
|
default = ["tweaker"]
|
|
# The design overlay (Shift+F10 with the dev overlays on). On for development
|
|
# builds; the Builder's releases build without it (--no-default-features).
|
|
tweaker = ["dep:makepad-widgets-tweaker", "makepad-widgets/data", "makepad-widgets/dock", "makepad-widgets/fab"]
|
|
|
|
[dependencies]
|
|
makepad-widgets = { path = "../../widgets", default-features = false }
|
|
makepad-widgets-tweaker = { path = "../../widgets/families/tweaker", optional = true }
|
|
makepad-browser-view = { path = "../../libs/browser_view" }
|
|
makepad-ai-services = { path = "../../libs/ai/services" }
|
|
makepad-strict-json = { path = "../../libs/strict_json" }
|
|
# The window manager's vocabulary: the bar's title, the polite close.
|
|
makepad-wm-api = { path = "../../libs/wm_api" }
|