[MM-35454] Fix default downloads path for Windows and Linux, only set for the app if the path is not blank (#1583)

* [MM-35454] Fix default downloads path for Windows and Linux, only set for the app if the path is not blank

* Default all other OSes other than Mac/Windows to unix standard
This commit is contained in:
Devin Binnie
2021-05-05 12:54:21 -04:00
committed by GitHub
parent 61c668d77b
commit 87bbad13fa
2 changed files with 16 additions and 2 deletions

View File

@@ -6,6 +6,18 @@
* Default user preferences. End-users can change these parameters by editing config.json
* @param {number} version - Scheme version. (Not application version)
*/
const getDefaultDownloadLocation = () => {
switch (process.platform) {
case 'darwin':
return `/Users/${process.env.USER || process.env.USERNAME}/Downloads`;
case 'win32':
return `C:\\Users\\${process.env.USER || process.env.USERNAME}\\Downloads`;
default:
return `/home/${process.env.USER || process.env.USERNAME}/Downloads`;
}
};
const defaultPreferences = {
version: 2,
teams: [],
@@ -23,7 +35,7 @@ const defaultPreferences = {
autostart: true,
spellCheckerLocale: 'en-US',
darkMode: false,
downloadLocation: `/Users/${process.env.USER || process.env.USERNAME}/Downloads`,
downloadLocation: getDefaultDownloadLocation(),
};
export default defaultPreferences;

View File

@@ -257,7 +257,9 @@ function handleConfigSynchronize() {
// TODO: send this to server manager
WindowManager.setConfig(config.data);
setUnreadBadgeSetting(config.data.showUnreadBadge);
app.setPath('downloads', config.data.downloadLocation);
if (config.data.downloadLocation) {
app.setPath('downloads', config.data.downloadLocation);
}
if (app.isReady()) {
WindowManager.sendToRenderer(RELOAD_CONFIGURATION);
}