[Bf-blender-cvs] [bca9ec767cd] master: Revert "Asset Browser: Ensure parent catalogs are expanded when adding child"

Julian Eisel noreply at git.blender.org
Wed Oct 27 18:28:00 CEST 2021


Commit: bca9ec767cd7a017a8cbe64ef0bd4b713b99a2b4
Author: Julian Eisel
Date:   Wed Oct 27 18:24:25 2021 +0200
Branches: master
https://developer.blender.org/rBbca9ec767cd7a017a8cbe64ef0bd4b713b99a2b4

Revert "Asset Browser: Ensure parent catalogs are expanded when adding child"

This reverts commit 487faed6d0a1170a2f098552f794280fabe82186.

I changed my mind on how to implement this feature. Adding a catalog
should also activate it, like we do it for adding other data in Blender.
The activation will automatically make it visible then. See the
following commit.

===================================================================

M	source/blender/editors/include/UI_tree_view.hh
M	source/blender/editors/interface/tree_view.cc

===================================================================

diff --git a/source/blender/editors/include/UI_tree_view.hh b/source/blender/editors/include/UI_tree_view.hh
index 77472979beb..0d18eedeac9 100644
--- a/source/blender/editors/include/UI_tree_view.hh
+++ b/source/blender/editors/include/UI_tree_view.hh
@@ -196,15 +196,6 @@ class AbstractTreeView : public TreeViewItemContainer {
    * the actual state changes are done in a delayed manner through this function.
    */
   void change_state_delayed();
-  /**
-   * Typically when adding a new child from the UI, the parent should be expanded to make the new
-   * item visible. While this isn't totally bullet proof (items may be expanded where the child was
-   * added dynamically, not through user action), it should give the wanted behavior as needed in
-   * practice.
-   * "Focused" here means active or hovered, as a way to tell if the new item came from user
-   * interaction (on the row directly or through the context menu).
-   */
-  void unveil_new_items_in_focused_parent() const;
   void build_layout_from_tree(const TreeViewLayoutBuilder &builder);
 };
 
@@ -232,8 +223,6 @@ class AbstractTreeViewItem : public TreeViewItemContainer {
   bool is_open_ = false;
   bool is_active_ = false;
   bool is_renaming_ = false;
-  /* Could the item be identified from a previous redraw? */
-  bool is_new_ = true;
 
   IsActiveFn is_active_fn_;
 
diff --git a/source/blender/editors/interface/tree_view.cc b/source/blender/editors/interface/tree_view.cc
index d64f9d9c975..c08fa51d5a5 100644
--- a/source/blender/editors/interface/tree_view.cc
+++ b/source/blender/editors/interface/tree_view.cc
@@ -169,21 +169,6 @@ void AbstractTreeView::change_state_delayed()
   foreach_item([](AbstractTreeViewItem &item) { item.change_state_delayed(); });
 }
 
-void AbstractTreeView::unveil_new_items_in_focused_parent() const
-{
-  foreach_item([](AbstractTreeViewItem &item) {
-    if (!item.is_new_ || !item.parent_) {
-      return;
-    }
-    if (item.parent_->is_active() ||
-        /* Tree-row button is not created if a parent is collapsed. It's required for the
-         * hover-check. */
-        (item.parent_->tree_row_but_ && item.parent_->is_hovered())) {
-      item.parent_->set_collapsed(false);
-    }
-  });
-}
-
 /* ---------------------------------------------------------------------- */
 
 void AbstractTreeViewItem::tree_row_click_fn(struct bContext * /*C*/,
@@ -408,7 +393,6 @@ void AbstractTreeViewItem::update_from_old(const AbstractTreeViewItem &old)
   is_open_ = old.is_open_;
   is_active_ = old.is_active_;
   is_renaming_ = old.is_renaming_;
-  is_new_ = false;
 }
 
 bool AbstractTreeViewItem::matches(const AbstractTreeViewItem &other) const
@@ -585,7 +569,6 @@ void TreeViewBuilder::build_tree_view(AbstractTreeView &tree_view)
   tree_view.update_from_old(block_);
   tree_view.change_state_delayed();
   tree_view.build_layout_from_tree(TreeViewLayoutBuilder(block_));
-  tree_view.unveil_new_items_in_focused_parent();
 }
 
 /* ---------------------------------------------------------------------- */



More information about the Bf-blender-cvs mailing list