diff --git a/ui/src/app/applications/components/application-details/application-details.tsx b/ui/src/app/applications/components/application-details/application-details.tsx
index 5177341bd9d2e..2c9c4786c46f0 100644
--- a/ui/src/app/applications/components/application-details/application-details.tsx
+++ b/ui/src/app/applications/components/application-details/application-details.tsx
@@ -891,19 +891,19 @@ export class ApplicationDetails extends React.Component,
action: () => this.selectNode(fullName),
- disabled: !app.spec.source
+ disabled: !app.spec.source && (!app.spec.sources || app.spec.sources.length === 0)
},
{
iconClassName: 'fa fa-file-medical',
title: ,
action: () => this.selectNode(fullName, 0, 'diff'),
- disabled: app.status.sync.status === appModels.SyncStatuses.Synced || !app.spec.source
+ disabled: app.status.sync.status === appModels.SyncStatuses.Synced || (!app.spec.source && (!app.spec.sources || app.spec.sources.length === 0))
},
{
iconClassName: 'fa fa-sync',
title: ,
action: () => AppUtils.showDeploy('all', null, this.appContext.apis),
- disabled: !app.spec.source
+ disabled: !app.spec.source && (!app.spec.sources || app.spec.sources.length === 0)
},
{
iconClassName: 'fa fa-info-circle',