838: It's impossible to type certain letters (e.g. 'a' and 'A') into Summary and Description fields when diffviewer is active

mor****@gmai***** (Google Code) (Is this you? Claim this profile.)
chipx86
chipx86
Feb. 4, 2009
850
What's the URL of the page containing the problem?

http://reviews.review-board.org/r/729/diff/ 

What steps will reproduce the problem?
1. One may activate diff view.
2. Then try to update Summary or description fields. 

What is the expected output? What do you see instead?

While most letters can be typed in, certain letters are "intercepted",
probably as hotkeys by the diff viewer component. 

What operating system are you using? What browser?

This always happens for me in Firefox-3.0.4/Linux.

Please provide any additional information below.
chipx86
#1 chipx86
  • +Confirmed
  • +Milestone-Release1.0
    +Component-DiffViewer
    +Keyboard
    +Usability
#2 ch***@orr.***** (Google Code) (Is this you? Claim this profile.)
Yup, I'm also getting this while updating summary/description/testing on a /r/x/diff/
page (Firefox 3.0.6 and a quick test in Safari).

Sticking Firebug breakpoints on diffviewer.js shows that the call to stop event
propagation while we're in textarea and input fields never actually gets called.

Checking the output of the jQuery selector $("textarea, input") appears to reveal the
problem.  As this selector gets executed only one time when the document becomes
"ready", it only sees the textarea/inputs that exist at that time.  i.e. the
dynamically-created ".editable" fields aren't included and so don't get the
propagation-cancelling function attached.

Basically it appears to be a race between this and the $(".editable").each code in
reviews.js.  Which, as I don't know jQuery, I can't really help to solve.  Sorry!
chipx86
#3 chipx86
Fixed in Djblets r11961.
  • -Confirmed
    +Fixed
  • +chipx86
#4 ch***@orr.***** (Google Code) (Is this you? Claim this profile.)
Cool.

However, I'd also note that this bug also affects the dialogs (e.g. "Update diff"),
which are regular forms, rather than fancy inline editors.
chipx86
#5 chipx86
Also fixed.