Fix up some hooks to standardize things and reduce extension developer code.

Review Request #2668 — Created Oct. 22, 2011 and submitted — Latest diff uploaded

Information

Review Board
master

Reviewers

Fix up some hooks to standardize things and reduce extension developer code.

This simplifies our hooks a bit to work without having to subclass all
hooks. They now take parameters for the default information. Subclasses
can still be made to override the functions, but they're only needed if
the returned data is more dynamic.

Some of the hooks that would only inject one entry (navigation and
dashboard hooks) can now inject several at once, further reducing
developer code.

As part of this, I've standardized some names. "title" to "label", and
"uri" to "url". I've also removed the support for javascript: URLs,
since modern browsers are phasing those out.
New unit tests pass.