Files
Oxide/editor/Cargo.toml
T
Homer 48003ffea4 Editor: native folder picker for New/Open Project
Stage-10 editor-UX follow-up ("typing the path by hand is very hard to
use"). Both project dialogs gain a Browse… button that opens the native
folder picker via rfd's xdg-portal backend — pure Rust, one build works
on Wayland and X11 through xdg-desktop-portal. The dialog runs on a
helper thread reporting over an mpsc channel (polled once per frame in
Shell::build), so the editor keeps rendering while the picker is up;
one pick at a time, and the typed path field remains as a fallback for
portal-less environments.

GUI piece — needs an eye-check (on both Wayland and Xorg) before
promotion to main.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 20:47:12 +02:00

41 lines
1.4 KiB
TOML

[package]
name = "oxide-editor"
description = "Oxide Engine — in-engine editor"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
rust-version.workspace = true
[[bin]]
name = "oxide-editor"
path = "src/main.rs"
[dependencies]
oxide-engine = { path = "../engine" }
oxide-physics = { path = "../physics" }
oxide-script = { path = "../script" }
log.workspace = true
env_logger.workspace = true
anyhow.workspace = true
egui.workspace = true
egui-wgpu.workspace = true
egui-winit.workspace = true
egui_dock.workspace = true
# Native folder picker for New/Open Project, run on a helper thread so the
# UI keeps redrawing while the dialog is up (see Shell::poll_folder_pick).
rfd.workspace = true
# Editor preferences file I/O reads/writes the same RON shape `Settings`
# exports; the engine already pulls `ron` in, the editor now does too.
ron.workspace = true
# Editor-owned settings sections (e.g. the External Editor preference) derive
# their own Serialize/Deserialize for the Settings store.
serde.workspace = true
# PTY-backed terminal panel (Stage 10): run interactive/TUI programs — shells,
# REPLs, and AI-agent CLIs like `claude` — inside the editor. `portable-pty`
# opens a real pseudo-terminal (cross-platform: Linux now, Windows later);
# `vt100` parses the program's byte stream into a screen grid the panel renders.
portable-pty = "0.9"
vt100 = "0.16"