View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0006186||JEDI VCL||00 JVCL Components||public||2013-08-18 20:00||2014-12-04 16:30|
|Product Version||Daily / GIT|
|Target Version||Fixed in Version|
|Summary||0006186: JvDriveCombo shows inconsistent behavior when drives disappear|
|Description||When selecting a drive from the JvDriveCombo, the properties ItemIndex and Drive are updated and the display is updated. Now, if the drive goes away (unmounted) the following happens:|
- If there is a drive letter higher than that of drive that was removed, that drive is displayed.
- Otherwise no drive is displayed.
In both cases FItemIndex and Drive are not updated and still represent the situation as it was before the drive was removed.
When the removed drive comes back (mounted again), it is displayed again as the selected drive.
First of all, the behavior is a bit inconsistent. Either there should always be displayed a next best drive (so the next, or if there is none, the previous, or if there is none, no drive), or the display should always be cleared, if the selected drive is removed.
Second of all, I think the meaning of Drive should be better defined. Is JvDriveCombo supposed to remember removed drives and restore the selection upon return? I think it's rather confusing that Drive can return a completely different drive letter than that of the drive currently displayed.
For example, have a single system partition (C:) and plug in a flash drive (E:). Select the flash drive and then unplug it. The next displayed drive will be either some CD/DVD drive (D:) or the system partition (C:). However, the Drive property still returns 'E' and if the flash drive is plugged in again, it becomes the active item.
If JvDriveCombo is supposed to remember, I think Drive should be renamed DesiredDrive/PreferredDrive or something. And if not, Drive should always be updated along with the display.
|Tags||No tags attached.|
||Correction; in my example, it will show no drive after removing the flash drive, but it will still return 'E' as Drive. Plug in two flash drives (E: and F:) and remove the first (E:). Then F: will be displayed, whereas Drive will give back 'E'. Of course, instead of flash drives, one may use network drives.|
||Please try with the latest JVCL version in GIT (or daily zip) and then send us a zipped file containing the sources of an application showing the issue.|
||No news, suspending the issue|
|2013-08-18 20:00||thijsvandien||New Issue|
|2013-08-18 23:37||thijsvandien||Note Added: 0020584|
|2013-12-13 10:59||obones||Note Added: 0020736|
|2013-12-13 10:59||obones||Status||new => feedback|
|2014-12-04 16:30||obones||Note Added: 0021106|
|2014-12-04 16:30||obones||Status||feedback => resolved|
|2014-12-04 16:30||obones||Resolution||open => suspended|
|2014-12-04 16:30||obones||Assigned To||=> obones|