Zorro666 / renderdoc

RenderDoc is a stand-alone graphics debugging tool.
https://renderdoc.org/builds
MIT License
3 stars 1 forks source link

When loading a layout close any orphaned windows #99

Closed Zorro666 closed 12 months ago

Zorro666 commented 1 year ago

Description

Issue

  1. Default Layout (or any layout) : contains multiple windows but does not contain a specific window ie. Pipeline State
  2. Layout 1 contains windows which are not in the Default Layout i.e. Pipeline State window
  3. Load Default Layout
  4. Load Layout 1
  5. Load Default Layout
  6. Now unable to open the Pipeline State window because it has become orphaned (no parent) from any tool window manager. Have to restart RenderDoc to be able to open the orphaned windows.

Discussion

Extra Changes

Testing

Following steps mentioned end up with logs like this and are able to open windows which without the fix had not been able to open.

QTRD 224632: [15:24:21]       MainWindow.cpp(3075) - Log     - SaveLayout  0
QTRD 224632: [15:24:25]       MainWindow.cpp(3091) - Log     - LoadLayout  1
QTRD 224632: [15:24:25] ToolWindowManager.cpp(1555) - Warning - area parameter ignored for this type
QTRD 224632: [15:24:25]       MainWindow.cpp(3111) - Log     - Manually closing orphaned window  "capDialog"
QTRD 224632: [15:24:30]       MainWindow.cpp(3091) - Log     - LoadLayout  0
QTRD 224632: [15:24:30] ToolWindowManager.cpp( 879) - Warning - invalid splitter encountered
QTRD 224632: [15:24:30]       MainWindow.cpp(3111) - Log     - Manually closing orphaned window  "meshPreview"
QTRD 224632: [15:24:30]       MainWindow.cpp(3111) - Log     - Manually closing orphaned window  "textureViewer"
Zorro666 commented 12 months ago

https://github.com/baldurk/renderdoc/pull/3115