diff --git a/public/app/features/dashboard/folder_picker/folder_picker.ts b/public/app/features/dashboard/folder_picker/folder_picker.ts index 80651fecb7e..0896b3c793c 100644 --- a/public/app/features/dashboard/folder_picker/folder_picker.ts +++ b/public/app/features/dashboard/folder_picker/folder_picker.ts @@ -21,6 +21,7 @@ export class FolderPickerCtrl { hasValidationError: boolean; validationError: any; isEditor: boolean; + dashboardId?: number; /** @ngInject */ constructor(private backendSrv, private validationSrv, private contextSrv) { @@ -144,7 +145,13 @@ export class FolderPickerCtrl { if (this.isEditor) { folder = rootFolder; } else { - folder = result.length > 0 ? result[0] : resetFolder; + // We shouldn't assign a random folder without the user actively choosing it on a persisted dashboard + const isPersistedDashBoard = this.dashboardId ? true : false; + if (isPersistedDashBoard) { + folder = resetFolder; + } else { + folder = result.length > 0 ? result[0] : resetFolder; + } } } @@ -176,6 +183,7 @@ export function folderPicker() { exitFolderCreation: '&', enableCreateNew: '@', enableReset: '@', + dashboardId: ' + label-class="width-7" + dashboard-id="ctrl.clone.id"> diff --git a/public/app/features/dashboard/settings/settings.html b/public/app/features/dashboard/settings/settings.html index 46d84a7a2fd..97002f7bf92 100644 --- a/public/app/features/dashboard/settings/settings.html +++ b/public/app/features/dashboard/settings/settings.html @@ -51,7 +51,8 @@ on-change="ctrl.onFolderChange($folder)" enable-create-new="true" is-valid-selection="true" - label-class="width-7"> + label-class="width-7" + dashboard-id="ctrl.dashboard.id">