[
https://issues.jboss.org/browse/RF-10793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12791603#comment-12791603
]
David Lee edited comment on RF-10793 at 7/23/13 5:17 AM:
---------------------------------------------------------
Hi Guys,
The fix JavaScript will cause another issue,
if the table with dataScroller -- then the selection will be clean up when user
switch the page.
So since I have the page stuff, I cannot add the "x" to do clean selection in
backend.
When I try to figure out why the statement always goes wrong,
I found the key of this problem might in TableSelectionRendererContributor.java:
for line 90
>>
ClientSelection _oldClientSelection = (ClientSelection) table
.getAttributes().get(CLIENT_SELECTION);
<<
The _oldClientSelection never got update, so when the code checking for
shouldRemoveFromSelection(),
always return false!
>>
// Decide whether to remove new row to selection based on comparison with
// old one
public boolean shouldRemoveFromSelection(int i,
ClientSelection oldSelection, ClientSelection newSelection) {
return !newSelection.isReset()
&& (!newSelection.isSelectAll() &&
(!newSelection.isSelected(i) && oldSelection
.isSelected(i)));
}
<<
The oldSelection.isSelected( i ) always return false.
That cause the backend selection goes wrong.
Any workaround for this one?
By the way, I'm using 3.3.3Final
was (Author: dlee606):
Hi Guys,
The fix JavaScript will cause another issue,
if the table with dataScroller -- then the selection will be clean up when user
switch the page.
So since I have the page stuff, I cannot add the "x" to do clean selection in
backend.
When I try to figure out why the statement always goes wrong,
I found the key of this problem might in TableSelectionRendererContributor.java:
for line 90
>>
ClientSelection _oldClientSelection = (ClientSelection) table
.getAttributes().get(CLIENT_SELECTION);
<<
The _oldClientSelection never got update, so when the code checking for
shouldRemoveFromSelection(),
always return false!
>>
// Decide whether to remove new row to selection based on comparison with
// old one
public boolean shouldRemoveFromSelection(int i,
ClientSelection oldSelection, ClientSelection newSelection) {
return !newSelection.isReset()
&& (!newSelection.isSelectAll() &&
(!newSelection.isSelected(i) && oldSelection
.isSelected(i)));
}
<<
The oldSelection.isSelected( i ) always return false.
That cause the backend selection goes wrong.
Any workaround for this one?
> ExtendedDataTable selection with Ctrl+click does not correctly update
> selection backing bean without clicking first
> -------------------------------------------------------------------------------------------------------------------
>
> Key: RF-10793
> URL: https://issues.jboss.org/browse/RF-10793
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: component-tables
> Affects Versions: 3.3.3.Final
> Environment: OS: SLES 10 SP2
> JBoss EAP 4.3.0.GA_CP03
> Application using JBoss Seam 2.1.2
> Reporter: Eduard Ereza
> Labels: extendedDataTable, richfaces, richfaces-showcase,
> selection
> Fix For: 3.Future
>
> Attachments: extdt_solution.txt
>
>
> Selecting rows with Ctrl+click on extendedDataTable just after rendering it
> (first time or reRender) selects them in the backing bean, but then
> deselecting the same rows with Ctrl+click does not deselect them in the
> backing bean. The same happens if there is a selection when the component is
> rendered: then, deselecting a value deselects it from the backing bean, but
> selecting it again does not select it in the backing bean.
> When you click (without Ctrl) for the first time, everything works as it
> should.
> This is also reproduceable on RichFaces Live Demo:
> http://livedemo.exadel.com/richfaces-demo/richfaces/extendedDataTable.jsf
> (see Steps to Reproduce).
> This is probably related to RF-8681.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
richfaces-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/richfaces-issues