[GH-ISSUE #519] Support Multiple folder level in map Local, Breakpoint, and Scripting #518

Open
opened 2026-03-03 19:51:05 +03:00 by kerem · 0 comments
Owner

Originally created by @NghiaTranUIT on GitHub (Jul 9, 2025).
Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/519

Originally assigned to: @kics223w1 on GitHub.

Description

Currently, Proxyman Windows/Linux only supports 1 level, or a list of rules. We should support it as a tree for multiple folders

Use this Beta build to understand how it works: https://github.com/ProxymanApp/Proxyman/issues/2400#issuecomment-3016599192

Image

Acceptance Criteria

  • Ping @NghiaTranUIT to get all necessary files -> Understand how it works and port it to Windows
  • Ping @NghiaTranUIT to get Unit Tests -> port to Windows and make it pass.

Multiple Folder UI / UX Criteria

  • Can right click to selected node -> Add new rule or folder -> It's now a tree.
  • Able to drag and drop a sub-tree to a new location -> Verify the tree is updated
  • If I disable a parent folder -> All children are disabled (Gray color)
  • I can Delete multiple selection, if it's a node -> Delete this node, if it's a sub-tree -> Delete this sub-tree -> Verify it's updated in the disk

Logic

  • Implement a generic TreeNode, FolderNode, RuleNode, so we can share the same logic to Map Local, Breakpoint, and Scripting
  • ⚠️ : IMPORTANT: Auto migrate old data file -> To the Tree view -> Never delete current user data from previous build
  • Map Local Tools or other tools -> Will find a matching node by DFS.
  • Make sure old logic is working fine on the new tree: For example: Open map Local Editor -> Update Name -> Node in Map Local View will be updated too
  • Filter should work with new Tree. For example: I can filter a folder -> Enable or disable some child node -> ESC to reset the filter -> These updated node should not be changed
Originally created by @NghiaTranUIT on GitHub (Jul 9, 2025). Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/519 Originally assigned to: @kics223w1 on GitHub. ## Description Currently, Proxyman Windows/Linux only supports 1 level, or a list of rules. We should support it as a tree for multiple folders Use this Beta build to understand how it works: https://github.com/ProxymanApp/Proxyman/issues/2400#issuecomment-3016599192 ![Image](https://github.com/user-attachments/assets/4bdf5148-8142-4a1d-9505-c8882055b266) ## Acceptance Criteria - [x] Ping @NghiaTranUIT to get all necessary files -> Understand how it works and port it to Windows - [x] Ping @NghiaTranUIT to get Unit Tests -> port to Windows and make it pass. ## Multiple Folder UI / UX Criteria - [x] Can right click to selected node -> Add new rule or folder -> It's now a tree. - [x] Able to drag and drop a sub-tree to a new location -> Verify the tree is updated - [x] If I disable a parent folder -> All children are disabled (Gray color) - [x] I can Delete multiple selection, if it's a node -> Delete this node, if it's a sub-tree -> Delete this sub-tree -> Verify it's updated in the disk ## Logic - [x] Implement a generic TreeNode, FolderNode, RuleNode, so we can share the same logic to Map Local, Breakpoint, and Scripting - [x] ⚠️ : IMPORTANT: Auto migrate old data file -> To the Tree view -> Never delete current user data from previous build - [x] Map Local Tools or other tools -> Will find a matching node by DFS. - [x] Make sure old logic is working fine on the new tree: For example: Open map Local Editor -> Update Name -> Node in Map Local View will be updated too - [x] Filter should work with new Tree. For example: I can filter a folder -> Enable or disable some child node -> ESC to reset the filter -> These updated node should not be changed
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/proxyman-windows-linux#518
No description provided.