View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001181||OpenMPT||User Interface||public||2018-12-26 06:42||2019-01-27 22:17|
|Reporter||hicoleriv1||Assigned To||Saga Musix|
|Platform||Wine 3.0.3 64-Bit||OS||Ubuntu||OS Version||16.04|
|Product Version||OpenMPT 1.28.01.00 / libopenmpt 0.4.0 (upgrade first)|
|Target Version||OpenMPT 1.28.02.00 / libopenmpt 0.4.1 (upgrade first)||Fixed in Version||OpenMPT 1.28.02.00 / libopenmpt 0.4.1 (upgrade first)|
|Summary||0001181: New file picker not remembering last acessed directory nor storing directory access history after restart|
The new file picker that comes up on OpenMPT 1.28 does not remember the last directory a module was loaded from after it is restarted. Every time a file dialog is brought up the current position is reset to root (/).
Additionally, when a module is loaded and subsequently another module is loaded from a different directory, the file picker does not remember the directories traversed to access that particular module after the file dialog is brought up again (that is, the left and right buttons on the top left do nothing when the dialog is brought up again.
The file dialog also lacks a textbox displaying the current directory and the bottom text box does not compensate for it.
|Steps To Reproduce|
Click File -> Open on the menu bar, or File -> Save As, or any other option that opens the file select dialog.
OpenMPT has crashed once with the following error:
OpenMPT did not exit after this dialog occured, but hanged up instead.
The following log is produced when OpenMPT is started, a file selection dialog is opened and then made to quit:
|Tags||No tags attached.|
|Has the bug occurred in previous versions?||No|
|Tested code revision (in case you know it)|
The new file dialog uses IFileDialog rather than the legacy GetOpenFileName/GetSaveFileName API, if available. It seems a bit surprising that Wine would implement those two with completely different, incomplete dialogs. I won't be able to verify this on a Wine setup myself in the next few days, so it would make sense if you could report this to the Wine developers as well (including the information I provided here). We might have to fall back to not enabling Vista-styled file dialogs for Wine.
Revision 11120's file dialog works as expected and does remember the last directory accessed across restarts (the old file dialog doesn't have the forward/back buttons so I can't say whether the new file dialog not remembering the directory traversal history when it is opened again normal behaviour or not). Also, setting wine's windows version to windows XP or lower in the Applications tab works as a workaround, as you have suggested.
I think I have seen this same file dialog on some other applications before on earlier wine versions, and I don't have those applications at the moment so I cannot really confirm that the vista-style file dialog works like this all the the time. I would like confirmation from a second machine (like yours) first before reporting this to wine.
Also, what do you mean by "different, Incomplete dialogs" ?
Well, you said that some controls that you expect to be present are missing, and its behaviour (such as using the default path as indicated by OpenMPT) is also not fully implemented. This makes me think that IFileDialog is a completely separate but unfinished implementation in Wine. Revision 11120 no longer uses IFileDialog on Wine but "classic" GetOpenFileName/GetSaveFileName, even if Wine reports to be Vista or newer (which is the Windows version that introduced IFileDialog).
I see. But I am still hesitant to file a bug report for this because I think that the vista style file dialog's implementation has remained in this manner for quite some time, and nobody filing a bug report/feature request during this time could mean that this has not been an issue. Famitracker seems to use IFileDialog as well and has the same interface as the previously posted screenshot and has the same problems.
I have attached a screen shot from an actual Windows vista dialog for comparison. The wine implementation appearance-wise is mostly missing the top path bar and the "parent directory button", though this button was added in windows 8.
Using Wine 3.5 on Linux Mint, this is what I see. Looks perfectly usable...
|2018-12-26 06:42||hicoleriv1||New Issue|
|2018-12-26 06:42||hicoleriv1||File Added: 1.png|
|2018-12-26 06:47||hicoleriv1||Description Updated||View Revisions|
|2018-12-26 10:51||Saga Musix||Note Added: 0003775|
|2018-12-26 10:57||Saga Musix||Note Added: 0003776|
|2018-12-27 08:45||hicoleriv1||Note Added: 0003777|
|2018-12-27 10:54||Saga Musix||Note Added: 0003778|
|2018-12-27 15:58||hicoleriv1||File Added: vista.jpg|
|2018-12-27 15:58||hicoleriv1||Note Added: 0003779|
|2019-01-04 21:49||Saga Musix||File Added: wine3.5.png|
|2019-01-04 21:49||Saga Musix||Note Added: 0003801|
|2019-01-04 22:11||Saga Musix||Assigned To||=> Saga Musix|
|2019-01-04 22:11||Saga Musix||Status||new => assigned|
|2019-01-06 13:11||Saga Musix||Status||assigned => resolved|
|2019-01-06 13:11||Saga Musix||Resolution||open => fixed|
|2019-01-06 13:11||Saga Musix||Fixed in Version||=> OpenMPT 1.28.02.00 / libopenmpt 0.4.1 (upgrade first)|
|2019-01-06 13:11||Saga Musix||Target Version||=> OpenMPT 1.28.02.00 / libopenmpt 0.4.1 (upgrade first)|