Skip to content

Game Studio: remove WPF binding errors and Freezable warnings, fix a few editor bugs - #3485

Merged
xen2 merged 12 commits into
stride3d:masterfrom
xen2:fix/assetview-binding-errors
Sep 25, 2026
Merged

xen2 merged 12 commits into
stride3d:masterfrom
xen2:fix/assetview-binding-errors

Conversation

@xen2

@xen2 xen2 commented Sep 25, 2026

Copy link
Copy Markdown
Member

PR details

Removes most of the WPF binding errors and Freezable warnings that Game Studio logged in the debugger output (asset view, pane titles, tool panels, property grid, menus, themes, scene and script editors). Binding messages are now printed once instead of twice.

It also fixes a few editor bugs found along the way:

  • Closing a floating window after docking a scene editor back no longer destroys its game view.
  • Asset preview: zoom and fit run on the game thread, and the first fit uses the real preview area size.
  • Scene and prefab editors bind their UI only once the scene is initialized.
  • The asset view activates when a folder is selected.
  • The scene editor "Loading..." texts no longer animate while hidden.
  • Folders in a read-only package can no longer be renamed.

@xen2 xen2 added the ci-editor Run the GameStudio editor screenshot suite on this PR label Sep 25, 2026
xen2 added 12 commits September 26, 2026 04:22
WindowChrome binds its sizing properties to system parameters, so it can
never be frozen: UnfreezableWindowChrome skips the attempt and its warning.
The AvalonDock document floating window chrome now sets all of them, like
its sibling styles, so it can be frozen.
Theme styles use theme brushes instead of brushes built from DynamicResource
colors.
Remove the unused window button bitmaps.
- The property grid expander arrow no longer looks for a TreeViewItem.
- Menu items use fixed content alignments instead of binding them to the
  parent ItemsControl, which fails for menu items created before they are
  in a menu.
- Asset-only badges are in an asset template, so folder tiles no longer bind them.
- Renaming follows IsEditable: folders in a read-only package can no longer be renamed.
- The content no longer inherits the host's DataContext before AssetCollection is set.
- AssetContextMenu is typed as a ContextMenu.
- Toolbar icon menus no longer bind the icon size to its bitmap pixel size.
- Remove a debug Console.WriteLine.
- Pane titles bind the dirty marker only for asset editors, and the tab
  highlight only inside tabs.
- Tool panels set their DataContext, so AvalonDock re-parenting does not give
  them the layout item.
@xen2
xen2 force-pushed the fix/assetview-binding-errors branch 2 times, most recently from 8589072 to 6d50d06 Compare September 25, 2026 19:26
@xen2
xen2 merged commit affacc9 into stride3d:master Sep 25, 2026
32 of 33 checks passed
@xen2
xen2 deleted the fix/assetview-binding-errors branch September 25, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-editor Run the GameStudio editor screenshot suite on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant