Add several utility functions and UI widgets to jquery.gravy for the Review Board UI rewrite

Review Request #658 — Created Dec. 3, 2008 and submitted


Navi (deprecated)


Added a number of new widgets and utility functions for use in the
Review Board UI rewrite.
The main highlights include an auto-size text area, inline editor, modal
dialog box, and tooltips. There's also a utility function for
introducing a delay in an animation sequence and one for positioning an
element to the side of another element intelligently based on the sizes
of both.

I documented some of this, but I have a ways to go for that. I'll be handling
that in a separate change.
Tested with my Review Board UI rewrite. Verified that it works on Firefox 3, and I tested earlier with IE6, IE7 and Opera. There may be some regressions since then, but I'll test again before any change goes in that uses this.
  1. I didn't really take the time to figure out the total picture here, but most of this seems straightforward.
  2. Indentation here is weird.  Did you mean to make this change?
    1. The change looks straightforward in that you're switching from jquery.gravy.js's unselectable to jquery UI's disabledSelection. But in that case, do you still need unselectable in jquery.gravy.js?
    2. Fixed the indentation.
      unselectable shouldn't exist in gravy anymore.
  3. This seems like an important TODO.
    1. I looked into this a bit. Firefox (dunno about other browsers) don't seem to bubble keypress events properly when you have a listener attached to 'document'. That listener will take priority, so we never even see the event. The exception, it seems, is input fields and text areas. Or maybe it's that the document one is registered first. Hard to say, but I'm not going to be able to fix it for this change.
  2. /trunk/djblets/djblets/media/js/jquery.gravy.js (Diff revision 1)
    This looks very similar to what is provided by jQuery UI Dialog. Any reason no to use that?
    1. meta: Sorry. I'm new to this comment system. It was not at all clear what the difference was between 'Ship It' and publish until I had already done it. Now it makes sense, but I don't see a way to take back the 'Ship It' part. ;) Maybe a tooltip could help there?
    2. There was something during development that wasn't working right or something we needed that was unavailable. I don't remember what, but I can do some tests and see if we can just use that instead.
    3. Don't worry about it.
      There's no way to take it back yet. After 1.0, we're going to probably overhaul the ship-it thing and make it more flexible/powerful, and better describe what's going on.
Review request changed

Change Summary:

Condense some code so as to slightly reduce the footprint, and fix indentation.


Revision 2 (+761 -13)

Show changes