FileBrowserSheet.setRootDirectory(...) fails the first time on drives other
than system volume
----------------------------------------------------------------------------------------------
Key: PIVOT-832
URL: https://issues.apache.org/jira/browse/PIVOT-832
Project: Pivot
Issue Type: Bug
Affects Versions: 2.0, 2.0.1
Environment: Windows
Reporter: Volker Seibt
Priority: Minor
Let the system volumen be C:. If FileBrowserSheet.setRootDirectory is called
with a path on a different drive (<volume>:\the\path), on the first time root
directory is set to "<volume>:".
I was not sure if it had to do with the patch I provided (it's also in 2.0), so
I analized the behavior. It's caused by a strange loop of listeners:
* If FileBrowserSheet.setRootDirectory is called this triggers the
fileBrowserSheetListeners.
* One of the listeners is TerraFileBrowserSkin.rootDirectoryChanged.
* In this method driveListButton.setSelectedItem is called with the new drive.
* This triggers the listButtonSelectionListeners of the driveListButton,
* One of the listeners triggers FileBrowser.setRootDirectory with this newly
"selected" drive, so rootdirectory is set to this drive instead of the given
path for this drive.
Workaround: calling FileBrowserSheet.setRootDirectory twice in the application
breaks the circle, because FileBrowser.setRootDirectory is not triggered again
from driveListButton.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira