-
Notifications
You must be signed in to change notification settings - Fork 76
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace binary tree to allow more that two splits per node #212
base: release-0.15
Are you sure you want to change the base?
Replace binary tree to allow more that two splits per node #212
Commits on Nov 25, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 2b77fa0 - Browse repository at this point
Copy the full SHA 2b77fa0View commit details
Commits on Dec 29, 2023
-
Make all fields of a tree private
-The DockState can use the method on the tree and does not need to reach into the fields of a tree
Configuration menu - View commit details
-
Copy full SHA for e031cc5 - Browse repository at this point
Copy the full SHA e031cc5View commit details
Commits on Dec 30, 2023
-
Move node index methods into the tree
- These operations are only possible on a binary tree and will have to have access to the tree going forwards
Configuration menu - View commit details
-
Copy full SHA for e0ba5c6 - Browse repository at this point
Copy the full SHA e0ba5c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for c043d22 - Browse repository at this point
Copy the full SHA c043d22View commit details -
Make the tree non dependent on the binary tree
- Nodes are still stored in a Vec but the position and order of the nodes no longer follows that of a binary tree. A node still only allows for a left and right node. So in practice it is still technically a binary tree. The implementation however no longer relies on this fact and should make further changes easer. - A node can no longer be split on its own.
Configuration menu - View commit details
-
Copy full SHA for a64ecdf - Browse repository at this point
Copy the full SHA a64ecdfView commit details -
Configuration menu - View commit details
-
Copy full SHA for b5c023e - Browse repository at this point
Copy the full SHA b5c023eView commit details -
Configuration menu - View commit details
-
Copy full SHA for d7dddb1 - Browse repository at this point
Copy the full SHA d7dddb1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7e8613e - Browse repository at this point
Copy the full SHA 7e8613eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a42d66 - Browse repository at this point
Copy the full SHA 1a42d66View commit details -
Configuration menu - View commit details
-
Copy full SHA for ea84598 - Browse repository at this point
Copy the full SHA ea84598View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e9b23b - Browse repository at this point
Copy the full SHA 5e9b23bView commit details
Commits on Dec 31, 2023
-
Keyboard focus fixes (Adanos020#211)
* Fix crash after calling `DockState::remove_tab`. (Adanos020#208) * Remove surface after removing the last remaining tab, if the surface isn't `Main`. * Add explicit panic in `Tree::remove_leaf` if the `Tree` is empty. * Bump patch version, update changelog. * Include instructions on how to run examples in Readme. (Adanos020#209) * Fix keyboard focus not working inside `DockArea`s * Add visual indicators when tab buttons are focused * Allow current tab to be switched using the keyboard * Remove extra focusable areas I removed focus from two widgets that are not supposed to be focusable. Also, I added highlighting to the separators when they are focused because apparently I can't remove the ability to focus them without breaking the ability to drag the separators. * Separators can now be moved with the arrow keys * Add highlighting to active tabs that are keyboard focused * Update changelog * Add tab styles for keyboard-focused tabs * Don't move separators unless Ctrl or Shift is down This is so that using the arrow keys to change the keyboard focus will still work normally. * Clippy --------- Co-authored-by: Adam Gąsior <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ed990ed - Browse repository at this point
Copy the full SHA ed990edView commit details -
Configuration menu - View commit details
-
Copy full SHA for b002a31 - Browse repository at this point
Copy the full SHA b002a31View commit details
Commits on Jan 8, 2024
-
Configuration menu - View commit details
-
Copy full SHA for e4e5e19 - Browse repository at this point
Copy the full SHA e4e5e19View commit details -
Keyboard focus fixes (Adanos020#211)
* Fix crash after calling `DockState::remove_tab`. (Adanos020#208) * Remove surface after removing the last remaining tab, if the surface isn't `Main`. * Add explicit panic in `Tree::remove_leaf` if the `Tree` is empty. * Bump patch version, update changelog. * Include instructions on how to run examples in Readme. (Adanos020#209) * Fix keyboard focus not working inside `DockArea`s * Add visual indicators when tab buttons are focused * Allow current tab to be switched using the keyboard * Remove extra focusable areas I removed focus from two widgets that are not supposed to be focusable. Also, I added highlighting to the separators when they are focused because apparently I can't remove the ability to focus them without breaking the ability to drag the separators. * Separators can now be moved with the arrow keys * Add highlighting to active tabs that are keyboard focused * Update changelog * Add tab styles for keyboard-focused tabs * Don't move separators unless Ctrl or Shift is down This is so that using the arrow keys to change the keyboard focus will still work normally. * Clippy --------- Co-authored-by: Adam Gąsior <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c2066c5 - Browse repository at this point
Copy the full SHA c2066c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66865fd - Browse repository at this point
Copy the full SHA 66865fdView commit details -
Correctly set the focused node when moving a node
- When a node is removed this might cause a sibling of the node to be moved. If the sibling is focused this caused the focused node to point to an stale node.
Configuration menu - View commit details
-
Copy full SHA for b0b60a3 - Browse repository at this point
Copy the full SHA b0b60a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f8a797 - Browse repository at this point
Copy the full SHA 3f8a797View commit details -
Configuration menu - View commit details
-
Copy full SHA for fd12ee3 - Browse repository at this point
Copy the full SHA fd12ee3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9554d52 - Browse repository at this point
Copy the full SHA 9554d52View commit details -
- Make the breadth first index iterator public
Configuration menu - View commit details
-
Copy full SHA for 05594fb - Browse repository at this point
Copy the full SHA 05594fbView commit details
Commits on Jan 9, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 766eacd - Browse repository at this point
Copy the full SHA 766eacdView commit details
Commits on Jan 20, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7742823 - Browse repository at this point
Copy the full SHA 7742823View commit details
Commits on Feb 11, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7a25e9b - Browse repository at this point
Copy the full SHA 7a25e9bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 34f159a - Browse repository at this point
Copy the full SHA 34f159aView commit details -
- The exact behavior of these functions still need to be discussed.
Configuration menu - View commit details
-
Copy full SHA for 5ad83e4 - Browse repository at this point
Copy the full SHA 5ad83e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63213ee - Browse repository at this point
Copy the full SHA 63213eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8b3d088 - Browse repository at this point
Copy the full SHA 8b3d088View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c29d1e - Browse repository at this point
Copy the full SHA 6c29d1eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 391f723 - Browse repository at this point
Copy the full SHA 391f723View commit details