Skip to content

Migrate inspector and toolbars to native bevy_feathers widgets; upgrade lightyear to 0.28#307

Merged
jbuehler23 merged 3 commits into
mainfrom
feat/native-feathers-widgets-019
Jul 6, 2026
Merged

Migrate inspector and toolbars to native bevy_feathers widgets; upgrade lightyear to 0.28#307
jbuehler23 merged 3 commits into
mainfrom
feat/native-feathers-widgets-019

Conversation

@jbuehler23

Copy link
Copy Markdown
Owner

Inspector and toolbars on native bevy_feathers widgets

Migrated

  • Inspector: reflect fields (bool, numeric, vector, list, string, enum, color), the material, custom-props, and brush cards, and card chrome (feathers panes and disclosure toggle).
  • Toolbars (main viewport, navmesh, terrain), operator buttons, icons.

Not yet migrated: project_select, asset and material browsers, hierarchy, keybind settings, terrain inspector, and the inspector Add-component menu. The bespoke widgets stay in jackdaw_feathers until those convert.

Lightyear 0.28

Upgrades jackdaw_multiplayer_lightyear to lightyear 0.28 (Bevy 0.19) and removes the workspace exclude so it builds with the workspace.

  • ReplicationSender is a unit marker constructed with default().
  • SendUpdatesMode is gone; send cadence follows the replication tick.
  • Rooms use a RoomId allocated from RoomAllocator plus a Rooms component; room membership gates replication, so the NetworkVisibility marker is dropped.
  • register_component is replaced by component().replicate().

Migrated
- Inspector: reflect fields (bool, numeric, vector, list, string, enum,
  color), the material, custom-props, and brush cards, and card chrome
  (feathers panes and disclosure toggle).
- Toolbars (main viewport, navmesh, terrain), operator buttons, icons.

Not yet migrated: project_select, asset and material browsers, hierarchy,
keybind settings, terrain inspector, and the inspector Add-component menu.
The bespoke widgets stay in jackdaw_feathers until those convert.
Bumps jackdaw_multiplayer_lightyear to lightyear 0.28 (Bevy 0.19) and
removes the workspace exclude so the crate builds with the workspace.

- ReplicationSender is a unit marker; construct it with default().
- SendUpdatesMode is gone; send cadence follows the replication tick.
- Rooms use a RoomId allocated from RoomAllocator plus a Rooms component
  (Rooms::single(id)); ZoneRooms maps ZoneId to RoomId.
- Room membership gates replication directly, so the NetworkVisibility
  marker is dropped.
- register_component is replaced by component().replicate().
- Unit-struct components (ReplicationSender, ReplicationReceiver) use the
  bare value instead of ::default().
- Return the spawned entity directly instead of binding and returning it.
- Scope Commands so its borrow ends before World::flush.
- Reference dispatch_operator with backticks instead of a doc link to a
  private item.
@jbuehler23
jbuehler23 force-pushed the feat/native-feathers-widgets-019 branch from 4b35384 to 0c2ff34 Compare July 5, 2026 12:34
@jbuehler23
jbuehler23 merged commit 48c9891 into main Jul 6, 2026
7 checks passed
@jbuehler23
jbuehler23 deleted the feat/native-feathers-widgets-019 branch July 6, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant