Skip to content

Add resizable XML source panel below tree view#210

Open
rdmitry0911 wants to merge 1 commit intocorpnewt:masterfrom
rdmitry0911:master
Open

Add resizable XML source panel below tree view#210
rdmitry0911 wants to merge 1 commit intocorpnewt:masterfrom
rdmitry0911:master

Conversation

@rdmitry0911
Copy link

@rdmitry0911 rdmitry0911 commented Mar 3, 2026

Summary

  • Splits the main window with a vertical PanedWindow: the plist tree view occupies the top pane (~70%) and a new XML source panel sits below it
  • Tree→Text sync: tree edits automatically refresh the XML panel with a 100 ms debounce (hooked into add_undo and reundo)
  • Text→Tree sync: edits in the XML panel are applied to the tree after a 600 ms debounce, or immediately via the Apply button / Cmd+Return
  • Search sync: find_next/find_prev now also highlight the matching element in the XML panel (yellow tag) and scroll to it
  • Toggle: the panel can be shown/hidden with Cmd/Ctrl+B (also added to the Windows menu)
  • Initial sash position set to 70% tree / 30% text on first open

Test plan

  • Open a plist file and verify the XML panel appears below the tree
  • Edit a node in the tree and confirm the XML panel updates (~100 ms delay)
  • Edit XML directly in the panel and confirm the tree rebuilds (~600 ms delay)
  • Click Apply or press Cmd/Ctrl+Return in the XML panel for immediate sync
  • Use Find (Cmd/Ctrl+F) and navigate results — check that the XML panel scrolls to and highlights the match
  • Toggle the panel with Cmd/Ctrl+B and verify it hides/shows
  • Resize the sash and reopen the file to confirm layout behaviour

🤖 Generated with Claude Code

Splits the main window with a vertical PanedWindow: the plist tree view
occupies the top pane (~70%) and a new XML source panel sits below it.

- Tree→Text sync: tree edits automatically refresh the XML panel with a
  100 ms debounce (hooked into add_undo and reundo)
- Text→Tree sync: edits in the XML panel are applied to the tree after a
  600 ms debounce, or immediately via the Apply button / Cmd+Return
- Global search: find_next/find_prev now also highlight the matching
  element in the XML panel (yellow tag) and scroll to it
- Toggle the panel with Cmd/Ctrl+B (also added to Windows menu)
- Initial sash position set to 70 % tree / 30 % text on first open

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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