This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
This is mentioned in issue #19443, #25017, #22758. It is necessary to solve ASAP, to be able to deal with project tab at least. Currently only temporary solution is on route.
Currently only via hack in NbPlaces.projectDesktop and projects xml layer, is Project node set to Project tab.
As I understand it is necessary to make this: 1) Register the roots in xml in some folder (Nodes/ExplorerRoots ?) 2) Retrieve those roots in NbMainExplorer and work with them 3) For backward compatibility, when loading old roots from maninfest convert them to the xml.
AFAIK this is not what we actually want to do. There is already an adequate API for adding Explorer tabs - the Window System API's XML declaration system. Issue #22758 requests that this actually be done for the standard tabs; then manifest root installation would still be deprecated and there would be no direct layer equivalent. You also need to add menu items to the View menu and redisplay logic, though, so the actual impl might not be so easy. But there is nothing privileged about NbMainExplorer's impl, any module could do this I think. But I feel that having the core not only create Explorer tabs, but also menu items, automatically from a single layer file is too high-level and magical and not a great API. I don't agree with the style of the hack in place for the Project tab now. Anyway UI/ExplorerRoots/ is a more suitable folder name, probably.
I confused even more now. I thought the WindowSystem xml API isn't enough, that it just registers the components to the explorer. And that the registering of root nodes is needed so the project tab component gets the proper one. Yes, the hack is ugly (I marked is as temporary in the sense this issue should fix it). But remains the question what the solution of the project node should be? I guess you have in mind moving the actual project tab component impl to projects and make it working from there. Right?
"I thought the WindowSystem xml API isn't enough, that it just registers the components to the explorer." - right, and then you need one menu action action to display it. "I guess you have in mind moving the actual project tab component impl to projects and make it working from there. Right?" - yes, delete it from core entirely.
Fixed in [trunk] moved the actual project tab component impl into projects module. Removed the hack and created actions in menu to represent the explorer components, the defaults are filesystems, runtime (def in core), and projects (in projects), other roots are retrieved be ExplorerRootsAction. core/../NbPlaces.java 1.63 /actions/Bundle.properties 1.124 /actions/ExplorerRootsAction.java 1.2 /actions/ViewFilesystemsTabAction 1.1 /actions/ViewRuntimeTabAction 1.1 projects/../Bundle.properties 1.57 /CurrentProjectNode.java 1.2 /ViewProjectsTabAction 1.1 /MiniStatusBar.java 1.1 /resources/project-layer.xml 1.30 /resources/components/project.settings 1.3
issue doesn't apply to new window system - verified