Edgewall Software
Modify

Opened 15 years ago

Closed 14 years ago

Last modified 14 years ago

#3704 closed enhancement (wontfix)

[PATCH] - Left Navigation CSS, project-navigation and back-navigation menu

Reported by: ilias@… Owned by: Jonas Borgström
Priority: normal Milestone:
Component: general Version: devel
Severity: normal Keywords:
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

The attached patches contain 4 lines of html/css, which implement 2 additional menues.

  • One is the "projnav" (Project Navigation).
  • One is the "backnav" (Back Navigation).

It would be very helpful for me, if this can go into the code. I could then start with the implementation of several plugins.

The order of importancy:

  • TracCssClassLeft.diff (most important)
  • ProjectNavigation.diff (would be very nice)
  • BackNavigation.diff (would be nice

Note that the back-navigation could be added to other templates too. Plugin-Developers can then use the new navigation in the usual way.

I've verified the design with Firefox, IE6, Opera9

Note that I am not very familar with HTML/CSS, thus a deeper review of the patches would be nice.

To see how it looks:

http://dev.lazaridis.com/base/wiki

btw: the global navigation at the top is static and is identically used on the website.

This scheme would fit to many sites with multiple projects.

For the trac/edgewall project/company combination:

  • Home, Download, Docu, Mailing Lists, License FAQ
    • ⇒ Project Navigation
  • Home, Weblog, Trac, Markup, Python Sidebar
    • ⇒ Global Navigation

Attachments (3)

TracCssClassLeft.diff (428 bytes ) - added by ilias@… 15 years ago.
1st priority
ProjectNavigation.diff (392 bytes ) - added by ilias@… 15 years ago.
2nd priority
BackNavigation.diff (408 bytes ) - added by ilias@… 15 years ago.
3rd priority

Download all attachments as: .zip

Change History (11)

by ilias@…, 15 years ago

Attachment: TracCssClassLeft.diff added

1st priority

by ilias@…, 15 years ago

Attachment: ProjectNavigation.diff added

2nd priority

by ilias@…, 15 years ago

Attachment: BackNavigation.diff added

3rd priority

comment:1 by Christian Boos, 15 years ago

Milestone: 0.100.11

The plan is to make template manipulation easier when we switch to Markup/Genshi for the next release.

Adding navbars like you do in attachment:ProjectNavigation.diff and attachment:BackNavigation.diff will then become easy.

I'll add an example about how to do this once this becomes possible.

comment:2 by ilias@…, 15 years ago

I am sure that you will manage to simplify things, but I've started work already, thus I cannot wait.

"It would be very helpful for me, if this can go into the code. I could then start with the implementation of several plugins."

Of course I can implement own templates, but I prefere to contribute the relevant changes directly into the trac-source (even if this means that I have an higher effort).

  • #3692 was a defect, solved quickly.
  • Project Navigation is important, too - and I am sure they make trac much more attractive (negating the need for users to implement own menues).
  • The Wiki-Back-Navigation is essentially missing, too
  • The .left-class is definiteley missing from the css, so this should be added at least.

I understand that you have much work to do, but can at least the .left-class go into the trac.css (I've spended one working day to seperate all this thus it can go into trac)?

in reply to:  2 ; comment:3 by Matthew Good, 15 years ago

Replying to ilias@lazaridis.com:

I understand that you have much work to do, but can at least the .left-class go into the trac.css?

Trac 0.10 is already long overdue and 0.11 will focus on supporting more extensive user customizations, so please don't try to schedule any more customization-related tickets for 0.10.

Defining a .left { float: left; } is not semantically relevant (though the Trac footer does unfortunately appear to use classes left and right). Instead of adding this class to the navigation divs you could style them based on their ids:

#homenav, #projnav, #backnav { float: left }

Obviously there are some shortcomings with customizing Trac at the moment, but I don't think it makes sense for us to go and patch the Trac templates and stylesheets to support one specific user's customizations.

in reply to:  3 comment:4 by ilias@…, 15 years ago

Replying to mgood:

Replying to ilias@lazaridis.com:

Trac 0.10 is already long overdue and 0.11 will focus on supporting more extensive user customizations, so please don't try to schedule any more customization-related tickets for 0.10.

Defining a .left { float: left; } is not semantically relevant (though the Trac footer does unfortunately appear to use classes left and right). Instead of adding this class to the navigation divs you could style them based on their ids:

#homenav, #projnav, #backnav { float: left }

using this one is not generic

#homenav, #projnav, #backnav { float: left }

the suggested class can be used for all lists (no need to modify *.css when a user creates an new custom nav category, e.g. "onemorenav").

.left    { float: left; } 
.left ul { padding-left: 0; text-align: left } 

Obviously there are some shortcomings with customizing Trac at the moment, but I don't think it makes sense for us to go and patch the Trac templates and stylesheets to support one specific user's customizations.

I do not invest so much time to convice you to pick up a customization (which I could simply place in a plugin or customized css/cs and save my and your time).

  • my patches do not affect customization, but product design.

I've tried to convince you that this tiny addition (css and 2 menu place-holders) would be of benefit for trac. I've reviewed many trac sites and all do similar things: they place a project navigation bar somehow somewhere.

The edgewall trac/website is the best example!

btw: If there's no plugin that contributes navigation entries to the new nav-categories, then trac's looks exactly like before. The additions are non-intrusive.

I don't depend on that the patches are applied to 0.10 - it would just be nice.

So, no problem if they stay for 0.10.1 or 0.11

in reply to:  1 ; comment:5 by ilias@…, 15 years ago

Replying to cboos:

The plan is to make template manipulation easier when we switch to Markup/Genshi for the next release.

Adding navbars like you do in attachment:ProjectNavigation.diff and attachment:BackNavigation.diff will then become easy.

I'll add an example about how to do this once this becomes possible.

what is the status of this?

in reply to:  5 ; comment:6 by osimons, 14 years ago

Milestone: 0.11.1
Resolution: wontfix
Status: newclosed

Replying to ilias@lazaridis.com:

what is the status of this?

All done. Use the ITemplateStreamFilter for instance to hook onto the rendered stream and add your own markup and data.

in reply to:  6 comment:7 by osimons, 14 years ago

Replying to osimons:

Use the ITemplateStreamFilter for instance to hook onto the rendered stream and add your own markup and data.

Or site.html of course - see TracInterfaceCustomization for more details on that.

in reply to:  6 comment:8 by ilias@…, 14 years ago

Replying to osimons:

Replying to ilias@lazaridis.com:

what is the status of this?

All done. Use the ITemplateStreamFilter for instance to hook onto the rendered stream and add your own markup and data.

ok, thanks

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Jonas Borgström.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Jonas Borgström to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.