Update of /cvsroot/jcommander/plugins/org.jcommander.ui.filepanel/src/org/jcommander/ui/filepanel/controls
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28398/src/org/jcommander/ui/filepanel/controls
Modified Files:
FileTableControl.java
Log Message:
Partitial fix for Bug 1457836: Flickering when moving cursor first time in a directory
Index: FileTableControl.java
===================================================================
RCS file: /cvsroot/jcommander/plugins/org.jcommander.ui.filepanel/src/org/jcommander/ui/filepanel/controls/FileTableControl.java,v
retrieving revision 1.87
retrieving revision 1.88
diff -C2 -d -r1.87 -r1.88
*** FileTableControl.java 20 Mar 2006 12:12:28 -0000 1.87
--- FileTableControl.java 26 Mar 2006 13:02:32 -0000 1.88
***************
*** 594,598 ****
* @throws FileSystemException
*/
! public void doRefresh() throws FileSystemException {
Job job = new Job("Retrieving contents for directory " + model.getCurrentParent().getName().toString()) {
protected IStatus run(IProgressMonitor monitor) {
--- 594,598 ----
* @throws FileSystemException
*/
! public void doRefresh() throws FileSystemException {
Job job = new Job("Retrieving contents for directory " + model.getCurrentParent().getName().toString()) {
protected IStatus run(IProgressMonitor monitor) {
***************
*** 670,678 ****
if(!model.isHighlightColorRemoved()) {
FileObject oldHighlight = model.getHighlightedFile();
model.removeColor(oldHighlight,
TEXT_BACKGROUND_COLOR,SELECTION_FOREGROUND_COLOR,
TEXT_FOREGROUND_COLOR, SELECTION_BACKGROUND_COLOR,
SELECTED_FLAG);
! tableViewer.setInput(model);
}
table.setSelection(index);
--- 670,681 ----
if(!model.isHighlightColorRemoved()) {
FileObject oldHighlight = model.getHighlightedFile();
+ int oldSelection=model.getIndexOf(oldHighlight);
model.removeColor(oldHighlight,
TEXT_BACKGROUND_COLOR,SELECTION_FOREGROUND_COLOR,
TEXT_FOREGROUND_COLOR, SELECTION_BACKGROUND_COLOR,
SELECTED_FLAG);
! //tableViewer.setInput(model); <- Causes flickering
! tableViewer.update(table.getItem(oldSelection).getData(), null);
! tableViewer.update(table.getItem(index).getData(), null);
}
table.setSelection(index);
|