Bug #55830
closedCleanup mess with treeView implementations
100%
Description
Currently we have ~17 classes inheriting from Backend\Tree\View\AbstractTreeView class
(not counting legacy classes from before namespace change).
We have several classes with the same names (from different namespaces) like:
Backend\Tree\View\PageTreeView
Backend\View\PageTreeView
or
Impexp\LocalPageTree
localPageTree from class.browse_links_php
localPageTree from db_new_php
localPageTree from move_el_php
It might be ok to have the same names across namespaces, but if it's combined with other issues, it makes really hard to understand this area of the core.
There are also 3 empty classes:
Rtehtmlarea\ImageFolderTree
rteFolderTree from class.browse_links_php
rtePageTree from class.browse_links_php
See attached diagrams of classes. One is with legacy classes, second one is without.
Because of this mess behaviour and look of trees differs in different parts of the backend (Link wizard, RTE link wizard, folder selector, file selector, image selector, RTE image selector,....).
It's also really hard to reuse it in own extension (which base class to inherit?).
Files