]
Ilya Shaikovsky reassigned RF-8212:
-----------------------------------
Assignee: Nick Belaevski
Want to promote this also to 3.3.3 if the fix which made by Ryan is really enough and
looks good for you from compatibility point of view.
Extended data table - keyboard navigation of rows of a selectable
grid breaks after rerendering another datatable with selectionMode=none
-----------------------------------------------------------------------------------------------------------------------------------------
Key: RF-8212
URL:
https://jira.jboss.org/jira/browse/RF-8212
Project: RichFaces
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: component-tables
Affects Versions: 3.3.1, 3.3.2.SR1, 3.3.3.BETA1
Environment: tomcat 6, facelets, RichFaces 3.3.1
Reporter: Ryan Yoder
Assignee: Nick Belaevski
Priority: Minor
Original Estimate: 4 hours
Remaining Estimate: 4 hours
The keyboard navigation of rows of a selectable grid breaks after rerendering another
datatable with selectionMode=none.
A selectable grid on the top of the pagehas an a4j:support
event="onselectionchange" to reRender another grid below it that is showing
details about the currently selected row in the upper grid. The lower grid should have
selectionmode="none" to produce this bug.
The up/down arrows no longer work on the upper grid after the selection is changed and
the lower grid reRenders.
The problem lies in the following code:
ExtendedDataTableSelection.js
removeListeners: function() {
Event.stopObserving(document, "keydown", this.eventKeyPress);
The problem is that for the bottom grid, the this.eventKeyPress is null which has the
effect of removing all keydown event listeners on the page, including the top grid's
listener.
Add an if statement before this line to fix the bug. I have tested it and it works for
me.
removeListeners: function(){
if(this.eventKeyPress) { // added if to ensure that all keydown event listeners are not
removed
Event.stopObserving(document, "keydown", this.eventKeyPress);
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: