SmartClient Version: v9.1p_2016-04-09/Pro Deployment (built 2016-04-09)
Tried on Chrome Version 49.0.2623.110 m & Firefox 26.0
I have an issue scrolling a TextAreaItem that appears in an expansion component of a ListGrid record. When the grid contains a single record (and therefore the grid has no scrollbar) the mouse wheel scrolling affects the nested TextAreaItem (as I am expecting). However with many rows in the grid (my example has 500) I cannot make the mouse wheel scroll the TextAreaItem within the list grid row. It always scrolls the ListGrid results set instead. I have tried multiple ways of trying to shift the focus to the TextAreaItem to scroll this component, rather than scrolling the ListGrid, to no avail.
Is there a solution to this, or will the mouse wheel always scroll the ListGrid if it has a scrollbar, regardless of where I set the focus in the nested expansion component?
Tried on Chrome Version 49.0.2623.110 m & Firefox 26.0
I have an issue scrolling a TextAreaItem that appears in an expansion component of a ListGrid record. When the grid contains a single record (and therefore the grid has no scrollbar) the mouse wheel scrolling affects the nested TextAreaItem (as I am expecting). However with many rows in the grid (my example has 500) I cannot make the mouse wheel scroll the TextAreaItem within the list grid row. It always scrolls the ListGrid results set instead. I have tried multiple ways of trying to shift the focus to the TextAreaItem to scroll this component, rather than scrolling the ListGrid, to no avail.
Is there a solution to this, or will the mouse wheel always scroll the ListGrid if it has a scrollbar, regardless of where I set the focus in the nested expansion component?
Code:
import java.util.ArrayList;
import com.google.gwt.core.client.EntryPoint;
import com.smartgwt.client.util.SC;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.events.MouseOverEvent;
import com.smartgwt.client.widgets.events.MouseOverHandler;
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.fields.TextAreaItem;
import com.smartgwt.client.widgets.grid.ListGrid;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
import com.smartgwt.client.widgets.layout.VLayout;
import com.smartgwt.client.widgets.tab.Tab;
import com.smartgwt.client.widgets.tab.TabSet;
/**
* Title: Test<br>
* Description: Sandbox for testing stuff<br>
*/
public class Test implements EntryPoint {
/**
* {@inheritDoc}
*/
@Override
public void onModuleLoad() {
SC.showConsole();
final ListGrid grid = new ListGrid() {
@Override
protected Canvas getExpansionComponent( ListGridRecord record ) {
TabSet tabSet = new TabSet();
tabSet.setHeight( 300 );
tabSet.setWidth100();
Tab tab = new Tab("A tab");
// If this widget has a scrollbar, I want the mousewheel movement to scroll this widget, not the ListGrid
TextAreaItem textArea = new TextAreaItem("focusOfScrolling", "Desired Scroll Focus");
textArea.setHeight(200);
textArea.setWidth("*");
textArea.setValue( VERY_LONG_STRING );
final DynamicForm form = new DynamicForm();
form.setFields( textArea );
form.addMouseOverHandler( new MouseOverHandler() {
@Override
public void onMouseOver( MouseOverEvent event ) {
form.focus();
}
});
tab.setPane(form);
tabSet.setTabs( tab );
VLayout layout = new VLayout();
layout.setWidth100();
layout.setHeight100();
layout.addMember( tabSet );
return layout;
}
};
grid.setCanExpandRecords( true );
grid.setCanExpandMultipleRecords( true );
grid.setFields( new ListGridField("a") );
ArrayList<ListGridRecord> records = new ArrayList<ListGridRecord>();
for ( int i=0; i<500; i++) {
ListGridRecord record = new ListGridRecord();
record.setAttribute("a", "something");
records.add( record );
}
grid.setData( records.toArray( new ListGridRecord[records.size()]) );
grid.setWidth100();
grid.setHeight100();
Canvas layout = new Canvas();
layout.setWidth100();
layout.setHeight100();
layout.addChild(grid);
layout.show();
}
private static final String VERY_LONG_STRING =
"long string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string long string long string long string long "
+ "string long string long string long string long string long string long string long string ";
}
Comment