| Summary: | Breadcrumb root href is not correct for file services | ||
|---|---|---|---|
| Product: | [ECD] Orion | Reporter: | Mark Macdonald <mamacdon> |
| Component: | Client | Assignee: | Project Inbox <orion.client-inbox> |
| Status: | RESOLVED WONTFIX | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | 0.5 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | All | ||
| Whiteboard: | |||
|
Description
Mark Macdonald
The breadcrumb is currently a very "widgety" thing that doesn't have much semantics (well, except for "navigate/table.html#" (yuck). Either it needs to become more aware of Orion and file systems, or we should get rid of those assumptions and keep it as a presentation only thing. I think we need some common page code that deals with the default root correctly, knows about file systems, etc. I think I should fix this in the course of the cleanup in bug 349531. That bug is about a page being able to say, "here's my location and title" and the breadcrumb and everything else gets hooked up for free. moving out of 0.5M2 to 0.5 milestone until we have more specific buckets for future Moving to 1.0. The breadcrumb API is really a mess right now. The "firstSegmentName" API in breadcrumb is really about autogenerating extra root links for metadata not represented in the resource parent chain. And it assumes the path to this autogenerated root is "" if nothing else is provided. This is just wrong/misleading. In bug 381869 I actually renamed "firstSegmentName" to "workspaceRootSegmentName" just to make it clear that this option has much more meaning than just "firstSegmentName." It has been pretty hard to get the breadcrumbs consistent and working as we tweak the common code and try to figure out where the page title information should go. So I'm not inclined to take on multiple file system correctness so late in the release. What I think needs to happen is that the caller of the breadcrumb API should be able to pass an optional root object with a "Name" and "Location" and then a resource with parents, etc. The caller should always have to supply an hrefCallback that maps the resource location to a URI, rather than there being any assumptions about the navigator. So in Mark's case, the code should set up a root object whose name is the file system name and whose location is the "top" of the file system. We shouldn't have any assumptions about an empty path meaning the root. We still might want to support a "rootSegmentName" for the case where the root of a resource should have a special name (or perhaps a prefix), but this should be independent of having a special root object that is not represented in the Parent chain of the resource. I know what to do here but I'm scared to do it now, will hit it just after 0.5 See also bug 381405 comment 1 regarding naming of breadcrumb roots (and workspaces) Closing as part of a mass clean up of inactive bugs. Please reopen if this problem still occurs or is relevant to you. For more details see: https://dev.eclipse.org/mhonarc/lists/orion-dev/msg03444.html |