Opened 19 years ago
Closed 17 years ago
#2348 closed enhancement (fixed)
Make third level navigation controllable by the INavigationContributor extension point
Reported by: | Owned by: | Noah Kantrowitz | |
---|---|---|---|
Priority: | high | Milestone: | 0.11 |
Component: | general | Version: | 0.9 |
Severity: | normal | Keywords: | ctxtnav |
Cc: | kroymann@…, rupert | Branch: | |
Release Notes: | |||
API Changes: | |||
Internal Changes: |
Description
At the moment, the third level of navigation is controlled by each main component (Wiki, Browser, etc.) via its process_request method and its ClearSilver template, while the first and second level of navigation (i.e. the 'mainnav' and the 'metanav' categories) is generated using the INavigationContributor extension point. If only the latter method was used, the third level of navigation would be extendable by TracPlugins. This will require changes to the 'header.cs' template, to the main component templates and to the instantiations of INavigationContributor and IRequestHandler.
Attachments (0)
Change History (5)
comment:1 by , 18 years ago
Milestone: | 1.0 → 0.11 |
---|---|
Type: | defect → enhancement |
comment:2 by , 18 years ago
Priority: | normal → high |
---|
This is becoming increasinly important… I'm planning to look into it soon-ish.
comment:3 by , 17 years ago
Cc: | added |
---|
comment:4 by , 17 years ago
Milestone: | 0.11.1 → 0.11 |
---|---|
Owner: | changed from | to
This is now doable, but in a different way.
The context navigation (ctxtnav) usually needs much more logic than simply being added to a list, like the INavigationContributor does for mainnav and metanav. So the solution is now to use add_ctxnav
while rendering the page, as the ctxtnav <div> content is generated programmatically and should not be placed in templates anymore.
Plugins that want to alter existing ctxtnavs can use the ITemplateStreamFilter approach.
comment:5 by , 17 years ago
Keywords: | ctxtnav added |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Done in log:/sandbox/ctxtnav@6363, merged in trunk in r6357.
IMHO this should be implemented as soon as we switch to Genshi as more and more plugin devs are in need of it.